yeteneklerin hudu geldi fakat yetenekleri basıcagım zaman game not start diyorShooTeR yazdı: Cmt Eyl 21, 2019 9:35 pmDeneyiniz.Kod: Tümünü seç
#include <amxmodx> #include <fun> #include <engine> #include <fakemeta> #include <hamsandwich> #include <zombieplague> #define PLUGIN "[ZEVO] Addon: Human Ability" #define VERSION "1.0" #define AUTHOR "Dias Pendragon Leon" #define GAME_LANG LANG_SERVER #define LANG_FILE "zombie_evolution.txt" #define TASK_STUN 546464 new const SprintSprite[] = "sprites/zombie_evolution/head_speedup.spr" new const DeadlyShotSprite[] = "sprites/zombie_evolution/deadlyshot.spr" new const DeadlyShot2Sprite[] = "sprites/zombie_evolution/deadlyshot2.spr" new const StunSprite[] = "sprites/zombie_evolution/head_stun.spr" new const StunEffect[] = "sprites/zombie_evolution/stun_activate.spr" new const ActivateSound[] = "zombie_evolution/action/activate.wav" new const StunSound[] = "zombie_evolution/action/player_stun.wav" new g_SprintPercent[33], g_Sprinting, g_CanDeadlyShot, g_DeadlyShoting, g_DeadlyShotTime[33], g_CanStun new g_HumanHud, g_PlayerKey[33][2], Float:CheckTime[33], Float:CheckTime2[33], g_Stunning, Float:g_MySpeed[33] new g_Cvar_SprintPercent, g_Cvar_DeadlyShotTime, g_Cvar_SprintSpeed, g_Cvar_StunRadius, g_Cvar_StunTime new g_BuyZone, g_ShockWave_SprID, g_GameStart, g_Stun_EffectID #define TIME_INTERVAL 0.15 #define TASK_CHECKTIME 3125365 #define TASK_AUTOSKILL 18710 // MACROS #define Get_BitVar(%1,%2) (%1 & (1 << (%2 & 31))) #define Set_BitVar(%1,%2) %1 |= (1 << (%2 & 31)) #define UnSet_BitVar(%1,%2) %1 &= ~(1 << (%2 & 31)) // Safety new g_HamBot new g_IsConnected, g_IsAlive, g_PlayerWeapon[33] public plugin_init() { register_plugin(PLUGIN, VERSION, AUTHOR) register_dictionary(LANG_FILE) Register_SafetyFunc() register_impulse(201, "CMD_Spray") g_HumanHud = CreateHudSyncObj(3) RegisterHam(Ham_TraceAttack, "player", "fw_TraceAttack") // Cvars g_Cvar_SprintPercent = register_cvar("zevo_sprint_percent", "100") g_Cvar_SprintSpeed = register_cvar("zevo_sprint_speed", "350.0") g_Cvar_DeadlyShotTime = register_cvar("zevo_deadlyshot_time", "5") g_Cvar_StunRadius = register_cvar("zevo_stun_radius", "240.0") g_Cvar_StunTime = register_cvar("zevo_stun_time", "5.0") } public plugin_precache() { precache_model(SprintSprite) precache_model(DeadlyShotSprite) precache_model(DeadlyShot2Sprite) precache_model(StunSprite) precache_sound(ActivateSound) precache_sound(StunSound) g_Stun_EffectID = precache_model(StunEffect) g_ShockWave_SprID = precache_model("sprites/shockwave.spr") // Buyzone g_BuyZone = engfunc(EngFunc_CreateNamedEntity, engfunc(EngFunc_AllocString, "func_buyzone")) dllfunc(DLLFunc_Spawn, g_BuyZone) engfunc(EngFunc_SetSize, g_BuyZone, {-8192.0, -8192.0, -8192.0}, {-8191.0, -8191.0, -8191.0}) } public client_putinserver(id) { Safety_Connected(id) if(!g_HamBot && is_user_bot(id)) { g_HamBot = 1 set_task(0.1, "Register_HamBot", id) } } public Register_HamBot(id) { Register_SafetyFuncBot(id) RegisterHamFromEntity(Ham_TraceAttack, id, "fw_TraceAttack") } public client_disconnected(id) { Safety_Disconnected(id) } public fw_TraceAttack(victim, attacker, Float:damage, Float:direction[3], tracehandle, damage_type) { if(!is_connected(attacker)) return HAM_IGNORED if(Get_BitVar(g_DeadlyShoting, attacker)) set_tr2(tracehandle, TR_iHitgroup, HIT_HEAD) return HAM_IGNORED } public zevo_round_new() g_GameStart = 0 public zevo_game_start() g_GameStart = 1 public zevo_user_spawn(id, Zombie) { if(Zombie) return remove_task(id+TASK_STUN) remove_task(id+TASK_AUTOSKILL) // Sprint UnSet_BitVar(g_Sprinting, id) g_SprintPercent[id] = get_pcvar_num(g_Cvar_SprintPercent) // Deadly Shot Set_BitVar(g_CanDeadlyShot, id) UnSet_BitVar(g_DeadlyShoting, id) g_DeadlyShotTime[id] = get_pcvar_num(g_Cvar_DeadlyShotTime) // Stun Set_BitVar(g_CanStun, id) if(is_user_bot(id)) { remove_task(id+TASK_AUTOSKILL) if(is_user_bot(id)) set_task(random_float(30.0, 60.0), "Bot_AutoSkill", id+TASK_AUTOSKILL) } } public Bot_AutoSkill(id) { id -= TASK_AUTOSKILL if(!is_alive(id)) return if(!is_user_bot(id)) { remove_task(id+TASK_AUTOSKILL) return } if(zp_get_user_zombie(id)) return if(Get_BitVar(g_CanDeadlyShot, id)) CMD_Spray(id) else if(Get_BitVar(g_CanStun, id)) CMD_Buy(id) if(is_user_bot(id)) set_task(random_float(10.0, 20.0), "Bot_AutoSkill", id+TASK_AUTOSKILL) } public zevo_become_zombie(id) { remove_task(id+TASK_STUN) remove_task(id+TASK_AUTOSKILL) UnSet_BitVar(g_Sprinting, id) UnSet_BitVar(g_CanDeadlyShot, id) UnSet_BitVar(g_DeadlyShoting, id) UnSet_BitVar(g_CanStun, id) UnSet_BitVar(g_Stunning, id) set_hudmessage(0, 255, 0, -1.0, 0.10, 0, 0.25, 0.25) ShowSyncHudMsg(id, g_HumanHud, "") // SetFov(id) } public zevo_runningtime2(id, Time) { if(!is_alive(id)) return if(zp_get_user_zombie(id)) return if(Get_BitVar(g_DeadlyShoting, id)) { if(g_DeadlyShotTime[id] > 0) g_DeadlyShotTime[id]-- else { g_DeadlyShotTime[id] = 0 UnSet_BitVar(g_DeadlyShoting, id) if(!zp_get_user_nightvision(id) && !Get_BitVar(g_Sprinting, id)) { // Effect static g_MsgScreenFade; if(!g_MsgScreenFade) g_MsgScreenFade = get_user_msgid("ScreenFade") // Reset message_begin(MSG_ONE_UNRELIABLE, g_MsgScreenFade, _, id) write_short(0) // duration write_short(0) // hold time write_short(0x0000) // fade type write_byte(0) // r write_byte(0) // g write_byte(0) // b write_byte(0) // alpha message_end() } } } Load_Hud(id, 2.0) } public Load_Hud(id, Float:Time) { // Hud static Skill1[64], Skill2[64], Skill3[64] // Skill 1 if(g_SprintPercent[id] >= 100) formatex(Skill1, 63, " [W] + [W] : %L (%i%%)", GAME_LANG, "HUMAN_SKILL_SPRINT", g_SprintPercent[id]) else formatex(Skill1, 63, "[W] + [W] : %L (%i%%)", GAME_LANG, "HUMAN_SKILL_SPRINT", g_SprintPercent[id]) // Skill 2 if(Get_BitVar(g_DeadlyShoting, id)) formatex(Skill2, 63, " [T] : %L (%i)", GAME_LANG, "HUMAN_SKILL_DEADLYSHOT", g_DeadlyShotTime[id]) else { if(Get_BitVar(g_CanDeadlyShot, id)) formatex(Skill2, 63, " [T] : %L", GAME_LANG, "HUMAN_SKILL_DEADLYSHOT") else formatex(Skill2, 63, " [T] : %L (X)", GAME_LANG, "HUMAN_SKILL_DEADLYSHOT") } // Skill 3 if(Get_BitVar(g_CanStun, id)) formatex(Skill3, 63, " [B] : %L", GAME_LANG, "HUMAN_SKILL_STUN") else formatex(Skill3, 63, " [B] : %L (X)", GAME_LANG, "HUMAN_SKILL_STUN") set_hudmessage(0, 255, 0, -1.0, 0.10, 0, Time, Time) ShowSyncHudMsg(id, g_HumanHud, "[Human Ability]^n^n%s^n%s^n%s", Skill1, Skill2, Skill3) } public client_PreThink(id) { if(!is_alive(id)) return if(zp_get_user_zombie(id)) return static CurButton; CurButton = pev(id, pev_button) static OldButton; OldButton = pev(id, pev_oldbuttons) if((CurButton & IN_FORWARD)) { if(Get_BitVar(g_Sprinting, id) && (get_gametime() - 0.1 > CheckTime[id])) { if(g_SprintPercent[id] <= 0) { Deactivate_Sprint(id) return } g_SprintPercent[id]-- Load_Hud(id, 0.2) CheckTime[id] = get_gametime() } if(Get_BitVar(g_Sprinting, id) && (get_gametime() - 1.0 > CheckTime2[id])) { if(g_SprintPercent[id] <= 0) return //zevo_playerattachment(id, SprintSprite, 1.25, 0.25, 0.0) CheckTime2[id] = get_gametime() } if(OldButton & IN_FORWARD) return if(!task_exists(id+TASK_CHECKTIME)) { g_PlayerKey[id][0] = 'w' remove_task(id+TASK_CHECKTIME) set_task(TIME_INTERVAL, "Recheck_Key", id+TASK_CHECKTIME) } else { g_PlayerKey[id][1] = 'w' } } else { if(OldButton & IN_FORWARD) { Deactivate_Sprint(id) } return } if(equali(g_PlayerKey[id], "ww")) { Reset_Key(id) Activate_Sprint(id) } return } public client_PostThink(id) { if(!is_alive(id)) return if(zp_get_user_zombie(id)) { if(Get_BitVar(g_Stunning, id) && pev(id, pev_maxspeed) != 0.01) set_user_maxspeed(id, 0.01) return } dllfunc(DLLFunc_Touch, g_BuyZone, id) } public Recheck_Key(id) { id -= TASK_CHECKTIME if(!is_user_connected(id)) return Reset_Key(id) } public Reset_Key(id) { g_PlayerKey[id][0] = 0 g_PlayerKey[id][1] = 0 } public Activate_Sprint(id) { if(g_SprintPercent[id] <= 0) return if(!g_GameStart) { client_print(id, print_center, "%L", GAME_LANG, "NOTICE_GAMENOTSTART") return } Set_BitVar(g_Sprinting, id) if(!zp_get_user_nightvision(id)) { // Effect static g_MsgScreenFade; if(!g_MsgScreenFade) g_MsgScreenFade = get_user_msgid("ScreenFade") message_begin(MSG_ONE_UNRELIABLE, g_MsgScreenFade, _, id) write_short(0) // duration write_short(0) // hold time write_short(0x0004) // fade type write_byte(255) // r write_byte(255) // g write_byte(255) // b write_byte(40) // alpha message_end() } SetFov(id, 105) // Set set_user_maxspeed(id, get_pcvar_float(g_Cvar_SprintSpeed)) PlaySound(id, ActivateSound) } public Deactivate_Sprint(id) { UnSet_BitVar(g_Sprinting, id) if(!zp_get_user_nightvision(id) && !Get_BitVar(g_Sprinting, id)) { // Effect static g_MsgScreenFade; if(!g_MsgScreenFade) g_MsgScreenFade = get_user_msgid("ScreenFade") // Reset message_begin(MSG_ONE_UNRELIABLE, g_MsgScreenFade, _, id) write_short(0) // duration write_short(0) // hold time write_short(0x0000) // fade type write_byte(0) // r write_byte(0) // g write_byte(0) // b write_byte(0) // alpha message_end() } SetFov(id) set_user_maxspeed(id,250.0) Load_Hud(id, 1.0) } public CMD_Spray(id) { if(!is_alive(id)) return if(zp_get_user_zombie(id)) return if(!g_GameStart) { client_print(id, print_center, "%L", GAME_LANG, "NOTICE_GAMENOTSTART") return } if(!Get_BitVar(g_CanDeadlyShot, id)) return UnSet_BitVar(g_CanDeadlyShot, id) Set_BitVar(g_DeadlyShoting, id) // Effect //zevo_playerattachment(id, DeadlyShotSprite, float(g_DeadlyShotTime[id]), 0.25, 0.0) //zevo_playerattachment(id, DeadlyShot2Sprite, float(g_DeadlyShotTime[id]), 0.75, 15.0) if(!zp_get_user_nightvision(id)) { // Effect static g_MsgScreenFade; if(!g_MsgScreenFade) g_MsgScreenFade = get_user_msgid("ScreenFade") message_begin(MSG_ONE_UNRELIABLE, g_MsgScreenFade, _, id) write_short(0) // duration write_short(0) // hold time write_short(0x0004) // fade type write_byte(255) // r write_byte(255) // g write_byte(255) // b write_byte(40) // alpha message_end() } // Sound emit_sound(id, CHAN_ITEM, ActivateSound, VOL_NORM, ATTN_NORM, 0, PITCH_NORM) } public client_command(id) { if(!is_alive(id)) return PLUGIN_CONTINUE static cmd_list[][] = { "buyequip", "autobuy", "cl_autobuy", "cl_rebuy" } static command[16], i; read_argv(0, command, 15) for(i = 0; i < sizeof cmd_list; i++) if(equal(command, cmd_list[i])) return PLUGIN_HANDLED if(equal(command, "client_buy_open") || equal(command, "buy")) { static msg_buyclose; if(!msg_buyclose) msg_buyclose = get_user_msgid("BuyClose") message_begin(MSG_ONE_UNRELIABLE, msg_buyclose, _, id), message_end() CMD_Buy(id) return PLUGIN_HANDLED } return PLUGIN_CONTINUE } public CMD_Buy(id) { if(!is_alive(id)) return if(zp_get_user_zombie(id)) return if(!g_GameStart) { client_print(id, print_center, "%L", GAME_LANG, "NOTICE_GAMENOTSTART") return } if(!Get_BitVar(g_CanStun, id)) return UnSet_BitVar(g_CanStun, id) // Effect if(!zp_get_user_nightvision(id)) { // Effect static g_MsgScreenFade; if(!g_MsgScreenFade) g_MsgScreenFade = get_user_msgid("ScreenFade") message_begin(MSG_ONE_UNRELIABLE, g_MsgScreenFade, _, id) write_short(FixedUnsigned16(0.5, 1<<12)) // duration write_short(FixedUnsigned16(0.5, 1<<12)) // hold time write_short(0x0000) // fade type write_byte(255) // r write_byte(255) // g write_byte(255) // b write_byte(40) // alpha message_end() } static Float:Origin[3]; pev(id, pev_origin, Origin) message_begin(MSG_BROADCAST, SVC_TEMPENTITY) write_byte(TE_EXPLOSION) engfunc(EngFunc_WriteCoord, Origin[0]) engfunc(EngFunc_WriteCoord, Origin[1]) engfunc(EngFunc_WriteCoord, Origin[2]) write_short(g_Stun_EffectID) write_byte(20) write_byte(30) write_byte(14) message_end() engfunc(EngFunc_MessageBegin, MSG_BROADCAST, SVC_TEMPENTITY, Origin) write_byte(TE_BEAMCYLINDER) engfunc(EngFunc_WriteCoord, Origin[0]) engfunc(EngFunc_WriteCoord, Origin[1]) engfunc(EngFunc_WriteCoord, Origin[2]) engfunc(EngFunc_WriteCoord, Origin[0]) engfunc(EngFunc_WriteCoord, Origin[1]) engfunc(EngFunc_WriteCoord, Origin[2] + get_pcvar_num(g_Cvar_StunRadius)) write_short(g_ShockWave_SprID) write_byte(0) // Start Frame write_byte(20) // Framerate write_byte(4) // Live Time write_byte(25) // Width write_byte(10) // Noise write_byte(0) // R write_byte(255) // G write_byte(255) // B write_byte(255) // Bright write_byte(9) // Speed message_end() engfunc(EngFunc_MessageBegin, MSG_BROADCAST, SVC_TEMPENTITY, Origin) write_byte(TE_BEAMCYLINDER) engfunc(EngFunc_WriteCoord, Origin[0]) engfunc(EngFunc_WriteCoord, Origin[1]) engfunc(EngFunc_WriteCoord, Origin[2]) engfunc(EngFunc_WriteCoord, Origin[0]) engfunc(EngFunc_WriteCoord, Origin[1]) engfunc(EngFunc_WriteCoord, Origin[2] + get_pcvar_num(g_Cvar_StunRadius)) write_short(g_ShockWave_SprID) write_byte(0) // Start Frame write_byte(10) // Framerate write_byte(4) // Live Time write_byte(20) // Width write_byte(20) // Noise write_byte(0) // R write_byte(255) // G write_byte(0) // B write_byte(150) // Bright write_byte(9) // Speed message_end() // Find static Victim; Victim = -1 while((Victim = find_ent_in_sphere(Victim, Origin, get_pcvar_float(g_Cvar_StunRadius))) != 0) { if(Victim == id) continue if(!is_alive(Victim)) continue if(!zp_get_user_zombie(Victim)) continue pev(Victim, pev_maxspeed, g_MySpeed[Victim]) Set_BitVar(g_Stunning, Victim) set_user_maxspeed(Victim, 0.01) emit_sound(Victim, CHAN_ITEM, StunSound, VOL_NORM, ATTN_NORM, 0, PITCH_NORM) //zevo_playerattachment(Victim, StunSprite, get_pcvar_float(g_Cvar_StunTime), 1.0, 10.0) remove_task(Victim+TASK_STUN) set_task(get_pcvar_float(g_Cvar_StunTime), "Remove_Stun", Victim+TASK_STUN) } // Sound emit_sound(id, CHAN_ITEM, ActivateSound, VOL_NORM, ATTN_NORM, 0, PITCH_NORM) } public Remove_Stun(id) { id -= TASK_STUN if(!is_alive(id)) return if(!zp_get_user_zombie(id)) return if(!Get_BitVar(g_Stunning, id)) return UnSet_BitVar(g_Stunning, id) set_pev(id, pev_maxspeed, g_MySpeed[id]) remove_task(id+TASK_STUN) } /* =============================== ------------- SAFETY ------------- =================================*/ public Register_SafetyFunc() { register_event("CurWeapon", "Safety_CurWeapon", "be", "1=1") RegisterHam(Ham_Spawn, "player", "fw_Safety_Spawn_Post", 1) RegisterHam(Ham_Killed, "player", "fw_Safety_Killed_Post", 1) } public Register_SafetyFuncBot(id) { RegisterHamFromEntity(Ham_Spawn, id, "fw_Safety_Spawn_Post", 1) RegisterHamFromEntity(Ham_Killed, id, "fw_Safety_Killed_Post", 1) } public Safety_Connected(id) { Set_BitVar(g_IsConnected, id) UnSet_BitVar(g_IsAlive, id) g_PlayerWeapon[id] = 0 } public Safety_Disconnected(id) { UnSet_BitVar(g_IsConnected, id) UnSet_BitVar(g_IsAlive, id) g_PlayerWeapon[id] = 0 } public Safety_CurWeapon(id) { if(!is_alive(id)) return static CSW; CSW = read_data(2) if(g_PlayerWeapon[id] != CSW) g_PlayerWeapon[id] = CSW } public fw_Safety_Spawn_Post(id) { if(!is_user_alive(id)) return Set_BitVar(g_IsAlive, id) } public fw_Safety_Killed_Post(id) { UnSet_BitVar(g_IsAlive, id) } public is_connected(id) { if(!(1 <= id <= 32)) return 0 if(!Get_BitVar(g_IsConnected, id)) return 0 return 1 } public is_alive(id) { if(!is_connected(id)) return 0 if(!Get_BitVar(g_IsAlive, id)) return 0 return 1 } public get_player_weapon(id) { if(!is_alive(id)) return 0 return g_PlayerWeapon[id] } stock PlaySound(id, const sound[]) { if(equal(sound[strlen(sound)-4], ".mp3")) client_cmd(id, "mp3 play ^"sound/%s^"", sound) else client_cmd(id, "spk ^"%s^"", sound) } stock SetFov(id, num = 90) { static g_MsgFov; if(!g_MsgFov) g_MsgFov = get_user_msgid("SetFOV") message_begin(MSG_ONE_UNRELIABLE, g_MsgFov, {0,0,0}, id) write_byte(num) message_end() } stock FixedUnsigned16(Float:flValue, iScale) { new iOutput; iOutput = floatround(flValue * iScale); if ( iOutput < 0 ) iOutput = 0; if ( iOutput > 0xFFFF ) iOutput = 0xFFFF; return iOutput; }
human ability
Moderatör: Moderatörler
-
ScoolBa
Konu Sahibi - Mesajlar: 103
- Kayıt: Cmt Şub 16, 2019 9:45 pm
human ability
| Link: | |
| Linklerini gizle |
-
ShooTeR
- Mesajlar: 4497
- Kayıt: Çrş Ağu 16, 2017 10:35 pm
- Server Ip/DNS: CSXX.CSDURAGI.COM
- Clan İsmi: NoMercy
human ability
ScoolBa yazdı: Cmt Eyl 21, 2019 9:54 pmyeteneklerin hudu geldi fakat yetenekleri basıcagım zaman game not start diyorShooTeR yazdı: Cmt Eyl 21, 2019 9:35 pmDeneyiniz.Kod: Tümünü seç
#include <amxmodx> #include <fun> #include <engine> #include <fakemeta> #include <hamsandwich> #include <zombieplague> #define PLUGIN "[ZEVO] Addon: Human Ability" #define VERSION "1.0" #define AUTHOR "Dias Pendragon Leon" #define GAME_LANG LANG_SERVER #define LANG_FILE "zombie_evolution.txt" #define TASK_STUN 546464 new const SprintSprite[] = "sprites/zombie_evolution/head_speedup.spr" new const DeadlyShotSprite[] = "sprites/zombie_evolution/deadlyshot.spr" new const DeadlyShot2Sprite[] = "sprites/zombie_evolution/deadlyshot2.spr" new const StunSprite[] = "sprites/zombie_evolution/head_stun.spr" new const StunEffect[] = "sprites/zombie_evolution/stun_activate.spr" new const ActivateSound[] = "zombie_evolution/action/activate.wav" new const StunSound[] = "zombie_evolution/action/player_stun.wav" new g_SprintPercent[33], g_Sprinting, g_CanDeadlyShot, g_DeadlyShoting, g_DeadlyShotTime[33], g_CanStun new g_HumanHud, g_PlayerKey[33][2], Float:CheckTime[33], Float:CheckTime2[33], g_Stunning, Float:g_MySpeed[33] new g_Cvar_SprintPercent, g_Cvar_DeadlyShotTime, g_Cvar_SprintSpeed, g_Cvar_StunRadius, g_Cvar_StunTime new g_BuyZone, g_ShockWave_SprID, g_GameStart, g_Stun_EffectID #define TIME_INTERVAL 0.15 #define TASK_CHECKTIME 3125365 #define TASK_AUTOSKILL 18710 // MACROS #define Get_BitVar(%1,%2) (%1 & (1 << (%2 & 31))) #define Set_BitVar(%1,%2) %1 |= (1 << (%2 & 31)) #define UnSet_BitVar(%1,%2) %1 &= ~(1 << (%2 & 31)) // Safety new g_HamBot new g_IsConnected, g_IsAlive, g_PlayerWeapon[33] public plugin_init() { register_plugin(PLUGIN, VERSION, AUTHOR) register_dictionary(LANG_FILE) Register_SafetyFunc() register_impulse(201, "CMD_Spray") g_HumanHud = CreateHudSyncObj(3) RegisterHam(Ham_TraceAttack, "player", "fw_TraceAttack") // Cvars g_Cvar_SprintPercent = register_cvar("zevo_sprint_percent", "100") g_Cvar_SprintSpeed = register_cvar("zevo_sprint_speed", "350.0") g_Cvar_DeadlyShotTime = register_cvar("zevo_deadlyshot_time", "5") g_Cvar_StunRadius = register_cvar("zevo_stun_radius", "240.0") g_Cvar_StunTime = register_cvar("zevo_stun_time", "5.0") } public plugin_precache() { precache_model(SprintSprite) precache_model(DeadlyShotSprite) precache_model(DeadlyShot2Sprite) precache_model(StunSprite) precache_sound(ActivateSound) precache_sound(StunSound) g_Stun_EffectID = precache_model(StunEffect) g_ShockWave_SprID = precache_model("sprites/shockwave.spr") // Buyzone g_BuyZone = engfunc(EngFunc_CreateNamedEntity, engfunc(EngFunc_AllocString, "func_buyzone")) dllfunc(DLLFunc_Spawn, g_BuyZone) engfunc(EngFunc_SetSize, g_BuyZone, {-8192.0, -8192.0, -8192.0}, {-8191.0, -8191.0, -8191.0}) } public client_putinserver(id) { Safety_Connected(id) if(!g_HamBot && is_user_bot(id)) { g_HamBot = 1 set_task(0.1, "Register_HamBot", id) } } public Register_HamBot(id) { Register_SafetyFuncBot(id) RegisterHamFromEntity(Ham_TraceAttack, id, "fw_TraceAttack") } public client_disconnected(id) { Safety_Disconnected(id) } public fw_TraceAttack(victim, attacker, Float:damage, Float:direction[3], tracehandle, damage_type) { if(!is_connected(attacker)) return HAM_IGNORED if(Get_BitVar(g_DeadlyShoting, attacker)) set_tr2(tracehandle, TR_iHitgroup, HIT_HEAD) return HAM_IGNORED } public zevo_round_new() g_GameStart = 0 public zevo_game_start() g_GameStart = 1 public zevo_user_spawn(id, Zombie) { if(Zombie) return remove_task(id+TASK_STUN) remove_task(id+TASK_AUTOSKILL) // Sprint UnSet_BitVar(g_Sprinting, id) g_SprintPercent[id] = get_pcvar_num(g_Cvar_SprintPercent) // Deadly Shot Set_BitVar(g_CanDeadlyShot, id) UnSet_BitVar(g_DeadlyShoting, id) g_DeadlyShotTime[id] = get_pcvar_num(g_Cvar_DeadlyShotTime) // Stun Set_BitVar(g_CanStun, id) if(is_user_bot(id)) { remove_task(id+TASK_AUTOSKILL) if(is_user_bot(id)) set_task(random_float(30.0, 60.0), "Bot_AutoSkill", id+TASK_AUTOSKILL) } } public Bot_AutoSkill(id) { id -= TASK_AUTOSKILL if(!is_alive(id)) return if(!is_user_bot(id)) { remove_task(id+TASK_AUTOSKILL) return } if(zp_get_user_zombie(id)) return if(Get_BitVar(g_CanDeadlyShot, id)) CMD_Spray(id) else if(Get_BitVar(g_CanStun, id)) CMD_Buy(id) if(is_user_bot(id)) set_task(random_float(10.0, 20.0), "Bot_AutoSkill", id+TASK_AUTOSKILL) } public zevo_become_zombie(id) { remove_task(id+TASK_STUN) remove_task(id+TASK_AUTOSKILL) UnSet_BitVar(g_Sprinting, id) UnSet_BitVar(g_CanDeadlyShot, id) UnSet_BitVar(g_DeadlyShoting, id) UnSet_BitVar(g_CanStun, id) UnSet_BitVar(g_Stunning, id) set_hudmessage(0, 255, 0, -1.0, 0.10, 0, 0.25, 0.25) ShowSyncHudMsg(id, g_HumanHud, "") // SetFov(id) } public zevo_runningtime2(id, Time) { if(!is_alive(id)) return if(zp_get_user_zombie(id)) return if(Get_BitVar(g_DeadlyShoting, id)) { if(g_DeadlyShotTime[id] > 0) g_DeadlyShotTime[id]-- else { g_DeadlyShotTime[id] = 0 UnSet_BitVar(g_DeadlyShoting, id) if(!zp_get_user_nightvision(id) && !Get_BitVar(g_Sprinting, id)) { // Effect static g_MsgScreenFade; if(!g_MsgScreenFade) g_MsgScreenFade = get_user_msgid("ScreenFade") // Reset message_begin(MSG_ONE_UNRELIABLE, g_MsgScreenFade, _, id) write_short(0) // duration write_short(0) // hold time write_short(0x0000) // fade type write_byte(0) // r write_byte(0) // g write_byte(0) // b write_byte(0) // alpha message_end() } } } Load_Hud(id, 2.0) } public Load_Hud(id, Float:Time) { // Hud static Skill1[64], Skill2[64], Skill3[64] // Skill 1 if(g_SprintPercent[id] >= 100) formatex(Skill1, 63, " [W] + [W] : %L (%i%%)", GAME_LANG, "HUMAN_SKILL_SPRINT", g_SprintPercent[id]) else formatex(Skill1, 63, "[W] + [W] : %L (%i%%)", GAME_LANG, "HUMAN_SKILL_SPRINT", g_SprintPercent[id]) // Skill 2 if(Get_BitVar(g_DeadlyShoting, id)) formatex(Skill2, 63, " [T] : %L (%i)", GAME_LANG, "HUMAN_SKILL_DEADLYSHOT", g_DeadlyShotTime[id]) else { if(Get_BitVar(g_CanDeadlyShot, id)) formatex(Skill2, 63, " [T] : %L", GAME_LANG, "HUMAN_SKILL_DEADLYSHOT") else formatex(Skill2, 63, " [T] : %L (X)", GAME_LANG, "HUMAN_SKILL_DEADLYSHOT") } // Skill 3 if(Get_BitVar(g_CanStun, id)) formatex(Skill3, 63, " [B] : %L", GAME_LANG, "HUMAN_SKILL_STUN") else formatex(Skill3, 63, " [B] : %L (X)", GAME_LANG, "HUMAN_SKILL_STUN") set_hudmessage(0, 255, 0, -1.0, 0.10, 0, Time, Time) ShowSyncHudMsg(id, g_HumanHud, "[Human Ability]^n^n%s^n%s^n%s", Skill1, Skill2, Skill3) } public client_PreThink(id) { if(!is_alive(id)) return if(zp_get_user_zombie(id)) return static CurButton; CurButton = pev(id, pev_button) static OldButton; OldButton = pev(id, pev_oldbuttons) if((CurButton & IN_FORWARD)) { if(Get_BitVar(g_Sprinting, id) && (get_gametime() - 0.1 > CheckTime[id])) { if(g_SprintPercent[id] <= 0) { Deactivate_Sprint(id) return } g_SprintPercent[id]-- Load_Hud(id, 0.2) CheckTime[id] = get_gametime() } if(Get_BitVar(g_Sprinting, id) && (get_gametime() - 1.0 > CheckTime2[id])) { if(g_SprintPercent[id] <= 0) return //zevo_playerattachment(id, SprintSprite, 1.25, 0.25, 0.0) CheckTime2[id] = get_gametime() } if(OldButton & IN_FORWARD) return if(!task_exists(id+TASK_CHECKTIME)) { g_PlayerKey[id][0] = 'w' remove_task(id+TASK_CHECKTIME) set_task(TIME_INTERVAL, "Recheck_Key", id+TASK_CHECKTIME) } else { g_PlayerKey[id][1] = 'w' } } else { if(OldButton & IN_FORWARD) { Deactivate_Sprint(id) } return } if(equali(g_PlayerKey[id], "ww")) { Reset_Key(id) Activate_Sprint(id) } return } public client_PostThink(id) { if(!is_alive(id)) return if(zp_get_user_zombie(id)) { if(Get_BitVar(g_Stunning, id) && pev(id, pev_maxspeed) != 0.01) set_user_maxspeed(id, 0.01) return } dllfunc(DLLFunc_Touch, g_BuyZone, id) } public Recheck_Key(id) { id -= TASK_CHECKTIME if(!is_user_connected(id)) return Reset_Key(id) } public Reset_Key(id) { g_PlayerKey[id][0] = 0 g_PlayerKey[id][1] = 0 } public Activate_Sprint(id) { if(g_SprintPercent[id] <= 0) return if(!g_GameStart) { client_print(id, print_center, "%L", GAME_LANG, "NOTICE_GAMENOTSTART") return } Set_BitVar(g_Sprinting, id) if(!zp_get_user_nightvision(id)) { // Effect static g_MsgScreenFade; if(!g_MsgScreenFade) g_MsgScreenFade = get_user_msgid("ScreenFade") message_begin(MSG_ONE_UNRELIABLE, g_MsgScreenFade, _, id) write_short(0) // duration write_short(0) // hold time write_short(0x0004) // fade type write_byte(255) // r write_byte(255) // g write_byte(255) // b write_byte(40) // alpha message_end() } SetFov(id, 105) // Set set_user_maxspeed(id, get_pcvar_float(g_Cvar_SprintSpeed)) PlaySound(id, ActivateSound) } public Deactivate_Sprint(id) { UnSet_BitVar(g_Sprinting, id) if(!zp_get_user_nightvision(id) && !Get_BitVar(g_Sprinting, id)) { // Effect static g_MsgScreenFade; if(!g_MsgScreenFade) g_MsgScreenFade = get_user_msgid("ScreenFade") // Reset message_begin(MSG_ONE_UNRELIABLE, g_MsgScreenFade, _, id) write_short(0) // duration write_short(0) // hold time write_short(0x0000) // fade type write_byte(0) // r write_byte(0) // g write_byte(0) // b write_byte(0) // alpha message_end() } SetFov(id) set_user_maxspeed(id,250.0) Load_Hud(id, 1.0) } public CMD_Spray(id) { if(!is_alive(id)) return if(zp_get_user_zombie(id)) return if(!g_GameStart) { client_print(id, print_center, "%L", GAME_LANG, "NOTICE_GAMENOTSTART") return } if(!Get_BitVar(g_CanDeadlyShot, id)) return UnSet_BitVar(g_CanDeadlyShot, id) Set_BitVar(g_DeadlyShoting, id) // Effect //zevo_playerattachment(id, DeadlyShotSprite, float(g_DeadlyShotTime[id]), 0.25, 0.0) //zevo_playerattachment(id, DeadlyShot2Sprite, float(g_DeadlyShotTime[id]), 0.75, 15.0) if(!zp_get_user_nightvision(id)) { // Effect static g_MsgScreenFade; if(!g_MsgScreenFade) g_MsgScreenFade = get_user_msgid("ScreenFade") message_begin(MSG_ONE_UNRELIABLE, g_MsgScreenFade, _, id) write_short(0) // duration write_short(0) // hold time write_short(0x0004) // fade type write_byte(255) // r write_byte(255) // g write_byte(255) // b write_byte(40) // alpha message_end() } // Sound emit_sound(id, CHAN_ITEM, ActivateSound, VOL_NORM, ATTN_NORM, 0, PITCH_NORM) } public client_command(id) { if(!is_alive(id)) return PLUGIN_CONTINUE static cmd_list[][] = { "buyequip", "autobuy", "cl_autobuy", "cl_rebuy" } static command[16], i; read_argv(0, command, 15) for(i = 0; i < sizeof cmd_list; i++) if(equal(command, cmd_list[i])) return PLUGIN_HANDLED if(equal(command, "client_buy_open") || equal(command, "buy")) { static msg_buyclose; if(!msg_buyclose) msg_buyclose = get_user_msgid("BuyClose") message_begin(MSG_ONE_UNRELIABLE, msg_buyclose, _, id), message_end() CMD_Buy(id) return PLUGIN_HANDLED } return PLUGIN_CONTINUE } public CMD_Buy(id) { if(!is_alive(id)) return if(zp_get_user_zombie(id)) return if(!g_GameStart) { client_print(id, print_center, "%L", GAME_LANG, "NOTICE_GAMENOTSTART") return } if(!Get_BitVar(g_CanStun, id)) return UnSet_BitVar(g_CanStun, id) // Effect if(!zp_get_user_nightvision(id)) { // Effect static g_MsgScreenFade; if(!g_MsgScreenFade) g_MsgScreenFade = get_user_msgid("ScreenFade") message_begin(MSG_ONE_UNRELIABLE, g_MsgScreenFade, _, id) write_short(FixedUnsigned16(0.5, 1<<12)) // duration write_short(FixedUnsigned16(0.5, 1<<12)) // hold time write_short(0x0000) // fade type write_byte(255) // r write_byte(255) // g write_byte(255) // b write_byte(40) // alpha message_end() } static Float:Origin[3]; pev(id, pev_origin, Origin) message_begin(MSG_BROADCAST, SVC_TEMPENTITY) write_byte(TE_EXPLOSION) engfunc(EngFunc_WriteCoord, Origin[0]) engfunc(EngFunc_WriteCoord, Origin[1]) engfunc(EngFunc_WriteCoord, Origin[2]) write_short(g_Stun_EffectID) write_byte(20) write_byte(30) write_byte(14) message_end() engfunc(EngFunc_MessageBegin, MSG_BROADCAST, SVC_TEMPENTITY, Origin) write_byte(TE_BEAMCYLINDER) engfunc(EngFunc_WriteCoord, Origin[0]) engfunc(EngFunc_WriteCoord, Origin[1]) engfunc(EngFunc_WriteCoord, Origin[2]) engfunc(EngFunc_WriteCoord, Origin[0]) engfunc(EngFunc_WriteCoord, Origin[1]) engfunc(EngFunc_WriteCoord, Origin[2] + get_pcvar_num(g_Cvar_StunRadius)) write_short(g_ShockWave_SprID) write_byte(0) // Start Frame write_byte(20) // Framerate write_byte(4) // Live Time write_byte(25) // Width write_byte(10) // Noise write_byte(0) // R write_byte(255) // G write_byte(255) // B write_byte(255) // Bright write_byte(9) // Speed message_end() engfunc(EngFunc_MessageBegin, MSG_BROADCAST, SVC_TEMPENTITY, Origin) write_byte(TE_BEAMCYLINDER) engfunc(EngFunc_WriteCoord, Origin[0]) engfunc(EngFunc_WriteCoord, Origin[1]) engfunc(EngFunc_WriteCoord, Origin[2]) engfunc(EngFunc_WriteCoord, Origin[0]) engfunc(EngFunc_WriteCoord, Origin[1]) engfunc(EngFunc_WriteCoord, Origin[2] + get_pcvar_num(g_Cvar_StunRadius)) write_short(g_ShockWave_SprID) write_byte(0) // Start Frame write_byte(10) // Framerate write_byte(4) // Live Time write_byte(20) // Width write_byte(20) // Noise write_byte(0) // R write_byte(255) // G write_byte(0) // B write_byte(150) // Bright write_byte(9) // Speed message_end() // Find static Victim; Victim = -1 while((Victim = find_ent_in_sphere(Victim, Origin, get_pcvar_float(g_Cvar_StunRadius))) != 0) { if(Victim == id) continue if(!is_alive(Victim)) continue if(!zp_get_user_zombie(Victim)) continue pev(Victim, pev_maxspeed, g_MySpeed[Victim]) Set_BitVar(g_Stunning, Victim) set_user_maxspeed(Victim, 0.01) emit_sound(Victim, CHAN_ITEM, StunSound, VOL_NORM, ATTN_NORM, 0, PITCH_NORM) //zevo_playerattachment(Victim, StunSprite, get_pcvar_float(g_Cvar_StunTime), 1.0, 10.0) remove_task(Victim+TASK_STUN) set_task(get_pcvar_float(g_Cvar_StunTime), "Remove_Stun", Victim+TASK_STUN) } // Sound emit_sound(id, CHAN_ITEM, ActivateSound, VOL_NORM, ATTN_NORM, 0, PITCH_NORM) } public Remove_Stun(id) { id -= TASK_STUN if(!is_alive(id)) return if(!zp_get_user_zombie(id)) return if(!Get_BitVar(g_Stunning, id)) return UnSet_BitVar(g_Stunning, id) set_pev(id, pev_maxspeed, g_MySpeed[id]) remove_task(id+TASK_STUN) } /* =============================== ------------- SAFETY ------------- =================================*/ public Register_SafetyFunc() { register_event("CurWeapon", "Safety_CurWeapon", "be", "1=1") RegisterHam(Ham_Spawn, "player", "fw_Safety_Spawn_Post", 1) RegisterHam(Ham_Killed, "player", "fw_Safety_Killed_Post", 1) } public Register_SafetyFuncBot(id) { RegisterHamFromEntity(Ham_Spawn, id, "fw_Safety_Spawn_Post", 1) RegisterHamFromEntity(Ham_Killed, id, "fw_Safety_Killed_Post", 1) } public Safety_Connected(id) { Set_BitVar(g_IsConnected, id) UnSet_BitVar(g_IsAlive, id) g_PlayerWeapon[id] = 0 } public Safety_Disconnected(id) { UnSet_BitVar(g_IsConnected, id) UnSet_BitVar(g_IsAlive, id) g_PlayerWeapon[id] = 0 } public Safety_CurWeapon(id) { if(!is_alive(id)) return static CSW; CSW = read_data(2) if(g_PlayerWeapon[id] != CSW) g_PlayerWeapon[id] = CSW } public fw_Safety_Spawn_Post(id) { if(!is_user_alive(id)) return Set_BitVar(g_IsAlive, id) } public fw_Safety_Killed_Post(id) { UnSet_BitVar(g_IsAlive, id) } public is_connected(id) { if(!(1 <= id <= 32)) return 0 if(!Get_BitVar(g_IsConnected, id)) return 0 return 1 } public is_alive(id) { if(!is_connected(id)) return 0 if(!Get_BitVar(g_IsAlive, id)) return 0 return 1 } public get_player_weapon(id) { if(!is_alive(id)) return 0 return g_PlayerWeapon[id] } stock PlaySound(id, const sound[]) { if(equal(sound[strlen(sound)-4], ".mp3")) client_cmd(id, "mp3 play ^"sound/%s^"", sound) else client_cmd(id, "spk ^"%s^"", sound) } stock SetFov(id, num = 90) { static g_MsgFov; if(!g_MsgFov) g_MsgFov = get_user_msgid("SetFOV") message_begin(MSG_ONE_UNRELIABLE, g_MsgFov, {0,0,0}, id) write_byte(num) message_end() } stock FixedUnsigned16(Float:flValue, iScale) { new iOutput; iOutput = floatround(flValue * iScale); if ( iOutput < 0 ) iOutput = 0; if ( iOutput > 0xFFFF ) iOutput = 0xFFFF; return iOutput; }
Kod: Tümünü seç
#include <amxmodx>
#include <fun>
#include <engine>
#include <fakemeta>
#include <hamsandwich>
#include <zombieplague>
#define PLUGIN "[ZEVO] Addon: Human Ability"
#define VERSION "1.0"
#define AUTHOR "Dias Pendragon Leon"
#define GAME_LANG LANG_SERVER
#define LANG_FILE "zombie_evolution.txt"
#define TASK_STUN 546464
new const SprintSprite[] = "sprites/zombie_evolution/head_speedup.spr"
new const DeadlyShotSprite[] = "sprites/zombie_evolution/deadlyshot.spr"
new const DeadlyShot2Sprite[] = "sprites/zombie_evolution/deadlyshot2.spr"
new const StunSprite[] = "sprites/zombie_evolution/head_stun.spr"
new const StunEffect[] = "sprites/zombie_evolution/stun_activate.spr"
new const ActivateSound[] = "zombie_evolution/action/activate.wav"
new const StunSound[] = "zombie_evolution/action/player_stun.wav"
new g_SprintPercent[33], g_Sprinting, g_CanDeadlyShot, g_DeadlyShoting, g_DeadlyShotTime[33], g_CanStun
new g_HumanHud, g_PlayerKey[33][2], Float:CheckTime[33], Float:CheckTime2[33], g_Stunning, Float:g_MySpeed[33]
new g_Cvar_SprintPercent, g_Cvar_DeadlyShotTime, g_Cvar_SprintSpeed, g_Cvar_StunRadius, g_Cvar_StunTime
new g_BuyZone, g_ShockWave_SprID, g_GameStart, g_Stun_EffectID
#define TIME_INTERVAL 0.15
#define TASK_CHECKTIME 3125365
#define TASK_AUTOSKILL 18710
// MACROS
#define Get_BitVar(%1,%2) (%1 & (1 << (%2 & 31)))
#define Set_BitVar(%1,%2) %1 |= (1 << (%2 & 31))
#define UnSet_BitVar(%1,%2) %1 &= ~(1 << (%2 & 31))
// Safety
new g_HamBot
new g_IsConnected, g_IsAlive, g_PlayerWeapon[33]
public plugin_init()
{
register_plugin(PLUGIN, VERSION, AUTHOR)
register_dictionary(LANG_FILE)
Register_SafetyFunc()
register_impulse(201, "CMD_Spray")
g_HumanHud = CreateHudSyncObj(3)
RegisterHam(Ham_TraceAttack, "player", "fw_TraceAttack")
// Cvars
g_Cvar_SprintPercent = register_cvar("zevo_sprint_percent", "100")
g_Cvar_SprintSpeed = register_cvar("zevo_sprint_speed", "350.0")
g_Cvar_DeadlyShotTime = register_cvar("zevo_deadlyshot_time", "5")
g_Cvar_StunRadius = register_cvar("zevo_stun_radius", "240.0")
g_Cvar_StunTime = register_cvar("zevo_stun_time", "5.0")
}
public plugin_precache()
{
precache_model(SprintSprite)
precache_model(DeadlyShotSprite)
precache_model(DeadlyShot2Sprite)
precache_model(StunSprite)
precache_sound(ActivateSound)
precache_sound(StunSound)
g_Stun_EffectID = precache_model(StunEffect)
g_ShockWave_SprID = precache_model("sprites/shockwave.spr")
// Buyzone
g_BuyZone = engfunc(EngFunc_CreateNamedEntity, engfunc(EngFunc_AllocString, "func_buyzone"))
dllfunc(DLLFunc_Spawn, g_BuyZone)
engfunc(EngFunc_SetSize, g_BuyZone, {-8192.0, -8192.0, -8192.0}, {-8191.0, -8191.0, -8191.0})
}
public client_putinserver(id)
{
Safety_Connected(id)
if(!g_HamBot && is_user_bot(id))
{
g_HamBot = 1
set_task(0.1, "Register_HamBot", id)
}
}
public Register_HamBot(id)
{
Register_SafetyFuncBot(id)
RegisterHamFromEntity(Ham_TraceAttack, id, "fw_TraceAttack")
}
public client_disconnected(id)
{
Safety_Disconnected(id)
}
public fw_TraceAttack(victim, attacker, Float:damage, Float:direction[3], tracehandle, damage_type)
{
if(!is_connected(attacker))
return HAM_IGNORED
if(Get_BitVar(g_DeadlyShoting, attacker))
set_tr2(tracehandle, TR_iHitgroup, HIT_HEAD)
return HAM_IGNORED
}
public zevo_round_new() g_GameStart = 0
public zevo_game_start() g_GameStart = 1
public zevo_user_spawn(id, Zombie)
{
if(Zombie) return
remove_task(id+TASK_STUN)
remove_task(id+TASK_AUTOSKILL)
// Sprint
UnSet_BitVar(g_Sprinting, id)
g_SprintPercent[id] = get_pcvar_num(g_Cvar_SprintPercent)
// Deadly Shot
Set_BitVar(g_CanDeadlyShot, id)
UnSet_BitVar(g_DeadlyShoting, id)
g_DeadlyShotTime[id] = get_pcvar_num(g_Cvar_DeadlyShotTime)
// Stun
Set_BitVar(g_CanStun, id)
if(is_user_bot(id))
{
remove_task(id+TASK_AUTOSKILL)
if(is_user_bot(id)) set_task(random_float(30.0, 60.0), "Bot_AutoSkill", id+TASK_AUTOSKILL)
}
}
public Bot_AutoSkill(id)
{
id -= TASK_AUTOSKILL
if(!is_alive(id))
return
if(!is_user_bot(id))
{
remove_task(id+TASK_AUTOSKILL)
return
}
if(zp_get_user_zombie(id))
return
if(Get_BitVar(g_CanDeadlyShot, id)) CMD_Spray(id)
else if(Get_BitVar(g_CanStun, id)) CMD_Buy(id)
if(is_user_bot(id)) set_task(random_float(10.0, 20.0), "Bot_AutoSkill", id+TASK_AUTOSKILL)
}
public zevo_become_zombie(id)
{
remove_task(id+TASK_STUN)
remove_task(id+TASK_AUTOSKILL)
UnSet_BitVar(g_Sprinting, id)
UnSet_BitVar(g_CanDeadlyShot, id)
UnSet_BitVar(g_DeadlyShoting, id)
UnSet_BitVar(g_CanStun, id)
UnSet_BitVar(g_Stunning, id)
set_hudmessage(0, 255, 0, -1.0, 0.10, 0, 0.25, 0.25)
ShowSyncHudMsg(id, g_HumanHud, "")
// SetFov(id)
}
public zevo_runningtime2(id, Time)
{
if(!is_alive(id))
return
if(zp_get_user_zombie(id))
return
if(Get_BitVar(g_DeadlyShoting, id))
{
if(g_DeadlyShotTime[id] > 0) g_DeadlyShotTime[id]--
else {
g_DeadlyShotTime[id] = 0
UnSet_BitVar(g_DeadlyShoting, id)
if(!zp_get_user_nightvision(id) && !Get_BitVar(g_Sprinting, id))
{
// Effect
static g_MsgScreenFade;
if(!g_MsgScreenFade) g_MsgScreenFade = get_user_msgid("ScreenFade")
// Reset
message_begin(MSG_ONE_UNRELIABLE, g_MsgScreenFade, _, id)
write_short(0) // duration
write_short(0) // hold time
write_short(0x0000) // fade type
write_byte(0) // r
write_byte(0) // g
write_byte(0) // b
write_byte(0) // alpha
message_end()
}
}
}
Load_Hud(id, 2.0)
}
public Load_Hud(id, Float:Time)
{
// Hud
static Skill1[64], Skill2[64], Skill3[64]
// Skill 1
if(g_SprintPercent[id] >= 100) formatex(Skill1, 63, " [W] + [W] : %L (%i%%)", GAME_LANG, "HUMAN_SKILL_SPRINT", g_SprintPercent[id])
else formatex(Skill1, 63, "[W] + [W] : %L (%i%%)", GAME_LANG, "HUMAN_SKILL_SPRINT", g_SprintPercent[id])
// Skill 2
if(Get_BitVar(g_DeadlyShoting, id)) formatex(Skill2, 63, " [T] : %L (%i)", GAME_LANG, "HUMAN_SKILL_DEADLYSHOT", g_DeadlyShotTime[id])
else {
if(Get_BitVar(g_CanDeadlyShot, id)) formatex(Skill2, 63, " [T] : %L", GAME_LANG, "HUMAN_SKILL_DEADLYSHOT")
else formatex(Skill2, 63, " [T] : %L (X)", GAME_LANG, "HUMAN_SKILL_DEADLYSHOT")
}
// Skill 3
if(Get_BitVar(g_CanStun, id)) formatex(Skill3, 63, " [B] : %L", GAME_LANG, "HUMAN_SKILL_STUN")
else formatex(Skill3, 63, " [B] : %L (X)", GAME_LANG, "HUMAN_SKILL_STUN")
set_hudmessage(0, 255, 0, -1.0, 0.10, 0, Time, Time)
ShowSyncHudMsg(id, g_HumanHud, "[Human Ability]^n^n%s^n%s^n%s", Skill1, Skill2, Skill3)
}
public client_PreThink(id)
{
if(!is_alive(id))
return
if(zp_get_user_zombie(id))
return
static CurButton; CurButton = pev(id, pev_button)
static OldButton; OldButton = pev(id, pev_oldbuttons)
if((CurButton & IN_FORWARD))
{
if(Get_BitVar(g_Sprinting, id) && (get_gametime() - 0.1 > CheckTime[id]))
{
if(g_SprintPercent[id] <= 0)
{
Deactivate_Sprint(id)
return
}
g_SprintPercent[id]--
Load_Hud(id, 0.2)
CheckTime[id] = get_gametime()
}
if(Get_BitVar(g_Sprinting, id) && (get_gametime() - 1.0 > CheckTime2[id]))
{
if(g_SprintPercent[id] <= 0)
return
//zevo_playerattachment(id, SprintSprite, 1.25, 0.25, 0.0)
CheckTime2[id] = get_gametime()
}
if(OldButton & IN_FORWARD)
return
if(!task_exists(id+TASK_CHECKTIME))
{
g_PlayerKey[id][0] = 'w'
remove_task(id+TASK_CHECKTIME)
set_task(TIME_INTERVAL, "Recheck_Key", id+TASK_CHECKTIME)
} else {
g_PlayerKey[id][1] = 'w'
}
} else {
if(OldButton & IN_FORWARD)
{
Deactivate_Sprint(id)
}
return
}
if(equali(g_PlayerKey[id], "ww"))
{
Reset_Key(id)
Activate_Sprint(id)
}
return
}
public client_PostThink(id)
{
if(!is_alive(id))
return
if(zp_get_user_zombie(id))
{
if(Get_BitVar(g_Stunning, id) && pev(id, pev_maxspeed) != 0.01)
set_user_maxspeed(id, 0.01)
return
}
dllfunc(DLLFunc_Touch, g_BuyZone, id)
}
public Recheck_Key(id)
{
id -= TASK_CHECKTIME
if(!is_user_connected(id))
return
Reset_Key(id)
}
public Reset_Key(id)
{
g_PlayerKey[id][0] = 0
g_PlayerKey[id][1] = 0
}
public Activate_Sprint(id)
{
if(g_SprintPercent[id] <= 0)
return
/*if(!g_GameStart)
{
client_print(id, print_center, "%L", GAME_LANG, "NOTICE_GAMENOTSTART")
return
}*/
Set_BitVar(g_Sprinting, id)
if(!zp_get_user_nightvision(id))
{
// Effect
static g_MsgScreenFade;
if(!g_MsgScreenFade) g_MsgScreenFade = get_user_msgid("ScreenFade")
message_begin(MSG_ONE_UNRELIABLE, g_MsgScreenFade, _, id)
write_short(0) // duration
write_short(0) // hold time
write_short(0x0004) // fade type
write_byte(255) // r
write_byte(255) // g
write_byte(255) // b
write_byte(40) // alpha
message_end()
}
SetFov(id, 105)
// Set
set_user_maxspeed(id, get_pcvar_float(g_Cvar_SprintSpeed))
PlaySound(id, ActivateSound)
}
public Deactivate_Sprint(id)
{
UnSet_BitVar(g_Sprinting, id)
if(!zp_get_user_nightvision(id) && !Get_BitVar(g_Sprinting, id))
{
// Effect
static g_MsgScreenFade;
if(!g_MsgScreenFade) g_MsgScreenFade = get_user_msgid("ScreenFade")
// Reset
message_begin(MSG_ONE_UNRELIABLE, g_MsgScreenFade, _, id)
write_short(0) // duration
write_short(0) // hold time
write_short(0x0000) // fade type
write_byte(0) // r
write_byte(0) // g
write_byte(0) // b
write_byte(0) // alpha
message_end()
}
SetFov(id)
set_user_maxspeed(id,250.0)
Load_Hud(id, 1.0)
}
public CMD_Spray(id)
{
if(!is_alive(id))
return
if(zp_get_user_zombie(id))
return
if(!g_GameStart)
{
client_print(id, print_center, "%L", GAME_LANG, "NOTICE_GAMENOTSTART")
return
}
if(!Get_BitVar(g_CanDeadlyShot, id))
return
UnSet_BitVar(g_CanDeadlyShot, id)
Set_BitVar(g_DeadlyShoting, id)
// Effect
//zevo_playerattachment(id, DeadlyShotSprite, float(g_DeadlyShotTime[id]), 0.25, 0.0)
//zevo_playerattachment(id, DeadlyShot2Sprite, float(g_DeadlyShotTime[id]), 0.75, 15.0)
if(!zp_get_user_nightvision(id))
{
// Effect
static g_MsgScreenFade;
if(!g_MsgScreenFade) g_MsgScreenFade = get_user_msgid("ScreenFade")
message_begin(MSG_ONE_UNRELIABLE, g_MsgScreenFade, _, id)
write_short(0) // duration
write_short(0) // hold time
write_short(0x0004) // fade type
write_byte(255) // r
write_byte(255) // g
write_byte(255) // b
write_byte(40) // alpha
message_end()
}
// Sound
emit_sound(id, CHAN_ITEM, ActivateSound, VOL_NORM, ATTN_NORM, 0, PITCH_NORM)
}
public client_command(id)
{
if(!is_alive(id))
return PLUGIN_CONTINUE
static cmd_list[][] = { "buyequip", "autobuy", "cl_autobuy", "cl_rebuy" }
static command[16], i; read_argv(0, command, 15)
for(i = 0; i < sizeof cmd_list; i++) if(equal(command, cmd_list[i]))
return PLUGIN_HANDLED
if(equal(command, "client_buy_open") || equal(command, "buy"))
{
static msg_buyclose; if(!msg_buyclose) msg_buyclose = get_user_msgid("BuyClose")
message_begin(MSG_ONE_UNRELIABLE, msg_buyclose, _, id), message_end()
CMD_Buy(id)
return PLUGIN_HANDLED
}
return PLUGIN_CONTINUE
}
public CMD_Buy(id)
{
if(!is_alive(id))
return
if(zp_get_user_zombie(id))
return
if(!g_GameStart)
{
client_print(id, print_center, "%L", GAME_LANG, "NOTICE_GAMENOTSTART")
return
}
if(!Get_BitVar(g_CanStun, id))
return
UnSet_BitVar(g_CanStun, id)
// Effect
if(!zp_get_user_nightvision(id))
{
// Effect
static g_MsgScreenFade;
if(!g_MsgScreenFade) g_MsgScreenFade = get_user_msgid("ScreenFade")
message_begin(MSG_ONE_UNRELIABLE, g_MsgScreenFade, _, id)
write_short(FixedUnsigned16(0.5, 1<<12)) // duration
write_short(FixedUnsigned16(0.5, 1<<12)) // hold time
write_short(0x0000) // fade type
write_byte(255) // r
write_byte(255) // g
write_byte(255) // b
write_byte(40) // alpha
message_end()
}
static Float:Origin[3]; pev(id, pev_origin, Origin)
message_begin(MSG_BROADCAST, SVC_TEMPENTITY)
write_byte(TE_EXPLOSION)
engfunc(EngFunc_WriteCoord, Origin[0])
engfunc(EngFunc_WriteCoord, Origin[1])
engfunc(EngFunc_WriteCoord, Origin[2])
write_short(g_Stun_EffectID)
write_byte(20)
write_byte(30)
write_byte(14)
message_end()
engfunc(EngFunc_MessageBegin, MSG_BROADCAST, SVC_TEMPENTITY, Origin)
write_byte(TE_BEAMCYLINDER)
engfunc(EngFunc_WriteCoord, Origin[0])
engfunc(EngFunc_WriteCoord, Origin[1])
engfunc(EngFunc_WriteCoord, Origin[2])
engfunc(EngFunc_WriteCoord, Origin[0])
engfunc(EngFunc_WriteCoord, Origin[1])
engfunc(EngFunc_WriteCoord, Origin[2] + get_pcvar_num(g_Cvar_StunRadius))
write_short(g_ShockWave_SprID)
write_byte(0) // Start Frame
write_byte(20) // Framerate
write_byte(4) // Live Time
write_byte(25) // Width
write_byte(10) // Noise
write_byte(0) // R
write_byte(255) // G
write_byte(255) // B
write_byte(255) // Bright
write_byte(9) // Speed
message_end()
engfunc(EngFunc_MessageBegin, MSG_BROADCAST, SVC_TEMPENTITY, Origin)
write_byte(TE_BEAMCYLINDER)
engfunc(EngFunc_WriteCoord, Origin[0])
engfunc(EngFunc_WriteCoord, Origin[1])
engfunc(EngFunc_WriteCoord, Origin[2])
engfunc(EngFunc_WriteCoord, Origin[0])
engfunc(EngFunc_WriteCoord, Origin[1])
engfunc(EngFunc_WriteCoord, Origin[2] + get_pcvar_num(g_Cvar_StunRadius))
write_short(g_ShockWave_SprID)
write_byte(0) // Start Frame
write_byte(10) // Framerate
write_byte(4) // Live Time
write_byte(20) // Width
write_byte(20) // Noise
write_byte(0) // R
write_byte(255) // G
write_byte(0) // B
write_byte(150) // Bright
write_byte(9) // Speed
message_end()
// Find
static Victim; Victim = -1
while((Victim = find_ent_in_sphere(Victim, Origin, get_pcvar_float(g_Cvar_StunRadius))) != 0)
{
if(Victim == id)
continue
if(!is_alive(Victim))
continue
if(!zp_get_user_zombie(Victim))
continue
pev(Victim, pev_maxspeed, g_MySpeed[Victim])
Set_BitVar(g_Stunning, Victim)
set_user_maxspeed(Victim, 0.01)
emit_sound(Victim, CHAN_ITEM, StunSound, VOL_NORM, ATTN_NORM, 0, PITCH_NORM)
//zevo_playerattachment(Victim, StunSprite, get_pcvar_float(g_Cvar_StunTime), 1.0, 10.0)
remove_task(Victim+TASK_STUN)
set_task(get_pcvar_float(g_Cvar_StunTime), "Remove_Stun", Victim+TASK_STUN)
}
// Sound
emit_sound(id, CHAN_ITEM, ActivateSound, VOL_NORM, ATTN_NORM, 0, PITCH_NORM)
}
public Remove_Stun(id)
{
id -= TASK_STUN
if(!is_alive(id))
return
if(!zp_get_user_zombie(id))
return
if(!Get_BitVar(g_Stunning, id))
return
UnSet_BitVar(g_Stunning, id)
set_pev(id, pev_maxspeed, g_MySpeed[id])
remove_task(id+TASK_STUN)
}
/* ===============================
------------- SAFETY -------------
=================================*/
public Register_SafetyFunc()
{
register_event("CurWeapon", "Safety_CurWeapon", "be", "1=1")
RegisterHam(Ham_Spawn, "player", "fw_Safety_Spawn_Post", 1)
RegisterHam(Ham_Killed, "player", "fw_Safety_Killed_Post", 1)
}
public Register_SafetyFuncBot(id)
{
RegisterHamFromEntity(Ham_Spawn, id, "fw_Safety_Spawn_Post", 1)
RegisterHamFromEntity(Ham_Killed, id, "fw_Safety_Killed_Post", 1)
}
public Safety_Connected(id)
{
Set_BitVar(g_IsConnected, id)
UnSet_BitVar(g_IsAlive, id)
g_PlayerWeapon[id] = 0
}
public Safety_Disconnected(id)
{
UnSet_BitVar(g_IsConnected, id)
UnSet_BitVar(g_IsAlive, id)
g_PlayerWeapon[id] = 0
}
public Safety_CurWeapon(id)
{
if(!is_alive(id))
return
static CSW; CSW = read_data(2)
if(g_PlayerWeapon[id] != CSW) g_PlayerWeapon[id] = CSW
}
public fw_Safety_Spawn_Post(id)
{
if(!is_user_alive(id))
return
Set_BitVar(g_IsAlive, id)
}
public fw_Safety_Killed_Post(id)
{
UnSet_BitVar(g_IsAlive, id)
}
public is_connected(id)
{
if(!(1 <= id <= 32))
return 0
if(!Get_BitVar(g_IsConnected, id))
return 0
return 1
}
public is_alive(id)
{
if(!is_connected(id))
return 0
if(!Get_BitVar(g_IsAlive, id))
return 0
return 1
}
public get_player_weapon(id)
{
if(!is_alive(id))
return 0
return g_PlayerWeapon[id]
}
stock PlaySound(id, const sound[])
{
if(equal(sound[strlen(sound)-4], ".mp3")) client_cmd(id, "mp3 play ^"sound/%s^"", sound)
else client_cmd(id, "spk ^"%s^"", sound)
}
stock SetFov(id, num = 90)
{
static g_MsgFov;
if(!g_MsgFov) g_MsgFov = get_user_msgid("SetFOV")
message_begin(MSG_ONE_UNRELIABLE, g_MsgFov, {0,0,0}, id)
write_byte(num)
message_end()
}
stock FixedUnsigned16(Float:flValue, iScale)
{
new iOutput;
iOutput = floatround(flValue * iScale);
if ( iOutput < 0 )
iOutput = 0;
if ( iOutput > 0xFFFF )
iOutput = 0xFFFF;
return iOutput;
}| Link: | |
| Linklerini gizle |
-
ScoolBa
Konu Sahibi - Mesajlar: 103
- Kayıt: Cmt Şub 16, 2019 9:45 pm
human ability
@Sho.oTeR
Ben Yaptım Yetenekler Felan Geliyor Fakat Deadly Shotu Kullanıyorum 5 Saniye Headshot Vurmam Gerekirken Map Değişene Kadar Herkeze Head Shot Atiyorm Şuna Bi Baksan
Ben Yaptım Yetenekler Felan Geliyor Fakat Deadly Shotu Kullanıyorum 5 Saniye Headshot Vurmam Gerekirken Map Değişene Kadar Herkeze Head Shot Atiyorm Şuna Bi Baksan
Bu mesaja eklenen dosyaları görüntülemek için gerekli izinlere sahip değilsiniz.
| Link: | |
| Linklerini gizle |
human ability
Şunu bı denermısın
Kod: Tümünü seç
#include <amxmodx>
#include <fun>
#include <engine>
#include <fakemeta>
#include <hamsandwich>
#include <zombieplague>
#define PLUGIN "[ZEVO] Addon: Human Ability"
#define VERSION "1.0"
#define AUTHOR "Dias Pendragon Leon"
#define GAME_LANG LANG_SERVER
#define LANG_FILE "cso_humanability.txt"
#define TASK_STUN 546464
new const SprintSprite[] = "sprites/zombie_evolution/head_speedup.spr"
new const DeadlyShotSprite[] = "sprites/zombie_evolution/deadlyshot.spr"
new const DeadlyShot2Sprite[] = "sprites/zombie_evolution/deadlyshot2.spr"
new const StunSprite[] = "sprites/zombie_evolution/head_stun.spr"
new const StunEffect[] = "sprites/zombie_evolution/stun_activate.spr"
new const ActivateSound[] = "zombie_evolution/action/activate.wav"
new const StunSound[] = "zombie_evolution/action/player_stun.wav"
new g_SprintPercent[33], g_Sprinting, g_CanDeadlyShot, g_DeadlyShoting, g_DeadlyShotTime[33], g_CanStun
new g_HumanHud, g_PlayerKey[33][2], Float:CheckTime[33], Float:CheckTime2[33], g_Stunning, Float:g_MySpeed[33]
new g_Cvar_SprintPercent, g_Cvar_DeadlyShotTime, g_Cvar_SprintSpeed, g_Cvar_StunRadius, g_Cvar_StunTime
new g_BuyZone, g_ShockWave_SprID, g_Stun_EffectID
#define TIME_INTERVAL 0.15
#define TASK_CHECKTIME 3125365
#define TASK_AUTOSKILL 18710
// MACROS
#define Get_BitVar(%1,%2) (%1 & (1 << (%2 & 31)))
#define Set_BitVar(%1,%2) %1 |= (1 << (%2 & 31))
#define UnSet_BitVar(%1,%2) %1 &= ~(1 << (%2 & 31))
// Safety
new g_HamBot
new g_IsConnected, g_IsAlive, g_PlayerWeapon[33]
public plugin_init()
{
register_plugin(PLUGIN, VERSION, AUTHOR)
register_dictionary(LANG_FILE)
Register_SafetyFunc()
register_impulse(201, "CMD_Spray")
g_HumanHud = CreateHudSyncObj(3)
RegisterHam(Ham_TraceAttack, "player", "fw_TraceAttack")
RegisterHam(Ham_Spawn , "player", "fw_PlayerSpawn_Post", 1)
// Cvars
g_Cvar_SprintPercent = register_cvar("zevo_sprint_percent", "100")
g_Cvar_SprintSpeed = register_cvar("zevo_sprint_speed", "350.0")
g_Cvar_DeadlyShotTime = register_cvar("zevo_deadlyshot_time", "7.0")
g_Cvar_StunRadius = register_cvar("zevo_stun_radius", "240.0")
g_Cvar_StunTime = register_cvar("zevo_stun_time", "5.0")
}
public plugin_precache()
{
precache_model(SprintSprite)
precache_model(DeadlyShotSprite)
precache_model(DeadlyShot2Sprite)
precache_model(StunSprite)
precache_sound(ActivateSound)
precache_sound(StunSound)
g_Stun_EffectID = precache_model(StunEffect)
g_ShockWave_SprID = precache_model("sprites/shockwave.spr")
// Buyzone
g_BuyZone = engfunc(EngFunc_CreateNamedEntity, engfunc(EngFunc_AllocString, "func_buyzone"))
dllfunc(DLLFunc_Spawn, g_BuyZone)
engfunc(EngFunc_SetSize, g_BuyZone, {-8192.0, -8192.0, -8192.0}, {-8191.0, -8191.0, -8191.0})
}
public client_putinserver(id)
{
Safety_Connected(id)
if(!g_HamBot && is_user_bot(id))
{
g_HamBot = 1
set_task(0.1, "Register_HamBot", id)
}
}
public Register_HamBot(id)
{
Register_SafetyFuncBot(id)
RegisterHamFromEntity(Ham_TraceAttack, id, "fw_TraceAttack")
}
public client_disconnected(id)
{
Safety_Disconnected(id)
}
public fw_TraceAttack(victim, attacker, Float:damage, Float:direction[3], tracehandle, damage_type,id)
{
if(!is_connected(attacker))
return HAM_IGNORED
if(Get_BitVar(g_DeadlyShoting, attacker))
set_tr2(tracehandle, TR_iHitgroup, HIT_HEAD)
set_task(5.0,"kapat",id)
return HAM_IGNORED
}
public kapat(id)
{
remove_task(id)
}
public fw_PlayerSpawn_Post(id, Zombie)
{
if(Zombie) return
remove_task(id+TASK_STUN)
remove_task(id+TASK_AUTOSKILL)
// Sprint
UnSet_BitVar(g_Sprinting, id)
g_SprintPercent[id] = get_pcvar_num(g_Cvar_SprintPercent)
// Deadly Shot
Set_BitVar(g_CanDeadlyShot, id)
UnSet_BitVar(g_DeadlyShoting, id)
g_DeadlyShotTime[id] = get_pcvar_num(g_Cvar_DeadlyShotTime)
// Stun
Set_BitVar(g_CanStun, id)
if(is_user_bot(id))
{
remove_task(id+TASK_AUTOSKILL)
if(is_user_bot(id)) set_task(random_float(30.0, 60.0), "Bot_AutoSkill", id+TASK_AUTOSKILL)
}
}
public Bot_AutoSkill(id)
{
id -= TASK_AUTOSKILL
if(!is_alive(id))
return
if(!is_user_bot(id))
{
remove_task(id+TASK_AUTOSKILL)
return
}
if(zp_get_user_zombie(id))
return
if(Get_BitVar(g_CanDeadlyShot, id)) CMD_Spray(id)
else if(Get_BitVar(g_CanStun, id)) CMD_Buy(id)
if(is_user_bot(id)) set_task(random_float(10.0, 20.0), "Bot_AutoSkill", id+TASK_AUTOSKILL)
}
public zevo_become_zombie(id)
{
remove_task(id+TASK_STUN)
remove_task(id+TASK_AUTOSKILL)
UnSet_BitVar(g_Sprinting, id)
UnSet_BitVar(g_CanDeadlyShot, id)
UnSet_BitVar(g_DeadlyShoting, id)
UnSet_BitVar(g_CanStun, id)
UnSet_BitVar(g_Stunning, id)
set_hudmessage(0, 255, 0, -1.0, 0.10, 0, 0.25, 0.25)
ShowSyncHudMsg(id, g_HumanHud, "")
// SetFov(id)
}
public zevo_runningtime2(id, Time)
{
if(!is_alive(id))
return
if(zp_get_user_zombie(id))
return
if(Get_BitVar(g_DeadlyShoting, id))
{
if(g_DeadlyShotTime[id] > 0) g_DeadlyShotTime[id]--
else {
g_DeadlyShotTime[id] = 0
UnSet_BitVar(g_DeadlyShoting, id)
if(!zp_get_user_nightvision(id) && !Get_BitVar(g_Sprinting, id))
{
// Effect
static g_MsgScreenFade;
if(!g_MsgScreenFade) g_MsgScreenFade = get_user_msgid("ScreenFade")
// Reset
message_begin(MSG_ONE_UNRELIABLE, g_MsgScreenFade, _, id)
write_short(0) // duration
write_short(0) // hold time
write_short(0x0000) // fade type
write_byte(0) // r
write_byte(0) // g
write_byte(0) // b
write_byte(0) // alpha
message_end()
}
}
}
Load_Hud(id, 2.0)
}
public Load_Hud(id, Float:Time)
{
// Hud
static Skill1[64], Skill2[64], Skill3[64]
// Skill 1
if(g_SprintPercent[id] >= 100) formatex(Skill1, 63, " [W] + [W] : %L (%i%%)", GAME_LANG, "HUMAN_SKILL_SPRINT", g_SprintPercent[id])
else formatex(Skill1, 63, "[W] + [W] : %L (%i%%)", GAME_LANG, "HUMAN_SKILL_SPRINT", g_SprintPercent[id])
// Skill 2
if(Get_BitVar(g_DeadlyShoting, id)) formatex(Skill2, 63, " [T] : %L (%i)", GAME_LANG, "HUMAN_SKILL_DEADLYSHOT", g_DeadlyShotTime[id])
else {
if(Get_BitVar(g_CanDeadlyShot, id)) formatex(Skill2, 63, " [T] : %L", GAME_LANG, "HUMAN_SKILL_DEADLYSHOT")
else formatex(Skill2, 63, " [T] : %L (X)", GAME_LANG, "HUMAN_SKILL_DEADLYSHOT")
}
// Skill 3
if(Get_BitVar(g_CanStun, id)) formatex(Skill3, 63, " [B] : %L", GAME_LANG, "HUMAN_SKILL_STUN")
else formatex(Skill3, 63, " [B] : %L (X)", GAME_LANG, "HUMAN_SKILL_STUN")
set_hudmessage(0, 255, 0, -1.0, 0.10, 0, Time, Time)
ShowSyncHudMsg(id, g_HumanHud, "[Insan Kabiliyet]^n^n%s^n%s^n%s", Skill1, Skill2, Skill3)
}
public client_PreThink(id)
{
if(!is_alive(id))
return
if(zp_get_user_zombie(id))
return
static CurButton; CurButton = pev(id, pev_button)
static OldButton; OldButton = pev(id, pev_oldbuttons)
if((CurButton & IN_FORWARD))
{
if(Get_BitVar(g_Sprinting, id) && (get_gametime() - 0.1 > CheckTime[id]))
{
if(g_SprintPercent[id] <= 0)
{
Deactivate_Sprint(id)
return
}
g_SprintPercent[id]--
Load_Hud(id, 0.2)
CheckTime[id] = get_gametime()
}
if(Get_BitVar(g_Sprinting, id) && (get_gametime() - 1.0 > CheckTime2[id]))
{
if(g_SprintPercent[id] <= 0)
return
//zevo_playerattachment(id, SprintSprite, 1.25, 0.25, 0.0)
CheckTime2[id] = get_gametime()
}
if(OldButton & IN_FORWARD)
return
if(!task_exists(id+TASK_CHECKTIME))
{
g_PlayerKey[id][0] = 'w'
remove_task(id+TASK_CHECKTIME)
set_task(TIME_INTERVAL, "Recheck_Key", id+TASK_CHECKTIME)
} else {
g_PlayerKey[id][1] = 'w'
}
} else {
if(OldButton & IN_FORWARD)
{
Deactivate_Sprint(id)
}
return
}
if(equali(g_PlayerKey[id], "ww"))
{
Reset_Key(id)
Activate_Sprint(id)
}
return
}
public client_PostThink(id)
{
if(!is_alive(id))
return
if(zp_get_user_zombie(id))
{
if(Get_BitVar(g_Stunning, id) && pev(id, pev_maxspeed) != 0.01)
set_user_maxspeed(id, 0.01)
return
}
dllfunc(DLLFunc_Touch, g_BuyZone, id)
}
public Recheck_Key(id)
{
id -= TASK_CHECKTIME
if(!is_user_connected(id))
return
Reset_Key(id)
}
public Reset_Key(id)
{
g_PlayerKey[id][0] = 0
g_PlayerKey[id][1] = 0
}
public Activate_Sprint(id)
{
if(g_SprintPercent[id] <= 0)
return
Set_BitVar(g_Sprinting, id)
if(!zp_get_user_nightvision(id))
{
// Effect
static g_MsgScreenFade;
if(!g_MsgScreenFade) g_MsgScreenFade = get_user_msgid("ScreenFade")
message_begin(MSG_ONE_UNRELIABLE, g_MsgScreenFade, _, id)
write_short(0) // duration
write_short(0) // hold time
write_short(0x0004) // fade type
write_byte(255) // r
write_byte(255) // g
write_byte(255) // b
write_byte(40) // alpha
message_end()
}
SetFov(id, 105)
// Set
set_user_maxspeed(id, get_pcvar_float(g_Cvar_SprintSpeed))
PlaySound(id, ActivateSound)
}
public Deactivate_Sprint(id)
{
UnSet_BitVar(g_Sprinting, id)
if(!zp_get_user_nightvision(id) && !Get_BitVar(g_Sprinting, id))
{
// Effect
static g_MsgScreenFade;
if(!g_MsgScreenFade) g_MsgScreenFade = get_user_msgid("ScreenFade")
// Reset
message_begin(MSG_ONE_UNRELIABLE, g_MsgScreenFade, _, id)
write_short(0) // duration
write_short(0) // hold time
write_short(0x0000) // fade type
write_byte(0) // r
write_byte(0) // g
write_byte(0) // b
write_byte(0) // alpha
message_end()
}
SetFov(id)
set_user_maxspeed(id,250.0)
Load_Hud(id, 1.0)
}
public CMD_Spray(id)
{
if(!is_alive(id))
return
if(zp_get_user_zombie(id))
return
if(!Get_BitVar(g_CanDeadlyShot, id))
return
UnSet_BitVar(g_CanDeadlyShot, id)
Set_BitVar(g_DeadlyShoting, id)
// Effect
//zevo_playerattachment(id, DeadlyShotSprite, float(g_DeadlyShotTime[id]), 0.25, 0.0)
//zevo_playerattachment(id, DeadlyShot2Sprite, float(g_DeadlyShotTime[id]), 0.75, 15.0)
if(!zp_get_user_nightvision(id))
{
// Effect
static g_MsgScreenFade;
if(!g_MsgScreenFade) g_MsgScreenFade = get_user_msgid("ScreenFade")
message_begin(MSG_ONE_UNRELIABLE, g_MsgScreenFade, _, id)
write_short(0) // duration
write_short(0) // hold time
write_short(0x0004) // fade type
write_byte(255) // r
write_byte(255) // g
write_byte(255) // b
write_byte(40) // alpha
message_end()
}
// Sound
emit_sound(id, CHAN_ITEM, ActivateSound, VOL_NORM, ATTN_NORM, 0, PITCH_NORM)
}
public client_command(id)
{
if(!is_alive(id))
return PLUGIN_CONTINUE
static cmd_list[][] = { "buyequip", "autobuy", "cl_autobuy", "cl_rebuy" }
static command[16], i; read_argv(0, command, 15)
for(i = 0; i < sizeof cmd_list; i++) if(equal(command, cmd_list[i]))
return PLUGIN_HANDLED
if(equal(command, "client_buy_open") || equal(command, "buy"))
{
static msg_buyclose; if(!msg_buyclose) msg_buyclose = get_user_msgid("BuyClose")
message_begin(MSG_ONE_UNRELIABLE, msg_buyclose, _, id), message_end()
CMD_Buy(id)
return PLUGIN_HANDLED
}
return PLUGIN_CONTINUE
}
public CMD_Buy(id)
{
if(!is_alive(id))
return
if(zp_get_user_zombie(id))
return
if(!Get_BitVar(g_CanStun, id))
return
UnSet_BitVar(g_CanStun, id)
// Effect
if(!zp_get_user_nightvision(id))
{
// Effect
static g_MsgScreenFade;
if(!g_MsgScreenFade) g_MsgScreenFade = get_user_msgid("ScreenFade")
message_begin(MSG_ONE_UNRELIABLE, g_MsgScreenFade, _, id)
write_short(FixedUnsigned16(0.5, 1<<12)) // duration
write_short(FixedUnsigned16(0.5, 1<<12)) // hold time
write_short(0x0000) // fade type
write_byte(255) // r
write_byte(255) // g
write_byte(255) // b
write_byte(40) // alpha
message_end()
}
static Float:Origin[3]; pev(id, pev_origin, Origin)
message_begin(MSG_BROADCAST, SVC_TEMPENTITY)
write_byte(TE_EXPLOSION)
engfunc(EngFunc_WriteCoord, Origin[0])
engfunc(EngFunc_WriteCoord, Origin[1])
engfunc(EngFunc_WriteCoord, Origin[2])
write_short(g_Stun_EffectID)
write_byte(20)
write_byte(30)
write_byte(14)
message_end()
engfunc(EngFunc_MessageBegin, MSG_BROADCAST, SVC_TEMPENTITY, Origin)
write_byte(TE_BEAMCYLINDER)
engfunc(EngFunc_WriteCoord, Origin[0])
engfunc(EngFunc_WriteCoord, Origin[1])
engfunc(EngFunc_WriteCoord, Origin[2])
engfunc(EngFunc_WriteCoord, Origin[0])
engfunc(EngFunc_WriteCoord, Origin[1])
engfunc(EngFunc_WriteCoord, Origin[2] + get_pcvar_num(g_Cvar_StunRadius))
write_short(g_ShockWave_SprID)
write_byte(0) // Start Frame
write_byte(20) // Framerate
write_byte(4) // Live Time
write_byte(25) // Width
write_byte(10) // Noise
write_byte(0) // R
write_byte(255) // G
write_byte(255) // B
write_byte(255) // Bright
write_byte(9) // Speed
message_end()
engfunc(EngFunc_MessageBegin, MSG_BROADCAST, SVC_TEMPENTITY, Origin)
write_byte(TE_BEAMCYLINDER)
engfunc(EngFunc_WriteCoord, Origin[0])
engfunc(EngFunc_WriteCoord, Origin[1])
engfunc(EngFunc_WriteCoord, Origin[2])
engfunc(EngFunc_WriteCoord, Origin[0])
engfunc(EngFunc_WriteCoord, Origin[1])
engfunc(EngFunc_WriteCoord, Origin[2] + get_pcvar_num(g_Cvar_StunRadius))
write_short(g_ShockWave_SprID)
write_byte(0) // Start Frame
write_byte(10) // Framerate
write_byte(4) // Live Time
write_byte(20) // Width
write_byte(20) // Noise
write_byte(0) // R
write_byte(255) // G
write_byte(0) // B
write_byte(150) // Bright
write_byte(9) // Speed
message_end()
// Find
static Victim; Victim = -1
while((Victim = find_ent_in_sphere(Victim, Origin, get_pcvar_float(g_Cvar_StunRadius))) != 0)
{
if(Victim == id)
continue
if(!is_alive(Victim))
continue
if(!zp_get_user_zombie(Victim))
continue
pev(Victim, pev_maxspeed, g_MySpeed[Victim])
Set_BitVar(g_Stunning, Victim)
set_user_maxspeed(Victim, 0.01)
emit_sound(Victim, CHAN_ITEM, StunSound, VOL_NORM, ATTN_NORM, 0, PITCH_NORM)
//zevo_playerattachment(Victim, StunSprite, get_pcvar_float(g_Cvar_StunTime), 1.0, 10.0)
remove_task(Victim+TASK_STUN)
set_task(get_pcvar_float(g_Cvar_StunTime), "Remove_Stun", Victim+TASK_STUN)
}
// Sound
emit_sound(id, CHAN_ITEM, ActivateSound, VOL_NORM, ATTN_NORM, 0, PITCH_NORM)
}
public Remove_Stun(id)
{
id -= TASK_STUN
if(!is_alive(id))
return
if(!zp_get_user_zombie(id))
return
if(!Get_BitVar(g_Stunning, id))
return
UnSet_BitVar(g_Stunning, id)
set_pev(id, pev_maxspeed, g_MySpeed[id])
remove_task(id+TASK_STUN)
}
/* ===============================
------------- SAFETY -------------
=================================*/
public Register_SafetyFunc()
{
register_event("CurWeapon", "Safety_CurWeapon", "be", "1=1")
RegisterHam(Ham_Spawn, "player", "fw_Safety_Spawn_Post", 1)
RegisterHam(Ham_Killed, "player", "fw_Safety_Killed_Post", 1)
}
public Register_SafetyFuncBot(id)
{
RegisterHamFromEntity(Ham_Spawn, id, "fw_Safety_Spawn_Post", 1)
RegisterHamFromEntity(Ham_Killed, id, "fw_Safety_Killed_Post", 1)
}
public Safety_Connected(id)
{
Set_BitVar(g_IsConnected, id)
UnSet_BitVar(g_IsAlive, id)
g_PlayerWeapon[id] = 0
}
public Safety_Disconnected(id)
{
UnSet_BitVar(g_IsConnected, id)
UnSet_BitVar(g_IsAlive, id)
g_PlayerWeapon[id] = 0
}
public Safety_CurWeapon(id)
{
if(!is_alive(id))
return
static CSW; CSW = read_data(2)
if(g_PlayerWeapon[id] != CSW) g_PlayerWeapon[id] = CSW
}
public fw_Safety_Spawn_Post(id)
{
if(!is_user_alive(id))
return
Set_BitVar(g_IsAlive, id)
}
public fw_Safety_Killed_Post(id)
{
UnSet_BitVar(g_IsAlive, id)
}
public is_connected(id)
{
if(!(1 <= id <= 32))
return 0
if(!Get_BitVar(g_IsConnected, id))
return 0
return 1
}
public is_alive(id)
{
if(!is_connected(id))
return 0
if(!Get_BitVar(g_IsAlive, id))
return 0
return 1
}
public get_player_weapon(id)
{
if(!is_alive(id))
return 0
return g_PlayerWeapon[id]
}
stock PlaySound(id, const sound[])
{
if(equal(sound[strlen(sound)-4], ".mp3")) client_cmd(id, "mp3 play ^"sound/%s^"", sound)
else client_cmd(id, "spk ^"%s^"", sound)
}
stock SetFov(id, num = 90)
{
static g_MsgFov;
if(!g_MsgFov) g_MsgFov = get_user_msgid("SetFOV")
message_begin(MSG_ONE_UNRELIABLE, g_MsgFov, {0,0,0}, id)
write_byte(num)
message_end()
}
stock FixedUnsigned16(Float:flValue, iScale)
{
new iOutput;
iOutput = floatround(flValue * iScale);
if ( iOutput < 0 )
iOutput = 0;
if ( iOutput > 0xFFFF )
iOutput = 0xFFFF;
return iOutput;
}| Link: | |
| Linklerini gizle |
-
oguzbey2734
- Mesajlar: 16
- Kayıt: Sal Ağu 20, 2019 11:27 am
-
ScoolBa
Konu Sahibi - Mesajlar: 103
- Kayıt: Cmt Şub 16, 2019 9:45 pm
-
ShooTeR
- Mesajlar: 4497
- Kayıt: Çrş Ağu 16, 2017 10:35 pm
- Server Ip/DNS: CSXX.CSDURAGI.COM
- Clan İsmi: NoMercy
human ability
buyuk ihtimal zevo_playerattachment komutundan kaynaklı yerine kullanabileceğimiz bir komut gelmiyor aklıma buyuk ihtimal o koduda deaktif bırakınca public tam olarak çalışmıyor.ScoolBa yazdı: Pzr Eyl 22, 2019 12:40 am @Sho.oTeR
Ben Yaptım Yetenekler Felan Geliyor Fakat Deadly Shotu Kullanıyorum 5 Saniye Headshot Vurmam Gerekirken Map Değişene Kadar Herkeze Head Shot Atiyorm Şuna Bi Baksan
| Link: | |
| Linklerini gizle |