|
Veteran Member
Join Date: Mar 2009
Location: Lithuania
|

05-15-2009
, 14:15
Error's with zombie mod
|
#1
|
I get error's with this:
PHP Code:
#include <amxmodx> #include <cstrike> #include <fakemeta> #include <fun> #include <engine> #include <hamsandwich> #include <xs> #define TASKID_NVG 1000 #define TASKID_STRIP 2000 #define TASKID_RESPAWN 3000 #define TASKID_MODEL 4000 #define TASKID_LEAP 5000 new Float:g_fVecVel[3], Float:g_fCounter new g_fwdSpawn, g_model[33][32] new const ZOMBIE_PLAYER_MODEL[][] = { "Hunter", "Boomer", "Smoker" }; new const ZOMBIE_MODEL[][] = { "models/player/Hunter/Hunter.mdl", "models/player/Boomer/Boomer.mdl", "models/player/Smoker/Smoker.mdl" }; new const ZOMBIE_CLAWS[] = { "models/v_knife_hunter.mdl" }; new const g_sound_Miss[][] = { "MXP/miss1_hunter.wav", "MXP/miss2_hunter.wav" } new const g_sound_Hit[][] = { "MXP/strike1_hunter.wav", "MXP/strike2_hunter.wav", "MXP/strike3_hunter.wav" } new const g_sound_Pain[][] = { "MXP/pain1_hunter.wav", "MXP/pain2_hunter.wav", "MXP/pain3_hunter.wav", "MXP/pain4_hunter.wav", "MXP/pain5_hunter.wav", "MXP/pain6_hunter.wav", "MXP/pain7_hunter.wav" } new const g_sound_Die[][] = { "MXP/die1_hunter.wav", "MXP/die2_hunter.wav", "MXP/die3_hunter.wav", "MXP/die4_hunter.wav", "MXP/die5_hunter.wav", "MXP/die6_hunter.wav" } new g_sound_HumansWin[] = "misc/zm/humanswin.wav" new g_sound_ZombiesWin[] = "misc/zm/zombieswin.wav" new g_radio[24][] = { "radio1", "coverme", "takepoint", "holdpos", "regroup", "followme", "takingfire", "radio2", "go", "fallback", "sticktog", "getinpos", "stormfront", "report", "radio3", "roger", "enemyspot", "needbackup", "sectorclear", "inposition", "reportingin", "getout", "negative", "enemydown" } new g_entities[9][] = { "func_bomb_target", "info_bomb_target", "hostage_entity", "monster_scientist", "func_hostage_rescue", "info_hostage_rescue", "info_vip_start", "func_vip_safetyzone", "func_escapezone" } enum { KBPOWER_357SIG = 0, KBPOWER_762NATO, KBPOWER_BUCKSHOT, KBPOWER_45ACP, KBPOWER_556NATO, KBPOWER_9MM, KBPOWER_57MM, KBPOWER_338MAGNUM, KBPOWER_556NATOBOX, KBPOWER_50AE } new const g_knockback[] = { -1, KBPOWER_357SIG, -1, KBPOWER_762NATO, -1, KBPOWER_BUCKSHOT, -1, KBPOWER_45ACP, KBPOWER_556NATO, -1, KBPOWER_9MM, KBPOWER_57MM, KBPOWER_45ACP, KBPOWER_556NATO, KBPOWER_556NATO, KBPOWER_556NATO, KBPOWER_45ACP, KBPOWER_9MM, KBPOWER_338MAGNUM, KBPOWER_9MM, KBPOWER_556NATOBOX, KBPOWER_BUCKSHOT, KBPOWER_556NATO, KBPOWER_9MM, KBPOWER_762NATO, -1, KBPOWER_50AE, KBPOWER_556NATO, KBPOWER_762NATO, -1, KBPOWER_57MM } new Float:g_fKnockbackPower[] = { 3.0, // KBPOWER_357SIG 4.0, // KBPOWER_762NATO 9.5, // KBPOWER_BUCKSHOT 3.0, // KBPOWER_45ACP 4.5, // KBPOWER_556NATO 3.0, // KBPOWER_9MM 3.5, // KBPOWER_57MM 12.0, // KBPOWER_338MAGNUM 10.0, // M249 3.8 // KBPOWER_50AE } new zm_survival, zm_health, zm_armor, zm_gravity, zm_speed, zm_light, zm_killhp, zm_respawn, zm_radio, zm_knockback, zm_use, zm_leap, zm_regen public plugin_precache() { zm_survival = register_cvar("zm_survival", "1", FCVAR_SPONLY|FCVAR_SERVER) if (!get_pcvar_num(zm_survival)) return g_fwdSpawn = register_forward(FM_Spawn, "fwdSpawn") new ent = engfunc(EngFunc_CreateNamedEntity, engfunc(EngFunc_AllocString, "env_fog")) fm_set_kvd(ent, "density", "0.0016", "env_fog") fm_set_kvd(ent, "rendercolor", "128 128 128", "env_fog") engfunc(EngFunc_CreateNamedEntity, engfunc(EngFunc_AllocString, "env_rain")) new ent2 = engfunc(EngFunc_CreateNamedEntity, engfunc(EngFunc_AllocString, "info_bomb_target")) if (ent2) { dllfunc(DLLFunc_Spawn, ent2) set_pev(ent2, pev_solid, SOLID_NOT) } precache_sound(g_sound_HumansWin) precache_sound(g_sound_ZombiesWin) new i for (i = 0; i < 2; i++) precache_sound(g_sound_Miss[i]) for (i = 0; i < 3; i++) precache_sound(g_sound_Hit[i]) for (i = 0; i < 7; i++) precache_sound(g_sound_Pain[i]) for (i = 0; i < 6; i++) precache_sound(g_sound_Die[i]) } public plugin_init() { register_plugin("Zombie Mod Survival", "2.1", "hleV") register_concmd("amx_zmsurvival", "cmdZMSurvival", ADMIN_RCON, "<1|0> - enables/disabled Zombie Mod Survival") zm_health = register_cvar("zm_health", "500") zm_armor = register_cvar("zm_armor", "0") zm_gravity = register_cvar("zm_gravity", "800") zm_speed = register_cvar("zm_speed", "245") zm_light = register_cvar("zm_light", "b") zm_killhp = register_cvar("zm_killhp", "100") zm_respawn = register_cvar("zm_respawn", "1") zm_radio = register_cvar("zm_radio", "0") zm_knockback = register_cvar("zm_knockback", "1") zm_use = register_cvar("zm_use", "0") zm_leap = register_cvar("zm_leap", "1") zm_regen = register_cvar("zm_regen", "0") register_clcmd("drop", "cmdDrop") for (new i; i < 24; i++) register_clcmd(g_radio[i], "cmdRadio") register_event("HLTV", "newRound", "a", "1=0", "2=0") register_event("CurWeapon", "curWeapon", "be") register_event("DeathMsg", "playerDeath", "a") register_event("Damage", "playerDamage", "b", "2!0", "4!0", "5!0", "6!0") register_logevent("roundStart", 2, "1=Round_Start") register_logevent("joinedTeam", 3, "1=joined team") RegisterHam(Ham_Spawn, "player", "fwdSpawnPlayer", 1) RegisterHam(Ham_TraceAttack, "player", "fwdTraceAttackPlayer") RegisterHam(Ham_TraceAttack, "func_pushable", "fwdTraceAttackPushable") RegisterHam(Ham_Touch, "weaponbox", "fwdTouch") RegisterHam(Ham_Touch, "armoury_entity", "fwdTouch") RegisterHam(Ham_Touch, "weapon_shield", "fwdTouch") RegisterHam(Ham_Touch, "grenade", "fwdTouch") RegisterHam(Ham_Use, "func_pushable", "fwdUsePushable") unregister_forward(FM_Spawn, g_fwdSpawn) register_forward(FM_PlayerPreThink, "fwdPlayerPreThink") register_forward(FM_SetClientKeyValue, "fwdSetClientKeyValue") register_forward(FM_ClientUserInfoChanged, "fwdClientUserInfoChanged") register_forward(FM_Think, "fwdThink", 1) register_forward(FM_CmdStart, "fwdCmdStart") register_forward(FM_EmitSound, "fwdEmitSound") register_message(get_user_msgid("SendAudio"), "msgSendAudio") register_message(get_user_msgid("TextMsg"), "msgTextMsg") set_cvar_string("sv_skyname", "drkg") if (get_pcvar_num(zm_regen)) set_task(1.0, "zombieRegen", _, _, _, "b") } public client_connect(id) { g_zombie[id] = false } public cmdZMSurvival(id, level) { if (!(get_user_flags(id) & level)) { console_print(id, "You have no access to that command.") return PLUGIN_HANDLED } new arg[32] read_argv(1, arg, 31) if (equali(arg, "1")) { if (!get_pcvar_num(zm_survival)) { console_print(id, "Zombie Mod Survival has been turned on!") set_pcvar_num(zm_survival, 1) } else console_print(id, "Zombie Mod Survival is already enabled.") } else if (equali(arg, "0")) { if (get_pcvar_num(zm_survival)) { console_print(id, "Zombie Mod Survival has been turned off.") set_pcvar_num(zm_survival, 0) } else console_print(id, "Zombie Mod Survival is already disabled.") } else console_print(id, "Usage: amx_zmsurvival <1|0> - enables/disables Zombie Mod Survival.") return PLUGIN_HANDLED } public cmdDrop(id) { if (get_pcvar_num(zm_survival) && g_bZombie[id]) { console_print(id, "This command is restricted.") return PLUGIN_HANDLED } return PLUGIN_CONTINUE } public cmdRadio(id) { if (get_pcvar_num(zm_survival) && !get_pcvar_num(zm_radio) && g_bZombie[id]) { console_print(id, "This command is restricted.") return PLUGIN_HANDLED } return PLUGIN_CONTINUE }
public newRound() { if (!get_pcvar_num(zm_survival)) return if (g_bRoundEnded) { client_cmd(0, "stopsound") g_bRoundEnded = false } g_bSpeed = false } public curWeapon(id) { if (!get_pcvar_num(zm_survival) || !is_user_connected(id) || !is_user_alive(id) || !g_bZombie[id]) return if (read_data(2) != CSW_KNIFE) { engclient_cmd(id, "weapon_knife") set_pev(id, pev_viewmodel2, g_handsModel) set_pev(id, pev_weaponmodel2, "") } message_begin(MSG_ONE, get_user_msgid("HideWeapon"), _, id) write_byte((1<<0)|(1<<1)|(1<<3)|(1<<5)) message_end() } public playerDeath() { if (!get_pcvar_num(zm_survival)) return new killer = read_data(1) new victim = read_data(2) if (get_pcvar_num(zm_respawn) && g_bZombie[victim] && !is_user_alive(victim)) { set_task(1.9, "respawnZombie", TASKID_RESPAWN + victim) set_task(2.0, "respawnZombie", TASKID_RESPAWN + victim) } if (get_pcvar_num(zm_killhp) && g_bZombie[killer] && killer != victim) set_pev(killer, pev_health, get_user_health(killer) + get_pcvar_float(zm_killhp)) } public playerDamage(id) { if (!get_pcvar_num(zm_survival) || !get_pcvar_num(zm_knockback) || !g_bZombie[id]) return PLUGIN_HANDLED new inflictor = entity_get_edict(id, EV_ENT_dmg_inflictor) if (inflictor <= get_maxplayers()) return PLUGIN_CONTINUE new class[8] entity_get_string(inflictor, EV_SZ_classname, class, 7) if (!equal(class, "grenade")) return PLUGIN_CONTINUE new Float:fUpVector[3] fUpVector[0] = float(read_data(4)) fUpVector[1] = float(read_data(5)) fUpVector[2] = float(read_data(6)) new damageRept = read_data(2) set_velocity_from_origin(id, fUpVector, 20.0 * damageRept) return PLUGIN_CONTINUE } public roundStart() { if (!get_pcvar_num(zm_survival)) return g_bSpeed = true } public joinedTeam() { if (!get_pcvar_num(zm_survival)) return for (new id = 1; id <= get_maxplayers(); id++) { if (!is_user_connected(id)) return new CsTeams:team = cs_get_user_team(id) if (team == CS_TEAM_T) g_bZombie[id] = true else if (team == CS_TEAM_CT) g_bZombie[id] = false } } public fwdSpawn(ent) { if (!get_pcvar_num(zm_survival) || !pev_valid(ent)) return FMRES_IGNORED
static class[32] pev(ent, pev_classname, class, 31) static i for (i = 0; i < 9; ++i) { if (equal(class, g_entities[i])) { engfunc(EngFunc_RemoveEntity, ent) return FMRES_SUPERCEDE } } return FMRES_IGNORED } public fwdSpawnPlayer(id) { if (!get_pcvar_num(zm_survival) || !is_user_alive(id)) return
static CsTeams:team; team = cs_get_user_team(id)
if (team == CS_TEAM_T) { g_bZombie[id] = true
if (get_pcvar_num(zm_health) != 100) set_pev(id, pev_health, get_pcvar_float(zm_health)) if (get_pcvar_num(zm_armor)) cs_set_user_armor(id, get_pcvar_num(zm_armor), CS_ARMOR_NONE) if (get_pcvar_num(zm_gravity) != 800) set_pev(id, pev_gravity, get_pcvar_float(zm_gravity) / 800) if (!cs_get_user_nvg(id)) cs_set_user_nvg(id) if (!task_exists(TASKID_NVG + id)) set_task(0.2, "setZombieNVG", TASKID_NVG + id) if (!task_exists(TASKID_STRIP +id)) set_task(0.1, "stripZombieWeapons", TASKID_STRIP + id) copy(g_model[id], 31, g_playerModel)
new currentModel[32] fm_get_user_model(id, currentModel, 31)
if (!equal(currentModel, g_model[id])) { set_task(0.1 + g_fCounter, "setZombieModel", TASKID_MODEL + id) g_fCounter += 0.2 } } else if (team == CS_TEAM_CT) { g_bZombie[id] = false fm_reset_user_model(id) } } public fwdTraceAttackPlayer(victim, attacker, Float:fDamage, Float:fDirection[3], traceHandle, damageType) { if (!get_pcvar_num(zm_survival) || !get_pcvar_num(zm_knockback) || !(damageType & DMG_BULLET) || !is_user_connected(attacker) || !g_bZombie[victim]) return HAM_IGNORED
static power power = g_knockback[get_user_weapon(attacker)]
if (power != -1) { static Float:fOrigins[2][3] pev(victim, pev_origin, fOrigins[0]) pev(attacker, pev_origin, fOrigins[1])
if (get_distance_f(fOrigins[0], fOrigins[1]) <= 280.0) { static Float:fVelocity[3] pev(victim, pev_velocity, fVelocity)
static Float:fTempVec fTempVec = fVelocity[2]
xs_vec_mul_scalar(fDirection, fDamage, fDirection) xs_vec_mul_scalar(fDirection, 1.0, fDirection) xs_vec_mul_scalar(fDirection, g_fKnockbackPower[power], fDirection)
xs_vec_add(fDirection, fVelocity, fVelocity) fVelocity[2] = fTempVec
set_pev(victim, pev_velocity, fVelocity)
return HAM_HANDLED } } return HAM_IGNORED } public fwdTraceAttackPushable(ent, attacker, Float:fDamage, Float:fDirection[3]) { if (!get_pcvar_num(zm_survival) || !get_pcvar_num(zm_knockback) || !is_user_alive(attacker) || get_user_weapon(attacker) == CSW_KNIFE) return
static Float:fVelocity[3] pev(ent, pev_velocity, fVelocity)
static Float:fTempVec fTempVec = fVelocity[2]
xs_vec_mul_scalar(fDirection, fDamage, fDirection) xs_vec_mul_scalar(fDirection, g_bZombie[attacker] ? 2.0 + 3.0 : 2.0, fDirection) xs_vec_add(fDirection, fVelocity, fVelocity) fVelocity[2] = fTempVec
set_pev(ent, pev_velocity, fVelocity) } public fwdTouch(ent, id) { if (get_pcvar_num(zm_survival) && is_user_connected(id) && is_user_alive(id) && g_bZombie[id]) return HAM_SUPERCEDE return HAM_IGNORED } public fwdUsePushable() return HAM_SUPERCEDE public fwdPlayerPreThink(id) { if (!get_pcvar_num(zm_survival) || !is_user_connected(id) || !is_user_alive(id) || !g_bZombie[id]) return FMRES_IGNORED static flags flags = pev(id, pev_flags)
if (flags & FL_ONGROUND) { if (get_pcvar_num(zm_knockback)) pev(id, pev_velocity, g_fVecVel) } else { static Float:fFallVelocity pev(id, pev_flFallVelocity, fFallVelocity)
g_bFalling[id] = fFallVelocity >= 350.0 ? true : false } if (g_bSpeed && get_pcvar_num(zm_speed) != 250) set_pev(id, pev_maxspeed, get_pcvar_float(zm_speed)) if (!cs_get_user_money(id)) cs_set_user_money(id, 0) new button = fm_get_user_button(id) if (fm_get_user_longjump(id) && (button & IN_DUCK) && (button & IN_JUMP) || ((button & IN_DUCK) && (button & IN_JUMP) && ((button & IN_FORWARD) || (button & IN_MOVELEFT) || (button & IN_MOVERIGHT) || (button & IN_BACK)))) set_task(0.1 , "checkLeap", TASKID_LEAP + id) return FMRES_IGNORED } public fwdSetClientKeyValue(id, infoBuffer, key[]) { if (get_pcvar_num(zm_survival) && g_bModelSet[id] && equal(key, "model")) return FMRES_SUPERCEDE
return FMRES_IGNORED } public fwdClientUserInfoChanged(id) { if (!get_pcvar_num(zm_survival) || !g_bModelSet[id] || !g_bZombie[id]) return FMRES_IGNORED
new currentModel[32] fm_get_user_model(id, currentModel, 31)
if (!equal(currentModel, g_model[id])) fm_set_user_model(id, g_model[id]) set_pev(id, pev_viewmodel2, g_handsModel) set_pev(id, pev_weaponmodel2, "")
return FMRES_IGNORED } public fwdThink() { if (!get_pcvar_num(zm_survival)) return static light[2] get_pcvar_string(zm_light, light, 1) engfunc(EngFunc_LightStyle, 0, light) } public fwdCmdStart(id, handle, seed) { if (!get_pcvar_num(zm_survival) || !is_user_alive(id) || !g_bZombie[id]) return FMRES_IGNORED
static impulse impulse = get_uc(handle, UC_Impulse) if (impulse == 100) { set_uc(handle, UC_Impulse, 0) console_print(id, "This command is restricted.") return FMRES_SUPERCEDE }
static button button = get_uc(handle, UC_Buttons)
if (!get_pcvar_num(zm_use) && button & IN_USE) { button = (button & ~IN_USE) set_uc (handle, UC_Buttons, button) return FMRES_HANDLED } return FMRES_IGNORED } public fwdEmitSound(id, channel, sample[], Float:fVolume, Float:fAttn, flag, pitch) { if (!is_user_connected(id) || !g_bZombie[id]) return FMRES_IGNORED
if (sample[0] == 'w' && sample[1] == 'e' && sample[8] == 'k' && sample[9] == 'n') { switch (sample[17]) { case 'l': return FMRES_SUPERCEDE case 's': { emit_sound(id, CHAN_WEAPON, g_sound_Miss[random(2)], VOL_NORM, fAttn, flag, pitch) return FMRES_SUPERCEDE } case 'b', '1', '2', '3', '4': { emit_sound(id, CHAN_WEAPON, g_sound_Hit[random(3)], VOL_NORM, fAttn, flag, pitch) return FMRES_SUPERCEDE } } } else if (sample[7] == 'd' && (sample[8] == 'i' && sample[9] == 'e' || sample[12] == '6')) { emit_sound(id, CHAN_VOICE, g_sound_Die[random(2)], VOL_NORM, fAttn, flag, pitch) return FMRES_SUPERCEDE } else if (sample[6] == 'n' && sample[7] == 'v' && sample[8] == 'g') return FMRES_SUPERCEDE
return FMRES_IGNORED } public msgSendAudio(msgid, dest, id) { if (!get_pcvar_num(zm_survival)) return PLUGIN_CONTINUE static audio[22] get_msg_arg_string(2, audio, 21)
if (equal(audio[7], "terwin")) set_msg_arg_string(2, g_sound_ZombiesWin) else if (equal(audio[7], "ctwin")) set_msg_arg_string(2, g_sound_HumansWin) g_bRoundEnded = true
return PLUGIN_CONTINUE } public msgTextMsg(msgid, dest, id) { if (!get_pcvar_num(zm_survival) || get_msg_arg_int(1) != 4) return PLUGIN_CONTINUE
static text[25], win[32] get_msg_arg_string(2, text, 24)
if (equal(text[1], "Game_bomb_drop")) return PLUGIN_HANDLED else if (equal(text[1], "Terrorists_Win")) { formatex(win, 31, "Zombies Win!") set_msg_arg_string(2, win) } else if (equal(text[1], "Target_Saved") || equal(text[1], "CTs_Win")) { formatex(win, 31, "Humans Win!") set_msg_arg_string(2, win) } return PLUGIN_CONTINUE } public setZombieNVG(task) { new id = task - TASKID_NVG engclient_cmd(id, "nightvision") } public stripZombieWeapons(task) { new id = task - TASKID_STRIP fm_strip_user_weapons(id) give_item(id, "weapon_knife") set_pev(id, pev_viewmodel2, g_handsModel) set_pev(id, pev_weaponmodel2, "") if (get_pcvar_num(zm_leap)) { fm_set_user_longjump(id, false, false) set_task(5.0, "leapCooldown", TASKID_LEAP + id) } } public leapCooldown(task) { new id = task - TASKID_LEAP if (!is_user_alive(id)) return PLUGIN_HANDLED
if (g_bZombie[id]) fm_set_user_longjump(id, true, false)
return PLUGIN_CONTINUE } public respawnZombie(task) { new id = task - TASKID_RESPAWN if (g_bZombie[id]) spawn(id) } public checkLeap(task) { new id = task - TASKID_LEAP if (fm_get_user_longjump(id)) { fm_set_user_longjump(id, false, false) set_task(5.0, "leapCooldown", TASKID_LEAP + id) } } public setZombieModel(task) { new id = task - TASKID_MODEL fm_set_user_model(id, g_model[id]) } public zombieRegen() for (new id = 1; id <= get_maxplayers(); id++) if (get_pcvar_num(zm_regen) && is_user_connected(id) && is_user_alive(id) && g_bZombie[id] && get_user_health(id) < get_pcvar_num(zm_health)) set_user_health(id, get_user_health(id) + get_pcvar_num(zm_regen)) stock fm_set_kvd(entity, const key[], const value[], const className[] = "") { if (className[0]) set_kvd(0, KV_ClassName, className) else { new class[32] pev(entity, pev_classname, class, 31) set_kvd(0, KV_ClassName, class) } set_kvd(0, KV_KeyName, key) set_kvd(0, KV_Value, value) set_kvd(0, KV_fHandled, 0) return dllfunc(DLLFunc_KeyValue, entity, 0) } stock fm_strip_user_weapons(index) { static ent ent = engfunc(EngFunc_CreateNamedEntity, engfunc(EngFunc_AllocString, "player_weaponstrip")) if (!pev_valid(ent)) return 0
dllfunc(DLLFunc_Spawn, ent) dllfunc(DLLFunc_Use, ent, index) engfunc(EngFunc_RemoveEntity, ent)
return 1 } stock set_velocity_from_origin(ent, Float:fOrigin[3], Float:fSpeed) { new Float:fVelocity[3] get_velocity_from_origin(ent, fOrigin, fSpeed, fVelocity) entity_set_vector(ent, EV_VEC_velocity, fVelocity) return (1) } stock get_velocity_from_origin(ent, Float:fOrigin[3], Float:fSpeed, Float:fVelocity[3]) { new Float:fEntOrigin[3] entity_get_vector(ent, EV_VEC_origin, fEntOrigin) new Float:fDistance[3] fDistance[0] = fEntOrigin[0] - fOrigin[0] fDistance[1] = fEntOrigin[1] - fOrigin[1] fDistance[2] = fEntOrigin[2] - fOrigin[2] new Float:fTime = (vector_distance( fEntOrigin,fOrigin ) / fSpeed) fVelocity[0] = fDistance[0] / fTime fVelocity[1] = fDistance[1] / fTime fVelocity[2] = fDistance[2] / fTime return (fVelocity[0] && fVelocity[1] && fVelocity[2]) } stock fm_get_user_model(player, model[], len) engfunc(EngFunc_InfoKeyValue, engfunc(EngFunc_GetInfoKeyBuffer, player), "model", model, len) stock fm_set_user_model(player, modelName[]) { engfunc(EngFunc_SetClientKeyValue, player, engfunc(EngFunc_GetInfoKeyBuffer, player), "model", modelName)
g_bModelSet[player] = true } stock fm_reset_user_model(player) { g_bModelSet[player] = false
dllfunc(DLLFunc_ClientUserInfoChanged, player, engfunc(EngFunc_GetInfoKeyBuffer, player)) } stock fm_get_user_button(index) return pev(index, pev_button) stock bool:fm_get_user_longjump(index) { new value[2] engfunc(EngFunc_GetPhysicsKeyValue, index, "slj", value, 1) switch (value[0]) { case '1': return true } return false } stock fm_set_user_longjump(index, bool:bLongjump = true, bool:bTempIcon = true) { if (bLongjump == fm_get_user_longjump(index)) return if (bLongjump) { engfunc(EngFunc_SetPhysicsKeyValue, index, "slj", "1") if (bTempIcon) { static msgItemPickup if (!msgItemPickup) msgItemPickup = get_user_msgid("ItemPickup") message_begin(MSG_ONE, msgItemPickup, _, index) write_string("item_longjump") message_end() } } else engfunc(EngFunc_SetPhysicsKeyValue, index, "slj", "0") }
i want to make a few mdl's it's : Smoker MDL, Boomer MDL, Hunter MDL.
|
|