Участник
Пользователь
- Сообщения
- 552
- Реакции
- 49
- Предупреждения
- 2
- Помог
- 4 раз(а)
- Ошибка
-
L 09/25/2022 - 04:45:21: [ZE EVO] Invalid Player (29)
L 09/25/2022 - 04:45:21: [AMXX] Displaying debug trace (plugin "zp_undertaker.amxx", version "1.0")
L 09/25/2022 - 04:45:21: [AMXX] Run time error 10: native error (native "zp_get_user_zombie")
L 09/25/2022 - 04:45:21: [AMXX] [0] zp_undertaker.sma::fw_PlayerPostThink (line 242)
- ОС
- Linux
- Amx Mod X
-
AMX Mod X 1.9.0.5249 (http://www.amxmodx.org)
Authors:
David "BAILOPAN" Anderson, Pavol "PM OnoTo" Marko
Felix "SniperBeamer" Geyer, Jonny "Got His Gun" Bergstrom
Lukasz "SidLuke" Wlasinski, Christian "Basic-Master" Hammacher
Borja "faluco" Ferrer, Scott "DS" Ehlert
Compiled: Jun 19 2019 13:31:53
Built from: https://github.com/alliedmodders/amxmodx/commit/6cecb34
Build ID: 5249:6cecb34
Core mode: JIT+ASM32
- Билд
-
Protocol version 48
Exe version 1.1.2.7/Stdio (cstrike)
ReHLDS version: 3.11.0.779-dev
Build date: 17:33:11 Aug 24 2022 (3056)
Build from: https://github.com/dreamstalker/rehlds/commit/d76b06d
- ReGamedll
-
game version
ReGameDLL version: 5.21.0.556-dev
Build date: 08:43:58 Jul 22 2022
Build from: https://github.com/s1lentq/ReGameDLL_CS/commit/1081301
- Версия Metamod
-
Metamod v1.21p37 2013/05/30 (5:13)
by Will Day
http://www.metamod.org/
Patch: Metamod-P (mm-p) v37
by Jussi Kivilinna
http://metamod-p.sourceforge.net/
compiled: May 30 2013, 11:41:16 EET (optimized)
- Список метамодулей
-
Currently loaded plugins:
description stat pend file vers src load unlod
[ 1] SafeNameAndChat RUN - SafeNameAndChat. v1.1 ini ANY ANY
[ 2] Reunion RUN - reunion_mm_i386. v0.1.92d ini Start Never
[ 3] ReAuthCheck RUN - reauthcheck_mm_i v0.1.6 ini Start Never
[ 4] VoiceTranscoder RUN - VoiceTranscoder. v2017RC4 ini ANY ANY
[ 5] AMX Mod X RUN - amxmodx_mm_i386. v1.9.0.5 ini Start ANY
[ 6] Rechecker RUN - rechecker_mm_i38 v2.5 ini Chlvl ANY
[ 7] WHBlocker RUN - whblocker_mm_i38 v1.5.696 ini Chlvl ANY
[ 8] ReSemiclip RUN - resemiclip_mm_i3 v2.3.9 ini Chlvl ANY
[ 9] Ultimate Unprec RUN - unprecacher_i386 vBeta 2. ini Chlvl Chlvl
[10] YaPB RUN - yapb.so v4.2.671 ini Chlvl ANY
[11] CStrike RUN - cstrike_amxx_i38 v1.9.0.5 pl5 ANY ANY
[12] CSX RUN - csx_amxx_i386.so v1.9.0.5 pl5 ANY ANY
[13] Fun RUN - fun_amxx_i386.so v1.9.0.5 pl5 ANY ANY
[14] FakeMeta RUN - fakemeta_amxx_i3 v1.9.0.5 pl5 ANY ANY
[15] Ham Sandwich RUN - hamsandwich_amxx v1.9.0.5 pl5 ANY ANY
[16] GeoIP RUN - geoip_amxx_i386. v1.9.0.5 pl5 ANY ANY
[17] MySQL RUN - mysql_amxx_i386. v1.9.0.5 pl5 ANY ANY
[18] SQLite RUN - sqlite_amxx_i386 v1.9.0.5 pl5 ANY ANY
[19] Engine RUN - engine_amxx_i386 v1.9.0.5 pl5 ANY ANY
[20] ReAPI RUN - reapi_amxx_i386. v5.21.0. pl5 ANY Never
[21] ReAimDetector RUN - reaimdetector_am v0.2.2 pl5 ANY Never
21 plugins, 21 running
- Список плагинов
-
Currently loaded plugins:
name version author file status
[ 1] Map Manager 2.5.60 Mistrick mapmanager.amxx running
[ 2] mute 1.0 Aziz xman2030_mute.a running
[ 3] Admin Base 1.9.0.5249 AMXX Dev Team admin.amxx running
[ 4] Admin Commands 1.9.0.5249 AMXX Dev Team admincmd.amxx running
[ 5] Admin Help 1.9.0.5249 AMXX Dev Team adminhelp.amxx running
[ 6] Slots Reservation 1.9.0.5249 AMXX Dev Team adminslots.amxx running
[ 7] Multi-Lingual System 1.9.0.5249 AMXX Dev Team multilingual.am running
[ 8] Commands Menu 1.9.0.5249 AMXX Dev Team cmdmenu.amxx running
[ 9] Players Menu 1.9.0.5249 AMXX Dev Team plmenu.amxx running
[ 10] Teleport Menu 1.9.0.5249 AMXX Dev Team telemenu.amxx running
[ 11] Maps Menu 1.9.0.5249 AMXX Dev Team mapsmenu.amxx running
[ 12] Plugin Menu 1.9.0.5249 AMXX Dev Team pluginmenu.amxx running
[ 13] Admin Chat 1.9.0.5249 AMXX Dev Team adminchat.amxx running
[ 14] Anti Flood 1.9.0.5249 AMXX Dev Team antiflood.amxx running
[ 15] Admin Votes 1.9.0.5249 AMXX Dev Team adminvote.amxx running
[ 16] Pause Plugins 1.9.0.5249 AMXX Dev Team pausecfg.amxx running
[ 17] Stats Configuration 1.9.0.5249 AMXX Dev Team statscfg.amxx running
[ 18] Ultimate Gore 1.6 JTP10181 amx_gore_ultima running
[ 19] TimeLeft 1.9.0.5249 AMXX Dev Team timeleft.amxx running
[ 20] Advanced Weapon Tracer 1.3.0 ConnorMcLeod advanced_weapon running
[ 21] NextMap 1.9.0.5249 AMXX Dev Team nextmap.amxx stopped
[ 22] Game Namer 1.1 NeuroToxin gamenamechanger running
[ 23] Precache Management 1.0.0 ConnorMcLeod precache_manage stopped
[ 24] Advert Messages 1.2 neygomon adverts.amxx running
[ 25] Fix Remove Entity When zm zm zp_entityfix.am paused
[ 26] ScreenMaker 1.1 neygomon screen_maker.am running
[ 27] fb_forwards 0.1.8 Mazdan & Neugomo fb_forwards.amx running
[ 28] FreshBans 1.4.0b kanagava fresh_bans_1.4. running
[ 29] Menus Front-End 1.5 neugomon menufront_end.a running
[ 30] AMXX Gag 1.4.9 xPaw & Exolent amx_gag.amxx running
[ 31] motd 1.1 L@NPOC@N motd.amxx running
[ 32] unknown unknown unknown warnings.amxx bad load
[ 33] Anti Reklama 1.1 MarcaD anti_reklama.am running
[ 34] unknown unknown unknown health_nade.amx bad load
[ 35] SpecList 1.2a FatalisDK speclist_rus.am running
[ 36] DemoRecoder 1.2 neygomon demorecoder.amx running
[ 37] AFK Manager 1.2 Xramer afk_manager.amx paused
[ 38] Chat Logger 2.1a Jim chat_logger.amx running
[ 39] Player Listner 0.1 PhiliP listener.amxx running
[ 40] unknown unknown unknown amx_adminlisten bad load
[ 41] Zombie Escape 1337 xman2030 xman2030_ze_mod debug
[ 42] [ZP]Level System 6.0 Dambas xman2030_level. running
[ 43] Camera View 0.0.1 ConnorMcLeod talrasha_camera debug
[ 44] DJB Zombie Class Banch 2.0.4 Csoldjb&wbyokomo DJB_Zombie_Clas running
[ 45] [ZP] Class : Frank 1.0 tumoxa xman2030_pc.amx running
[ 46] [CSO] Class String Fin 2.0 BLACK_ROSE zp_class_finger running
[ 47] Undertaker 1.0 DSHGFHDS zp_undertaker.a debug
[ 48] NST Zombie Class Heal 1.0 NST NST_ZbClass_Hea running
[ 49] unknown unknown unknown azp_zclass_sire running
[ 50] [CSO:Heavy Zombie] 1.1 REDEMAX cso_heavy.amxx running
[ 51] CSO Lusty Rose 1.0.1 ALBTeam zp_class_LustyR running
[ 52] xman2030_zombieclass_b CS-FADE.RU CS-FADE.RU xman2030_zombie running
[ 53] [vk.com/deathrun_items 1.1 Jim/4e/| server_class_he running
[ 54] [ZP] Classic Zombie 1.0 dias server_class_cl running
[ 55] [ZP] Zombie Class: Cer 0.1 DJHD! zp_zclass_cerbe running
[ 56] [vk.com/deathrun_items 1.4 HoRRoR, Fry!,tER server_class_sp running
[ 57] [CSO:Hunter Zombie] 1.2 HoRRoR/tERoR edi server_class_ch running
[ 58] ZM VIP 1.7.2 aaarnas xman2030_vip.am running
[ 59] [FS] Chat 1.1 Inf xman2030_chat.a running
[ 60] Heli Button Info 1.0 Shanks' xman2030_showes running
[ 61] [ZP] EASY SAVE AMMO 1.2 CS-FADE.RU xman2030_ammo_a running
[ 62] [ZP Addon] Knives 0.1 ONYX xman2030_knifes running
[ 63] [ZP] Admin Lvl Menu 1.0 Dambas xman2030_level_ running
[ 64] ZE HUD Final CS-FADE.RU xman2030_ze_hud running
[ 65] NadeModes 11.2 Nomexous & OT xman2030_nademo running
[ 66] [ZP] ZP++ Ice Cube 1.0 DareDevil (Gyiov xman2030_ice_cu running
[ 67] Weapon Model + Sound R 1.2 GHW_Chronic GHW_Weapon_Repl running
[ 68] xman2030_damager CS-FADE.RU CS-FADE.RU xman2030_damage running
[ 69] ZP: Zombie Health 1.0 Yakess yakess_health.a debug
[ 70] Countdown 1.7.3 T a l R a s h a gameplay_countd running
[ 71] ammo donate/dhud 1.5 user/zobie-dead zp_ammo_donate. running
[ 72] Team Locker 1.5 Bmann_420 teamlocker.amxx running
[ 73] xman2030_human_revolut CS-FADE.RU CS-FADE.RU xman2030_human_ running
[ 74] xman2030_evolution_bon CS-FADE.RU CS-FADE.RU xman2030_evolut running
[ 75] xman2030_cons CS-FADE.RU CS-FADE.RU xman2030_cons.a running
[ 76] [ZP] Addon: Evolution 0.0.7 https://vk.com/i xman2030_evolut running
[ 77] xman2030_aura CS-FADE.RU CS-FADE.RU xman2030_aura.a running
[ 78] xman2030_blood CS-FADE.RU CS-FADE.RU xman2030_blood. running
[ 79] ZP Reloading! Shout 0.0.1 xPaw,wbyokomo reloading_weapo running
[ 80] [ZP] Addon: Weather 0.1 | 30.0 inf / xman2030 xman2030_weathe running
[ 81] unknown unknown unknown xman2030_leader running
[ 82] [ZP] Shoot Light 0.1 | 11.0 inf xman2030_shot_l running
[ 83] [ZP] Round ended effec 1.0 *GEORGE* xman2030_ended_ running
[ 84] [ZP] Round Draw Blast 1.0 MeRcyLeZZ xman2030_round_ running
[ 85] Breakable Hint 1.1 Raheem hint.amxx running
[ 86] [ZP] CZ Bot Helper 1.0 @bdul! zp_cz_bot_helpe running
[ 87] Aim Hud Info 1.0 Yakess zp_aimhudinfo.a running
[ 88] [ ZP ] Nemesis skill Shurik07 0.1 1zp_nemskill.am running
[ 89] ZP Round Results 1.0 MonsteR zp_round_result debug
[ 90] [ZP] Survivor and Name 1.0 O_o azp_survivor_an running
[ 91] Fake Ping For Bots 1.0 fl0wer fake_ping_for_b running
[ 92] Menu_Priv 1.0 CS-FADE.RU xman2030_menu_p running
[ 93] [ZP] VIP menu 1.2 CS-FADE.RU xman2030_vip_me running
[ 94] [ZP] VIP menu 1.2 CS-FADE.RU xman2030_deluxe running
[ 95] [ZP] VIP menu 1.2 CS-FADE.RU xman2030_creato debug
[ 96] ammo paki 4.0 Bagamut xman2030_ammo_m running
[ 97] unknown unknown unknown xman2030_lk.amx running
[ 98] [ZP] Extra Item: Jump 1.0 Opo4uMapy xman2030_jumpbo running
[ 99] [ZP] Extra Item Speed 1.2 MeRcyLeZZ zp_extra_speed_ running
[100] unknown unknown unknown xman2030_buy_hp running
[101] Janus 1 1.0 m4m3ts xman2030_janus1 running
[102] [CSO LIKE] Extra: Gull 1.0 Lakerovich xman2030_bloodr running
[103] [Zombie Plague] Weapon 0.7 PlaneShfit1231 / zp_extra_rpg7.a running
[104] [ZP] Extra: CSO Weapon 1.0 KORD_12.7 xman2030_m3.amx running
[105] [ZP] Weapon: M32 1.0 PbI)I(Uu' / Batc xman2030_m32.am running
[106] [ZP] Extra: CSO ClayMo 1.0 TemplateAuthor:K xman2030_Claymo running
[107] [ZP] Air Strike 1.0 Dorus xman2030_air_st running
[108] [CSO LIKE] LaserMG 1.1 Lakerovich cso_weapon_lase running
[109] Janus-11 1.0 m4m3ts zp_extra_janus1 running
[110] Rail Cannon 1.0 m4m3ts zp_extra_railca running
[111] [ZP] Weapon: JANUS-7 1.0 xUnicorn (t3rkec zp_weapon_janus running
[112] Extraitems: Water Pist 1.0 Base: Batcon & x zp_extraitems_w running
[113] [ZP] Weapon: Crossbow 1.0 xUnicorn (t3rkec zp_weapon_cross running
[114] [ZP] Extra: m134ex 1.0 LARS-DAY[BR]EAKE zp_weapon_m134e running
[115] [ZP] Extra item: Aeoli 1.0 m4m3ts zp_extra_aeolis running
[116] Petrolboomer 1.0 m4m3ts xman2030_petrol running
[117] [ZP] Extra: Squeak Gre 1.0.6-wwm Arkshine zp_extra_squeak running
[118] [ZP] Extra Item: AT4CS 1.0 Dias zp_extra_at4cs. running
[119] [Z] Weapon: M2 0.6 beta batcon weapon_m2.amxx running
[120] Zombie Plague extra it 1.3 Sonic Son'edit zp_extra_radar. running
[121] [AMXX | ZP] KnockBack 0.0.1 1331 xman2030_armor_ running
[122] [ZE] Addon: XMAS 2040 0.1 | 30.0 Reega! inf2030_ze_lead running
[123] [ZM] Choose Weapon 1.6.1 t3rkecorejz | Un xman2030_menu_w running
[124] HUINYA HUINYA HUINYA xman2030_def_we running
[125] [ZP] Extra: CSO Weapon 1.0 KORD_12.7 xman2030_Vulcan running
[126] [ZP] Extra: CSO Weapon 1.0 KORD_12.7 xman2030_Sapien running
[127] [ZP] Extra: M1887 1.0 Crock / =) (Popr xman2030_m1887. running
[128] [ZMO]Weapon: Cyclone 1.0 Base: Batcon; Re xman2030_cyclon running
[129] [ZP] Weapon: Shining H 1.0 xUnicorn (t3rkec xman2030_magicm running
[130] [CSO] Ethereal 0.0.1 Shurik07 xman2030_ethere running
( 32) Load fails: Invalid Plugin (plugin "warnings.amxx")
( 34) Load fails: Module/Library "curl" required for plugin. Check modules.ini.
130 plugins, 123 running
- Автор плагина
- DSHGFHDS
- Версия плагина
- 1.0
- Исходный код
-
#include <amxmodx>
#include <engine>
#include <fakemeta>
#include <fakemeta_util>
#include <hamsandwich>
#include <zombieplague>
#include <xs>
#include <zp_level_system>
#define PLUGIN "Undertaker"
#define VERSION "1.0"
#define AUTHOR "DSHGFHDS"
#define SKILLMODEL "models/zombiepile_xman2030_red.mdl"
#define SKILLNAME "zombiecoffin"
#define SKILL_COFFIN 15214
#define TASK_COOLDAWN 1234
#define TASK_SKILLUSEING 2345
#define TASK_SKILLOVER 3456
#define TASK_ENTTHINK 4567
#define TASK_SPEEDTIME 5678
new systimeend[33]
new skillcd = 8
new wait[33]
new const WEAPON_CLASSNAME[][] = { "", "weapon_p228", "", "weapon_scout", "weapon_hegrenade", "weapon_xm1014", "weapon_c4", "weapon_mac10",
"weapon_aug", "weapon_smokegrenade", "weapon_elite", "weapon_fiveseven", "weapon_ump45", "weapon_sg550",
"weapon_galil", "weapon_famas", "weapon_usp", "weapon_glock18", "weapon_awp", "weapon_mp5navy", "weapon_m249",
"weapon_m3", "weapon_m4a1", "weapon_tmp", "weapon_g3sg1", "weapon_flashbang", "weapon_deagle", "weapon_sg552",
"weapon_ak47", "weapon_knife", "weapon_p90" }
new const zclass_name[] = { "Гробовщик" }
new const zclass_info[] = { "Ставит гроб" }
new const zclass_model[] = { "zm_undertaker" }
new const zclass_clawmodel[] = { "v_zm_undertaker.mdl" }
new const zclass_hemodel[] = { "models/zombie_plague/v_he_undertaker.mdl" }
new KNOCKBOMB_STAMPER[] = "models/zombie_plague/v_he_undertaker.mdl"
new const zclass_health = 4500
new const zclass_speed = 260
new const Float:zclass_gravity = 0.8
new const Float:zclass_knockback = 1.5
new const setcoffinsound[] = "zombie_plague/zombi_stamper_iron_maiden_stamping.wav"
new const coffinexsound[] = "zombie_plague/zombi_stamper_iron_maiden_explosion.wav"
new g_zclass_undertaker, g_shokewaveSpr, humanspr, zm_zombiebomb
new skillcooldawn[33], skilluseing[33], setmaxspeed[33], sprremove[33], knifehit[33], removesdamage[33], removeknock[33]
new cvar_skillcooldawntime, cvar_skillhealth, cvar_coffintime, cvar_exrange, cvar_exknock, cvar_speedtime, cvar_maxspeed, cvar_bot_use_skill, cvar_exdamage, cvar_exhit
enum
{
anim_idle,
anim_slash1,
anim_skill,
anim_daw,
anim_stab,
anim_stab_miss,
anim_midslash1,
anim_midslash2,
}
const DMG_HEGRENADE = (1<<24)
public plugin_init()
{
register_forward(FM_EmitSound, "fw_EmitSound")
register_plugin(PLUGIN, VERSION, AUTHOR)
register_clcmd("drop","skilluse")
register_event("CurWeapon", "Event_CurWeapon", "be", "1=1")
register_event("CurWeapon", "Event_CurrentWeapon", "be", "1=1")
RegisterHam(Ham_Killed, "player", "player_death",1)
for (new i = 0; i < sizeof WEAPON_CLASSNAME; i++)
{
if (strlen(WEAPON_CLASSNAME[i]) <= 0)
continue;
RegisterHam(Ham_Item_Deploy, WEAPON_CLASSNAME[i], "fwItemDeploy_Post", 1)
}
RegisterHam(Ham_Weapon_SecondaryAttack, "weapon_knife", "fw_Weapon_SecondaryAttack")
RegisterHam(Ham_Weapon_SecondaryAttack, "weapon_knife", "fw_Weapon_SecondaryAttack_Post", 1)
RegisterHam(Ham_TakeDamage, "info_target", "fw_TakeDamage")
RegisterHam(Ham_TakeDamage, "player", "fw_TakeDamageplayer")
RegisterHam(Ham_TraceAttack, "info_target", "fw_TraceAttack")
RegisterHam(Ham_TraceAttack, "player", "fw_TraceAttackplayer")
register_forward(FM_CmdStart, "forward_CmdStart", 1)
register_forward(FM_PlayerPreThink, "fw_PlayerPreThink")
register_forward(FM_PlayerPostThink, "fw_PlayerPostThink" , 1)
register_forward(FM_UpdateClientData, "UpdateClientData_Post", 1)
cvar_skillcooldawntime = register_cvar("zp_undertaker_cooldawn","8.0") //отсчет до способности(через сколько восстановиться)
cvar_skillhealth = register_cvar("zp_undertaker_skillhealth","800") // Жизнь гроба
cvar_coffintime = register_cvar("zp_undertaker_coffintime","10.0") //Время одурманивания
cvar_exrange = register_cvar("zp_undertaker_coffinexrange","150") // Iron Maiden взрыв отталкиваются
cvar_exknock = register_cvar("zp_undertaker_coffinexknock","1000") // сила отброса от гроба
cvar_speedtime = register_cvar("zp_undertaker_speedtime","5.0") // скорость отброса
cvar_maxspeed = register_cvar("zp_undertaker_maxspeed","0.5") // скорость ходьбы пострадавших при
cvar_exdamage = register_cvar("zp_undertaker_exdamage","0.35") // наносимый крон
cvar_bot_use_skill = register_cvar("zp_undertaker_bot_use_skill", "150") // скил для использования ботом
cvar_exhit = register_cvar("zp_undertaker_hit_ex", "5") // Максимальное количество нападений на Iron Maiden тяжелым ножом
}
public plugin_precache()
{
g_zclass_undertaker = zp_register_zombie_class(zclass_name, zclass_info, zclass_model, zclass_clawmodel, zclass_health, zclass_speed, zclass_gravity, zclass_knockback)
engfunc(EngFunc_PrecacheModel,zclass_hemodel)
engfunc(EngFunc_PrecacheModel,SKILLMODEL)
precache_model(KNOCKBOMB_STAMPER)
g_shokewaveSpr = engfunc(EngFunc_PrecacheModel,"sprites/shockwave.spr")
humanspr = engfunc(EngFunc_PrecacheModel,"sprites/un_trap.spr")
zm_zombiebomb = engfunc(EngFunc_PrecacheModel,"sprites/zombiebomb.spr")
engfunc(EngFunc_PrecacheSound,setcoffinsound)
engfunc(EngFunc_PrecacheSound,coffinexsound)
precache_sound("zombie_plague/zombi_hurt_stamper_1.wav")
precache_sound("zombie_plague/zombi_hurt_stamper_2.wav")
precache_sound("zombie_plague/knife_slash1.wav")
precache_sound("zombie_plague/knife_hitwall1.wav")
precache_sound("zombie_plague/knife_hit1.wav")
precache_sound("zombie_plague/knife_hit3.wav")
precache_sound("zombie_plague/zombi_death_stamper_1.wav")
precache_sound("zombie_plague/zombi_hurt_stamper_1.wav")
}
public zp_user_infected_pre(id)
{
if(!(zp_level(id) > 7))
{
if(zp_get_user_next_class(id) == g_zclass_undertaker)
{
zp_set_user_zombie_class(id, 0)
print_chatColor(id, "\g[ZP] \nДанный класс \tГробовщик \nдоступен с \g7 уровня!")
}
}
}
public fw_Weapon_SecondaryAttack(iEntity)
{
new owner = pev(iEntity, pev_owner)
knifehit[owner] = true
}
public fw_Weapon_SecondaryAttack_Post(iEntity)
{
new owner = pev(iEntity, pev_owner)
knifehit[owner] = false
}
public fw_TakeDamage(victim, inflictor, attacker, Float:damage, damage_type)
{
if(!is_user_connected(attacker))
return HAM_IGNORED;
if(damage_type & DMG_HEGRENADE)
return HAM_IGNORED
if(pev(victim, pev_iuser4) == SKILL_COFFIN)
{
if(get_user_weapon(attacker) == CSW_KNIFE && knifehit[attacker])
{
set_pev(victim, pev_iuser3, pev(victim, pev_iuser3)-1)
return HAM_SUPERCEDE
}
removesdamage[attacker] = true
}
return HAM_IGNORED
}
public fw_TakeDamageplayer(victim, inflictor, attacker, Float:damage, damage_type)
{
if(!is_user_connected(attacker))
return HAM_IGNORED;
if(damage_type & DMG_HEGRENADE)
return HAM_IGNORED
if(removesdamage[attacker])
{
removesdamage[attacker] = false
return HAM_SUPERCEDE
}
return HAM_IGNORED
}
public fw_TraceAttack(victim, attacker, Float:damage, Float:dir[3], ptr, damagetype)
{
if(!is_user_alive(attacker) || !is_user_connected(attacker))
return HAM_IGNORED
new iVictim = get_tr2(ptr, TR_pHit)
if(pev(iVictim, pev_iuser4) == SKILL_COFFIN && get_user_weapon(attacker) != CSW_KNIFE)
{
removeknock[attacker] = true
new Float:fHitOrigin[3]
get_tr2(ptr, TR_vecEndPos, fHitOrigin)
engfunc(EngFunc_MessageBegin,MSG_PVS, SVC_TEMPENTITY, fHitOrigin, 0)
write_byte(TE_GUNSHOTDECAL)
engfunc(EngFunc_WriteCoord,fHitOrigin[0])
engfunc(EngFunc_WriteCoord,fHitOrigin[1])
engfunc(EngFunc_WriteCoord,fHitOrigin[2])
write_short(0)
write_byte(45)
message_end()
engfunc(EngFunc_MessageBegin,MSG_PVS, SVC_TEMPENTITY, fHitOrigin, 0)
write_byte(TE_SPARKS)
engfunc(EngFunc_WriteCoord,fHitOrigin[0])
engfunc(EngFunc_WriteCoord,fHitOrigin[1])
engfunc(EngFunc_WriteCoord,fHitOrigin[2])
message_end()
}
return HAM_IGNORED
}
public fw_TraceAttackplayer(victim, attacker, Float:damage, Float:dir[3], ptr, damagetype)
{
if(!is_user_alive(attacker) || !is_user_connected(attacker))
return HAM_IGNORED
if(removeknock[attacker])
{
removeknock[attacker] = false
return HAM_SUPERCEDE
}
return HAM_IGNORED
}
public fw_PlayerPreThink(id)
{
if(!is_user_alive(id))
return PLUGIN_HANDLED
if(setmaxspeed[id]) set_speed_to_velocity(id, get_pcvar_float(cvar_maxspeed))//set_pev(id, pev_maxspeed, (pev(id, pev_maxspeed)*get_pcvar_float(cvar_maxspeed)))
return PLUGIN_CONTINUE
}
public fw_PlayerPostThink(id)
{
if(!is_user_alive(id) || !is_user_bot(id))
return PLUGIN_HANDLED
new enemy, body
get_user_aiming(id, enemy, body)
if ((1 <= enemy <= 32) && !zp_get_user_zombie(enemy))
{
new origin1[3] ,origin2[3],range
get_user_origin(id,origin1)
get_user_origin(enemy,origin2)
range = get_distance(origin1, origin2)
if(range <= get_pcvar_num(cvar_bot_use_skill)) skilluse(id)
}
return PLUGIN_CONTINUE
}
public UpdateClientData_Post(id, sendweapons, cd_handle)
{
if(!is_user_alive(id))
return PLUGIN_HANDLED
if(skilluseing[id] || sprremove[id])
{
set_cd(cd_handle, CD_ID, 0)
sprremove[id] = false
}
return PLUGIN_CONTINUE
}
public forward_CmdStart(id, uc_handle, seed)
{
if(!is_user_alive(id))
return PLUGIN_HANDLED
static button
button = get_uc(uc_handle, UC_Buttons)
if(skilluseing[id] && (button & IN_ATTACK))
{
button &= ~IN_ATTACK
set_uc(uc_handle, UC_Buttons, button)
}
return PLUGIN_CONTINUE
}
public Event_CurWeapon(id) if(zp_get_user_zombie(id) && zp_get_user_zombie_class(id) == g_zclass_undertaker && !zp_get_user_nemesis(id) && get_user_weapon(id) == CSW_HEGRENADE) set_pev(id, pev_viewmodel2, zclass_hemodel)
public zp_user_infected_post(id, infector)
{
alloff(id)
setmaxspeed[id] = false
remove_task(id)
remove_task(id+TASK_SPEEDTIME)
}
public zp_user_humanized_post(id)
{
alloff(id)
setmaxspeed[id] = false
remove_task(id)
remove_task(id+TASK_SPEEDTIME)
}
/* public makecoffin(id)
{
if(is_user_alive(id) && zp_get_user_zombie(id) && zp_get_user_zombie_class(id) == g_zclass_undertaker && !zp_get_user_nemesis(id))
{
systimeend[id] = get_systime()+skillcd;
skilluse(id)
}
if (!skilluseing[id] && zp_get_user_zombie_class(id) == g_zclass_undertaker)
{
wait[id] = systimeend[id]-get_systime();
client_print(id,print_center,"Откат навыка через %d сек.",wait[id]);
return PLUGIN_HANDLED
}
return PLUGIN_CONTINUE
} */
public skilluse(id)
{
if(zp_get_user_zombie(id) && zp_get_user_zombie_class(id) == g_zclass_undertaker && !zp_get_user_nemesis(id) && !skillcooldawn[id] && !skilluseing[id] && get_user_weapon(id) == CSW_KNIFE)
{
if(pev(id, pev_flags) & FL_ONGROUND)
{
native_playanim(id,anim_skill)
set_task(0.4, "settheent", id+TASK_SKILLUSEING)
set_task(1.1, "skillover", id+TASK_SKILLOVER)
systimeend[id] = get_systime()+skillcd;
skilluseing[id] = true
client_print(id,print_center," Вы использовали скилл")
}
else client_print(id,print_center," Нельзя использовать скилл!")
}
if (!skilluseing[id] && zp_get_user_zombie_class(id) == g_zclass_undertaker && is_user_alive(id) && zp_get_user_zombie(id))
{
wait[id] = systimeend[id]-get_systime();
client_print(id,print_center,"Откат навыка через %d сек.",wait[id]);
return PLUGIN_HANDLED
}
}
public skillover(taskid)
{
new id = taskid - TASK_SKILLOVER
native_playanim(id,anim_idle)
skilluseing[id] = false
remove_task(id+TASK_SKILLOVER)
if(!zp_get_user_zombie(id) || zp_get_user_zombie_class(id) != g_zclass_undertaker || zp_get_user_nemesis(id))
return
}
public skillcooldawnover(taskid)
{
new id = taskid - TASK_COOLDAWN
skillcooldawn[id] = false
client_print(id,print_center,"Скилл перезаряжен")
remove_task(id+TASK_COOLDAWN)
if(!zp_get_user_zombie(id) || zp_get_user_zombie_class(id) != g_zclass_undertaker || zp_get_user_nemesis(id))
return
}
public settheent(taskid)
{
new id = taskid - TASK_SKILLUSEING
remove_task(id+TASK_SKILLUSEING)
if(!zp_get_user_zombie(id) || zp_get_user_zombie_class(id) != g_zclass_undertaker || zp_get_user_nemesis(id))
return
skillcooldawn[id] = true
set_task(get_pcvar_float(cvar_skillcooldawntime), "skillcooldawnover", id+TASK_COOLDAWN)
new Float:origin[3], Float:fAngle[3], Float:fAngle2[3], Float:vec[3]
pev(id,pev_origin,origin)
get_origin_distance(id, vec, 40.0)
vec[2] += 25.0
pev(id,pev_angles,fAngle)
new ent = fm_create_entity("info_target")
if(!pev_valid(ent))
return
pev(ent,pev_angles,fAngle2)
fAngle[0] = fAngle2[0]
set_pev(ent, pev_classname, SKILLNAME)
set_pev(ent, pev_iuser4, SKILL_COFFIN)
set_pev(ent, pev_iuser3, get_pcvar_num(cvar_exhit))
engfunc(EngFunc_SetModel,ent,SKILLMODEL)
engfunc(EngFunc_SetSize, ent, {-14.0, -10.0, -36.0}, {14.0, 10.0, 36.0})
set_pev(ent, pev_mins, {-14.0, -10.0, -36.0});
set_pev(ent, pev_maxs, {14.0, 10.0, 36.0});
set_pev(ent, pev_absmin, {-14.0, -10.0, -36.0})
set_pev(ent, pev_absmax, {-14.0, -10.0, -36.0})
set_pev(ent, pev_health, float(get_pcvar_num(cvar_skillhealth))+1000.0)
set_pev(ent, pev_gravity, 2.0)
set_pev(ent, pev_solid,SOLID_BBOX)
set_pev(ent, pev_movetype,MOVETYPE_TOSS)
set_pev(ent, pev_takedamage, DAMAGE_YES)
set_pev(ent,pev_angles,fAngle)
engfunc(EngFunc_SetOrigin,ent, vec)
engfunc(EngFunc_DropToFloor, ent)
engfunc(EngFunc_EmitSound, ent, CHAN_AUTO, setcoffinsound, 1.0, ATTN_NORM, 0, PITCH_NORM)
set_task(get_pcvar_float(cvar_coffintime), "removecoffin", ent, _, _, "b")
set_task(0.1, "coffinthink", ent+TASK_ENTTHINK, _, _, "b")
new Float:iorigin[3], Float:entorigin[3]
pev(ent, pev_origin, entorigin)
for(new i=1;i<33;i++)
{
pev(i, pev_origin, iorigin)
new Float:range = get_distance_f(entorigin, iorigin)
if(range <= float(get_pcvar_num(cvar_exrange)) && is_user_alive(i) && !zp_get_user_zombie(i) && !setmaxspeed[id])
{
setmaxspeed[i] = true
makespr(i)
set_task(get_pcvar_float(cvar_speedtime), "overspeedtime", i+TASK_SPEEDTIME)
}
}
engfunc(EngFunc_MessageBegin, MSG_PVS, SVC_TEMPENTITY, entorigin, 0)
write_byte(TE_BEAMCYLINDER)
engfunc(EngFunc_WriteCoord, entorigin[0])
engfunc(EngFunc_WriteCoord, entorigin[1])
engfunc(EngFunc_WriteCoord, entorigin[2]-10)
engfunc(EngFunc_WriteCoord, entorigin[0]-150)
engfunc(EngFunc_WriteCoord, entorigin[1])
engfunc(EngFunc_WriteCoord, entorigin[2]+300)
write_short(g_shokewaveSpr)
write_byte(0)
write_byte(0)
write_byte(2)
write_byte(20)
write_byte(0)
write_byte(255)
write_byte(255)
write_byte(255)
write_byte(100)
write_byte(2)
message_end()
gettheent(ent)
}
public gettheent(ent)
{
if(!pev_valid(ent))
return
if(!is_player_stuck(ent) || pev(ent, pev_movetype) == MOVETYPE_NOCLIP || pev(ent,pev_solid) == SOLID_NOT)
return
removecoffin(ent)
}
public makespr(id)
{
if(zp_get_user_zombie(id) || !is_user_alive(id))
return
new Float:hm_origin[3]
pev(id, pev_origin, hm_origin)
engfunc(EngFunc_MessageBegin, MSG_PVS, SVC_TEMPENTITY, hm_origin, 0)
write_byte(TE_SPRITE)
engfunc(EngFunc_WriteCoord,hm_origin[0])
engfunc(EngFunc_WriteCoord,hm_origin[1])
engfunc(EngFunc_WriteCoord,hm_origin[2]+10.0)
write_short(humanspr)
write_byte(8)
write_byte(255)
message_end()
set_task(0.1,"makespr",id)
client_print(id, print_center, "Вас замедляет гроб!")
}
public overspeedtime(taskid)
{
new id = taskid - TASK_SPEEDTIME
setmaxspeed[id] = false
remove_task(id)
remove_task(id+TASK_SPEEDTIME)
client_print(id, print_center, "Вас больше не замедляет гроб!")
}
public coffinthink(taskent)
{
new ent = taskent - TASK_ENTTHINK
if(!pev_valid(ent))
return
if(pev(ent, pev_health) <= 1000.0 || pev(ent, pev_iuser3) <= 0) removecoffin(ent)
}
public removecoffin(ent)
{
new Float:iorigin[3], Float:entorigin[3], maxdamage, health
pev(ent, pev_origin, entorigin)
for(new i=1;i<33;i++)
{
pev(i, pev_origin, iorigin)
new Float:range = get_distance_f(entorigin, iorigin)
if(range <= float(get_pcvar_num(cvar_exrange)) && is_user_alive(i))
{
health = pev(i, pev_health)
maxdamage = floatround(health*get_pcvar_float(cvar_exdamage))
if(health > maxdamage)
fm_fakedamage(i, "coffindamge", float(maxdamage), DMG_BLAST)
set_velocity_from_origin(i, entorigin, float(get_pcvar_num(cvar_exknock)))
if(!setmaxspeed[i] && !zp_get_user_zombie(i))
{
setmaxspeed[i] = true
makespr(i)
set_task(get_pcvar_float(cvar_speedtime), "overspeedtime", i+TASK_SPEEDTIME)
}
}
}
engfunc(EngFunc_EmitSound, ent, CHAN_AUTO, coffinexsound, 1.0, ATTN_NORM, 0, PITCH_NORM)
engfunc(EngFunc_MessageBegin, MSG_ALL, SVC_TEMPENTITY, entorigin, 0)
write_byte(TE_SPRITE)
engfunc(EngFunc_WriteCoord, entorigin[0])
engfunc(EngFunc_WriteCoord, entorigin[1])
engfunc(EngFunc_WriteCoord, entorigin[2]+38.0)
write_short(zm_zombiebomb)
write_byte(20)
write_byte(255)
message_end()
remove_task(ent)
remove_task(ent+TASK_ENTTHINK)
engfunc(EngFunc_RemoveEntity, ent)
}
public alloff(id)
{
skillcooldawn[id] = false
skilluseing[id] = false
remove_task(id+TASK_SKILLUSEING)
remove_task(id+TASK_COOLDAWN)
remove_task(id+TASK_SKILLOVER)
}
public fwItemDeploy_Post(ent)
{
new id = get_pdata_cbase(ent, 41, 4)
if(zp_get_user_zombie(id) && zp_get_user_zombie_class(id) == g_zclass_undertaker && !zp_get_user_nemesis(id))
{
remove_task(id+TASK_SKILLUSEING)
remove_task(id+TASK_SKILLOVER)
skilluseing[id] = false
}
}
public player_death(id)
{
if(zp_get_user_zombie(id) && zp_get_user_zombie_class(id) == g_zclass_undertaker && !zp_get_user_nemesis(id))
{
alloff(id)
setmaxspeed[id] = false
remove_task(id)
remove_task(id+TASK_SPEEDTIME)
}
}
new Debug
public client_putinserver(id)
{
if(Debug == 1)return
new classname[32]
pev(id,pev_classname,classname,31)
if(!equal(classname,"player"))
{
Debug=1
set_task(1.0,"_Debug",id)
}
}
public _Debug(id)
{
RegisterHamFromEntity(Ham_TakeDamage, id, "fw_TakeDamageplayer")
RegisterHamFromEntity(Ham_Killed,id,"player_death", 1)
RegisterHamFromEntity(Ham_TraceAttack, id, "fw_TraceAttackplayer")
}
stock native_playanim(player,anim)
{
set_pev(player, pev_weaponanim, anim)
message_begin(MSG_ONE, SVC_WEAPONANIM, {0, 0, 0}, player)
write_byte(anim)
write_byte(pev(player, pev_body))
message_end()
}
stock get_origin_distance( index, Float:origin[3], Float:dist )
{
new Float:start[ 3 ];
new Float:view_ofs[ 3 ];
pev( index, pev_origin, start );
pev( index, pev_view_ofs, view_ofs );
xs_vec_add( start, view_ofs, start );
new Float:dest[3];
pev(index, pev_angles, dest );
engfunc( EngFunc_MakeVectors, dest );
global_get( glb_v_forward, dest );
xs_vec_mul_scalar( dest, dist, dest );
xs_vec_add( start, dest, dest );
engfunc( EngFunc_TraceLine, start, dest, 0, index, 0 );
get_tr2( 0, TR_vecEndPos, origin );
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 )
set_pev( ent, pev_velocity, fVelocity )
return 1
}
stock get_velocity_from_origin( ent, Float:fOrigin[3], Float:fSpeed, Float:fVelocity[3] )
{
new Float:fEntOrigin[3];
pev( ent, pev_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 is_player_stuck(id)
{
static Float:originF[3]
pev(id, pev_origin, originF)
engfunc(EngFunc_TraceHull, originF, originF, 0, (pev(id, pev_flags) & FL_DUCKING) ? HULL_HEAD : HULL_HUMAN, id, 0)
if (get_tr2(0, TR_StartSolid) || get_tr2(0, TR_AllSolid) || !get_tr2(0, TR_InOpen))
return true
return false
}
stock set_speed_to_velocity(id, Float:scalar = 1.0)
{
new Float:velocity[3]
pev(id, pev_velocity, velocity)
xs_vec_mul_scalar(velocity, scalar, velocity)
velocity[2] = velocity[2]/scalar
set_pev(id, pev_velocity, velocity)
return 1
}
// Emit Sound Forward
public fw_EmitSound(id, channel, const sample[], Float:volume, Float:attn, flags, pitch)
{
// 内容限定只对僵尸作用
if (!is_user_connected(id) || !zp_get_user_zombie(id) || zp_get_user_zombie_class(id) != g_zclass_undertaker)
return FMRES_IGNORED;
// 僵尸被攻击的叫声
if (equal(sample[7], "bhit", 4))
{
if (zp_get_user_nemesis(id))
engfunc(EngFunc_EmitSound, id, channel, "zombie_plague/zombi_hurt_stamper_1.wav", volume, attn, flags, pitch)
else
engfunc(EngFunc_EmitSound, id, channel, "zombie_plague/zombi_hurt_stamper_2.wav", volume, attn, flags, pitch)
return FMRES_SUPERCEDE;
}
// 僵尸用爪子攻击的声音
if (equal(sample[8], "kni", 3))
{
if (equal(sample[14], "sla", 3)) // 爪子空挥的音效
{
engfunc(EngFunc_EmitSound, id, channel, "zombie_plague/knife_slash1.wav", volume, attn, flags, pitch)
return FMRES_SUPERCEDE;
}
if (equal(sample[14], "hit", 3)) // 爪子命中物体的音效
{
if (sample[17] == 'w') // 爪子命中的是墙壁
{
engfunc(EngFunc_EmitSound, id, channel, "zombie_plague/knife_hitwall1.wav", volume, attn, flags, pitch)
return FMRES_SUPERCEDE;
}
else // 爪子命中的是人物
{
engfunc(EngFunc_EmitSound, id, channel, "zombie_plague/knife_hit1.wav", volume, attn, flags, pitch)
return FMRES_SUPERCEDE;
}
}
if (equal(sample[14], "sta", 3)) // 爪子重砍命中人物
{
engfunc(EngFunc_EmitSound, id, channel, "zombie_plague/knife_hit3.wav", volume, attn, flags, pitch)
return FMRES_SUPERCEDE;
}
}
// 僵尸死亡的声音
if (equal(sample[7], "die", 3) || equal(sample[7], "dea", 3))
{
engfunc(EngFunc_EmitSound, id, channel, "zombie_plague/zombi_death_stamper_1.wav", volume, attn, flags, pitch)
return FMRES_SUPERCEDE;
}
// 僵尸摔伤的声音
if (equal(sample[10], "fall", 4))
{
engfunc(EngFunc_EmitSound, id, channel, "zombie_plague/zombi_hurt_stamper_1.wav", volume, attn, flags, pitch)
return FMRES_SUPERCEDE;
}
return FMRES_IGNORED;
}
public Event_CurrentWeapon(id)
{
new weaponID = read_data(2)
if(weaponID == CSW_SMOKEGRENADE)
{
if(zp_get_user_zombie(id) && zp_get_user_zombie_class(id) == g_zclass_undertaker && !zp_get_user_nemesis(id))
{
entity_set_string(id, EV_SZ_viewmodel, KNOCKBOMB_STAMPER)
}
}
if (weaponID == CSW_FLASHBANG) {
if(zp_get_user_zombie(id) && zp_get_user_zombie_class(id) == g_zclass_undertaker && !zp_get_user_nemesis(id))
{
entity_set_string(id, EV_SZ_viewmodel, KNOCKBOMB_STAMPER)
}
}
}
stock print_chatColor(const id,const input[], any:...)
{
new msg[191], players[32], count = 1;
vformat(msg,190,input,3);
replace_all(msg,190,"\g","^4");// green
replace_all(msg,190,"\n","^1");// normal
replace_all(msg,190,"\t","^3");// team
if (id) players[0] = id; else get_players(players,count,"ch");
for (new i=0;i<count;i++)
if (is_user_connected(players[i]))
{
message_begin(MSG_ONE_UNRELIABLE,get_user_msgid("SayText"),_,players[i]);
write_byte(players[i]);
write_string(msg);
message_end();
}
}
Всем привет. В консоль массово спамит такой ошибкой. Что делать?
В этой теме было размещено решение! Перейти к решению.