[ROZWIĄZANE] Plugin wywołuje error jak się...
TaLoN
31.05.2015
Cześć, mam problem z pluginem na serwer [ZP] otóż co jakiś czas wywołuje on error, jest to plugin dla Ekwipunku "Zombie"
Plugin sprawdzał się dobrze tylko teraz jak ktoż kupi bombe rzuci ją to automatycznie serwer się zawiesza ze statusem: Sprawdzam
Logi
L 05/30/2015 - 13:55:58: Start of error session. L 05/30/2015 - 13:55:58: Info (map "zm_hs_horror") (file "addons/amxmodx/logs/error_20150530.log") L 05/30/2015 - 13:55:58: [AMXX] Displaying debug trace (plugin "zp_extra_zombiebomb.amxx") L 05/30/2015 - 13:55:58: [AMXX] Run time error 3: stack error L 05/30/2015 - 13:55:58: [AMXX] [0] zp_extra_zombiebomb.sma::ham_strip_weapon (line 371) L 05/30/2015 - 13:55:58: [AMXX] [1] zp_extra_zombiebomb.sma::EV_DeathMsg (line 170)
proszę o pomoc
TaLoN
31.05.2015
Właśnie tak mam:
zp_extra_zombiebomb.amxx debug
ale nadal jest error
Czy to zależy też, że nie ma średnika ?
zp_extra_zombiebomb.amxx ;debug
TaLoN
31.05.2015
Czyli co trzeba zrobić?
Znalazłem w tym pluginie error
Welcome to the AMX Mod X 1.8.1-300 Compiler. Copyright (c) 1997-2013 ITB CompuPhase, AMX Mod X Team zp_extra_zombiebomb.sma(1) : error 010: invalid function or declaration include/engine.inc(16) : error 017: undefined symbol "AMXX_VERSION_NUM" zp_extra_zombiebomb.sma(404) : error 001: expected token: "}", but found "-end of file-" 3 Errors. Could not locate output file zp_extra_zombiebomb.amxx (compile failed).
Ktoś pomoze?
Użytkownik TaLoN edytował ten post 31.05.2015 19:16
Z!3L0ny
31.05.2015
Czyli co trzeba zrobić?
Znalazłem w tym pluginie error
Welcome to the AMX Mod X 1.8.1-300 Compiler. Copyright (c) 1997-2013 ITB CompuPhase, AMX Mod X Team zp_extra_zombiebomb.sma(1) : error 010: invalid function or declaration include/engine.inc(16) : error 017: undefined symbol "AMXX_VERSION_NUM" zp_extra_zombiebomb.sma(404) : error 001: expected token: "}", but found "-end of file-" 3 Errors. Could not locate output file zp_extra_zombiebomb.amxx (compile failed).Ktoś pomoze?
Daj sma
TaLoN
31.05.2015
Proszę.
#include <amxmodx> #include <engine> #include <cstrike> #include <fakemeta_util> #include <hamsandwich> #include <zombieplague> new const PLUGIN_INFO[] = { "[ZP] ZombieBomb", "2.0", "Zombie-rus/heka" } #pragma tabsize 0 new SayText const g_item_cost = 3 #define ZOMBIE_BOMB_V "models/cz/v_zombibomb.mdl" #define ZOMBIE_BOMB_P "models/cz/p_zombibomb.mdl" #define ZOMBIE_BOMB_W "models/cz/w_zombibomb.mdl" #define ZOMBIE_BOMB_BUY "items/gunpickup2.wav" #define ZOMBIE_BOMB_EXP "nst_zombie/zombi_bomb_exp.wav" #define ZOMBIE_BOMB_EXP_SPR "sprites/knockbackbomb/zombiebomb_exp.spr" new const frogbomb_sound [ ] = { "nst_zombie/zombi_bomb_pull_1.wav", "nst_zombie/zombi_bomb_deploy.wav" } new const frogbomb_sound_idle [ ] = { "nst_zombie/zombi_bomb_idle_1.wav", "nst_zombie/zombi_bomb_idle_2.wav", "nst_zombie/zombi_bomb_idle_3.wav", "nst_zombie/zombi_bomb_idle_4.wav" } #define ZOMBIE_BOMB_EXP_RADIUS 300.0 #define ZOMBIE_BOMB_EXP_POWER 650.0 #define NADE_TYPE_ZOMBIEBOMB 26517 new g_ZombieBomb_ExpSpr new g_ZombieBombID new g_ZombieBomb [33] new g_ZombieBomb_Icon[33][32] public plugin_init () { register_plugin(PLUGIN_INFO[0],PLUGIN_INFO[1],PLUGIN_INFO[2]) RegisterHam(Ham_Item_Deploy,"weapon_smokegrenade","FwdItemDeployPost",1); register_event("DeathMsg","EV_DeathMsg","a") register_event("CurWeapon","grenade_icon","be","1=1") register_forward(FM_SetModel,"fw_SetModel") RegisterHam(Ham_Think, "grenade","fw_ThinkGrenade") SayText = get_user_msgid("SayText") g_ZombieBombID = zp_register_extra_item ( "ML_KNOCKBACK_BOMB", g_item_cost, ZP_TEAM_ZOMBIE ) register_dictionary("zombie_plague.txt") } public plugin_precache ( ) { precache_model(ZOMBIE_BOMB_P) precache_model(ZOMBIE_BOMB_V) precache_model(ZOMBIE_BOMB_W) precache_sound(ZOMBIE_BOMB_BUY) precache_sound(ZOMBIE_BOMB_EXP) precache_sound ( frogbomb_sound ) precache_sound ( frogbomb_sound_idle ) precache_generic("sprites/weapon_knockback_shaxu.txt") precache_generic("sprites/knockbackbomb/640hud61x.spr") precache_generic("sprites/knockbackbomb/640hud7x.spr") g_ZombieBomb_ExpSpr = precache_model (ZOMBIE_BOMB_EXP_SPR) register_clcmd("weapon_knockback_shaxu","Hook_SelectWeapon") } public zp_extra_item_selected(id, itemid) { if (itemid != g_ZombieBombID) return; if (g_ZombieBomb[id] >= 1 ) { zp_set_user_ammo_packs(id, zp_get_user_ammo_packs(id) + g_item_cost) ChatColor(id, "!g[ZP]!y %L", id, "KNOCKBACK_MAX" ) return; } fm_give_item (id, "weapon_smokegrenade") emit_sound (id, CHAN_ITEM, ZOMBIE_BOMB_BUY, VOL_NORM, ATTN_NORM, 0, PITCH_NORM) message_begin(MSG_ONE,get_user_msgid( "AmmoPickup"), _,id) write_byte (13) write_byte (1) message_end () WeaponList_Change(id,true) g_ZombieBomb [id] = 1 } public zp_user_infected_post(id) { if(zp_get_user_nemesis(id) || zp_is_survivor_round() || zp_is_nemesis_round()) return; fm_give_item(id, "weapon_smokegrenade") engclient_cmd(id, "weapon_knife") cs_set_user_bpammo(id, CSW_SMOKEGRENADE, 1) emit_sound (id,CHAN_ITEM,ZOMBIE_BOMB_BUY,VOL_NORM,ATTN_NORM,0,PITCH_NORM) message_begin(MSG_ONE,get_user_msgid( "AmmoPickup"), _,id) write_byte (13) write_byte (1) message_end () WeaponList_Change(id,true) g_ZombieBomb [id] = 1 } public zp_user_humanized_post(id) { WeaponList_Change(id,false) g_ZombieBomb [id] = 0 } public zp_round_ended(id) { for (new i = 1; i <= get_maxplayers(); i++) { if (is_user_alive(i) && zp_get_user_zombie(i)) { ham_strip_weapon(i , "weapon_smokegrenade") WeaponList_Change(i,false) g_ZombieBomb[i] = 0 } } } public Hook_SelectWeapon(id) engclient_cmd(id,"weapon_smokegrenade") public client_connect(id) g_ZombieBomb[id] = 0 public FwdItemDeployPost(entity) { static id; id = get_pdata_cbase(entity, 41, 4); if(zp_get_user_zombie(id)) { set_pev(id,pev_viewmodel2,ZOMBIE_BOMB_V) set_pev(id,pev_weaponmodel2,ZOMBIE_BOMB_P) } } public EV_DeathMsg() { new iVictim = read_data (2) if (!is_user_connected(iVictim)) return; if(!zp_get_user_zombie(iVictim)) return remove_grenade_icon(iVictim) ham_strip_weapon(iVictim,"weapon_smokegrenade") WeaponList_Change(iVictim,false) g_ZombieBomb[iVictim] = 0 } public fw_SetModel(Entity,const Model[]) { if (Entity < 0) return FMRES_IGNORED; if (pev(Entity,pev_dmgtime) == 0.0) return FMRES_IGNORED; new iOwner = entity_get_edict ( Entity, EV_ENT_owner ) if ( g_ZombieBomb [ iOwner ] >= 1 && equal ( Model [ 7 ], "w_sm", 4 ) ) { set_pev(Entity,pev_flTimeStepSound,0) set_pev(Entity,pev_flTimeStepSound,NADE_TYPE_ZOMBIEBOMB) g_ZombieBomb[iOwner]-- entity_set_model(Entity, ZOMBIE_BOMB_W) fm_set_rendering(Entity,kRenderFxHologram,255,165,0,kRenderNormal,16) return FMRES_SUPERCEDE; } return FMRES_IGNORED; } public fw_ThinkGrenade(Entity) { if (!pev_valid(Entity)) return HAM_IGNORED; static Float:dmg_time pev (Entity,pev_dmgtime,dmg_time) if (dmg_time > get_gametime()) return HAM_IGNORED; if (pev(Entity,pev_flTimeStepSound) == NADE_TYPE_ZOMBIEBOMB) { jumping_explode (Entity) return HAM_SUPERCEDE; } return HAM_IGNORED; } public jumping_explode (Entity) { if(Entity < 0) return static Float:flOrigin [3] pev(Entity,pev_origin,flOrigin) engfunc(EngFunc_MessageBegin,MSG_PVS,SVC_TEMPENTITY,flOrigin,0) write_byte(TE_SPRITE) engfunc(EngFunc_WriteCoord,flOrigin [0]) engfunc(EngFunc_WriteCoord,flOrigin [1]) engfunc(EngFunc_WriteCoord,flOrigin [2] + 45.0) write_short( g_ZombieBomb_ExpSpr ) write_byte(35) write_byte(186) message_end() emit_sound (Entity,CHAN_WEAPON,ZOMBIE_BOMB_EXP,VOL_NORM,ATTN_NORM,0,PITCH_NORM) for (new i = 1; i < get_maxplayers (); i++) { if (!is_user_alive(i)) continue; new Float:flVictimOrigin [3] pev (i,pev_origin,flVictimOrigin) new Float:flDistance = get_distance_f(flOrigin,flVictimOrigin) if (flDistance <= ZOMBIE_BOMB_EXP_RADIUS) { static Float:flSpeed flSpeed = ZOMBIE_BOMB_EXP_POWER static Float:flNewSpeed flNewSpeed = flSpeed * (1.0 - ( flDistance / ZOMBIE_BOMB_EXP_RADIUS)) static Float:flVelocity [3] get_speed_vector(flOrigin,flVictimOrigin,flNewSpeed,flVelocity) set_pev (i,pev_velocity,flVelocity) message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("ScreenShake"), _, i) write_short((1<<12)*4) // amplitude write_short((1<<12)*10) // duration write_short((1<<12)*10) // frequency message_end() if(zp_get_user_zombie(i)) { if (pev(i, pev_health) - 20.0 <= 0) ExecuteHamB(Ham_Killed, i, i, 1) else ExecuteHamB(Ham_TakeDamage, i, 0, i, 0.0, DMG_BLAST) } } } engfunc(EngFunc_RemoveEntity,Entity) } public WeaponList_Change(id,bool:change) { if (!is_user_connected(id)) return; message_begin(MSG_ONE, get_user_msgid("WeaponList"), {0,0,0}, id) if (bool:change) write_string("weapon_knockback_shaxu") else write_string("weapon_smokegrenade") write_byte(13) write_byte(1) write_byte(-1) write_byte(-1) write_byte(3) write_byte(3) write_byte(9) write_byte(24) message_end() } public grenade_icon(id) { remove_grenade_icon(id) if(is_user_bot(id)) return static igrenade, grenade_sprite[16], grenade_color[3] igrenade = get_user_weapon(id) switch(igrenade) { case CSW_SMOKEGRENADE: { if(!is_user_alive(id) || zp_get_user_zombie(id)) { grenade_sprite = "dmg_gas" grenade_color = {255, 165, 0} } else { grenade_sprite = "" grenade_color = {0, 0, 0} } } default: return } g_ZombieBomb_Icon[id] = grenade_sprite message_begin(MSG_ONE,get_user_msgid("StatusIcon"),{0,0,0},id) write_byte(1) write_string(g_ZombieBomb_Icon[id]) write_byte(grenade_color[0]) write_byte(grenade_color[1]) write_byte(grenade_color[2]) message_end() return } public remove_grenade_icon(id) { message_begin(MSG_ONE,get_user_msgid("StatusIcon"),{0,0,0},id) write_byte(0) write_string(g_ZombieBomb_Icon[id]) message_end() } stock get_speed_vector(const Float:origin1[3],const Float:origin2[3],Float:speed, Float:new_velocity[3]) { new_velocity[0] = origin2[0] - origin1[0] new_velocity[1] = origin2[1] - origin1[1] new_velocity[2] = origin2[2] - origin1[2] new Float:num = floatsqroot(speed*speed / (new_velocity[0]*new_velocity[0] + new_velocity[1]*new_velocity[1] + new_velocity[2]*new_velocity[2])) new_velocity[0] *= num new_velocity[1] *= num new_velocity[2] *= num return 1; } stock ham_strip_weapon(id,weapon[]) { if(!equal(weapon,"weapon_",7)) return 0 new wId = get_weaponid(weapon) if(!wId) return 0 new wEnt while((wEnt = engfunc(EngFunc_FindEntityByString,wEnt,"classname",weapon)) && pev(wEnt,pev_owner) != id) {} if(!wEnt) return 0 if(get_user_weapon(id) == wId) ExecuteHamB(Ham_Weapon_RetireWeapon,wEnt) if(!ExecuteHamB(Ham_RemovePlayerItem,id,wEnt)) return 0 ExecuteHamB(Ham_Item_Kill,wEnt); set_pev(id,pev_weapons,pev(id,pev_weapons) & ~(1<<wId)) return 1 } stock ChatColor(const id, const input[], any:...) { new count = 1, players[32] static msg[191] vformat(msg, 190, input, 3) replace_all(msg, 190, "!g", "^4") // Green Color replace_all(msg, 190, "!y", "^1") // Default Color replace_all(msg, 190, "!t", "^3") // Team Color replace_all(msg, 190, "!t2", "^0") // Team2 Color 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, SayText, _, players[i]) write_byte(players[i]); write_string(msg); message_end(); } } }
MAGNET
04.06.2015
Wiadomość wygenerowana automatycznie
Ten temat został zamknięty przez moderatora.
Powód: Pomoc udzielona
Jeśli się z tym nie zgadzasz, raportuj ten post, a moderator lub administrator rozpatrzy go ponownie.
Z pozdrowieniami,
Zespół AMXX.PL
Ten temat został zamknięty przez moderatora.
Powód: Pomoc udzielona
Jeśli się z tym nie zgadzasz, raportuj ten post, a moderator lub administrator rozpatrzy go ponownie.
Z pozdrowieniami,
Zespół AMXX.PL