| razermamba |
03-11-2013 12:06 |
Plugin Error
Hi all. I have hosting server running on linux. I made plugin and it should work cause I have tested it on my LAN server and it worked great. The main problem is that when I run server, it shows this in console and server stop:
MasterRequestRestart
Your server needs to be restarted in order to receive the latest update.
Uploading dump (in-process) [proxy '']
/tmp/dumps/crash_20130311170216_1.dmp
success = no
error: Failed to open/read local data from file/application
Segmentation fault
Server is updated. I wrote to support and they told me that it is caused by my plugin. Without plugin server works. Please help me. Thx
P.S: Pleae do not write sentences like "Oh it is bad coded etc.". I have not done optimalizations yet.
PHP Code:
/* Plugin generated by AMXX-Studio */
#include <amxmodx> #include <amxmisc> #include <fakemeta> #include <hamsandwich> #include <cstrike> #include <fun> #include <engine> #include <playermodel>
#define PLUGIN "Umbrella Swarm RELOADED" #define VERSION "1.0" #define AUTHOR "P.72 Dragon"
#define HIDE_FLASH (1<<1) //flashlight, + #define HIDE_HP_HUD (1<<3) //Health, armour and radar #define HIDE_MONEY (1<<5) //money, + #define TASKID_HUD 2931
new const g_hunterleap[] = "umbrella/hunter_leap.wav"
new const ZOMBIE_MODEL [] = "models/player/hunter/hunter.mdl";
new const g_ZombieClaws[] = "models/v_hunter_knife.mdl";
new const g_sound_zombiewin[] = "umbrella/zombiewin.wav"; new const g_sound_humanwin[] = "umbrella/humanwin.wav";
new bool: g_bFreezeTime;
new const g_sound_miss[][]= { "Left4Dead/Hunter_miss1.wav", "Left4Dead/Hunter_miss2.wav", "Left4Dead/Hunter_miss3.wav" };
new const g_sound_hit[][]= { "Left4Dead/Hunter_strike1.wav", "Left4Dead/Hunter_strike2.wav", "Left4Dead/Hunter_strike3.wav" };
new const g_sound_pain[][]= { "Left4Dead/Hunter_pain1.wav", "Left4Dead/Hunter_pain2.wav", "Left4Dead/Hunter_pain3.wav" };
new const g_sound_die[][]= { "Left4Dead/Hunter_die1.wav", "Left4Dead/Hunter_die2.wav" };
new g_Zombie[33] new g_SpawnOn[33] new msg_hideweapon new g_hudsync new bool: g_hasLeap[33] new Float: g_LastLeap[33]
new cvar_health, cvar_armor, cvar_gravity, cvar_speed, cvar_respawn, cvar_switch, cvar_semiclip, cvar_semiclip_t, cvar_semiclip_ct, cvar_Leap, cvar_LeapCooldown, cvar_LeapForce, cvar_LeapHeight;
public plugin_precache() { precache_model(ZOMBIE_MODEL) /*for(new i = 0; i < sizeof ZOMBIE_MODEL; i++) { new modelpath[256]; formatex( modelpath, 255, "models/player/%s/%s.mdl", ZOMBIE_MODEL[i], ZOMBIE_MODEL[i] ); precache_model(modelpath); }*/ new i; for(i = 0; i < sizeof g_sound_die; i++) engfunc(EngFunc_PrecacheSound, g_sound_die[i]); for(i = 0; i < sizeof g_sound_hit; i++) engfunc(EngFunc_PrecacheSound, g_sound_hit[i]); for(i = 0; i < sizeof g_sound_miss; i++) engfunc(EngFunc_PrecacheSound, g_sound_miss[i]); for(i = 0; i < sizeof g_sound_pain; i++) engfunc(EngFunc_PrecacheSound, g_sound_pain[i]); precache_model(g_ZombieClaws); precache_sound(g_sound_zombiewin); precache_sound(g_sound_humanwin); precache_sound(g_hunterleap); }
public plugin_init() { register_plugin(PLUGIN, VERSION, AUTHOR); cvar_Leap = register_cvar("zswarm_leap", "1"); cvar_LeapCooldown = register_cvar("zswarm_cooldown","5.0"); cvar_LeapForce = register_cvar("zswarm_lforce", "525"); cvar_LeapHeight = register_cvar("zswarm_lheight", "260"); cvar_health = register_cvar ("us_health", "600"); cvar_armor = register_cvar ("us_armor", "200"); cvar_gravity = register_cvar ("us_gravity", "0.75"); cvar_speed = register_cvar ("us_speed", "300.0"); cvar_respawn = register_cvar("us_respawn", "3"); cvar_switch = register_cvar("us_switch", "3"); cvar_semiclip = register_cvar("us_noclip", "1"); cvar_semiclip_t = register_cvar("us_noclip_t", "0"); cvar_semiclip_ct = register_cvar("us_noclip_ct", "1"); g_hudsync = CreateHudSyncObj() RegisterHam(Ham_Spawn, "player", "PlayerSpawn", 1); RegisterHam(Ham_Item_PreFrame, "player", "ResetMaxSpeed", 1) register_forward(FM_EmitSound, "EmitSound"); register_forward(FM_Touch, "EnityTouch"); register_forward(FM_CmdStart, "Forward_CmdStart"); register_event("CurWeapon", "CurrentWeapon", "be", "1=1"); register_event("DeathMsg", "Event_DeathMessage", "b"); register_logevent("RoundEnd", 2, "1=Round_End"); msg_hideweapon = get_user_msgid("HideWeapon") register_message(get_user_msgid("SendAudio"), "Message_SendAudio"); }
public client_connect(id) { g_hasLeap[id] = false }
public PlayerSpawn(id) { if(!is_user_alive(id)) return; if(cs_get_user_team(id) == CS_TEAM_T) { new Health, Armor, Float: Gravity Health = get_pcvar_num(cvar_health); Armor = get_pcvar_num(cvar_armor); Gravity = get_pcvar_float(cvar_gravity); g_Zombie[id] = true set_pev(id, pev_health, float(Health)); cs_set_user_armor(id, Armor, CS_ARMOR_VESTHELM); set_pev(id, pev_gravity, Gravity); g_hasLeap[id] = true; fm_set_user_model(id, ZOMBIE_MODEL, true) if(!cs_get_user_nvg(id)) cs_set_user_nvg(id); set_task(0.2, "Task_HUD", TASKID_HUD + id) } if(cs_get_user_team(id) == CS_TEAM_CT) { g_Zombie[id] = false set_pev(id, pev_health, 100.0); } }
public ResetMaxSpeed(id) { if(is_user_alive(id) && cs_get_user_team(id) == CS_TEAM_T) { new Float: Speed Speed = get_pcvar_float(cvar_speed) entity_set_float(id, EV_FL_maxspeed, Speed) } }
public Forward_CmdStart(id, uc_handle, seed) { if(!is_user_alive(id)) return FMRES_IGNORED;
static Float: flTime ; flTime = get_gametime(); static iButton ; iButton = get_uc(uc_handle, UC_Buttons ); static fViewAngles[3] ; get_uc(uc_handle, UC_ViewAngles, fViewAngles);
static iFlag ; iFlag = entity_get_int(id, EV_INT_flags);
static aim, body, szAimingEnt[32]; get_user_aiming(id, aim, body, 60); entity_get_string(aim, EV_SZ_classname, szAimingEnt, charsmax(szAimingEnt)); if (g_Zombie[id]) { if (!g_bFreezeTime && (iButton & IN_ATTACK) && (iButton & IN_DUCK) && (iFlag & FL_ONGROUND)) { if (get_pcvar_num(cvar_Leap)) { static Float: fl_CoolDown ; fl_CoolDown = get_pcvar_float(cvar_LeapCooldown); { if(flTime - fl_CoolDown > g_LastLeap[id]) { clcmd_leap(id); g_LastLeap[id] = flTime; } } } } } return FMRES_IGNORED }
public clcmd_leap(id) { new Float: velocity[3]; new Float: lheight, lforce; lforce = get_pcvar_num(cvar_LeapForce); lheight = get_pcvar_float(cvar_LeapHeight);
velocity_by_aim(id, lforce, velocity); velocity[2] = lheight; entity_set_vector(id, EV_VEC_velocity, velocity); emit_sound(id, CHAN_VOICE, g_hunterleap, VOL_NORM, ATTN_NORM, 0, PITCH_NORM); }
public EntityTouch(toucher, touched) { if(!get_pcvar_num(cvar_semiclip)) return PLUGIN_HANDLED; else if (get_pcvar_num(cvar_semiclip)) entity_set_int(toucher,EV_INT_solid,SOLID_NOT); if(!get_pcvar_num(cvar_semiclip_ct)) return PLUGIN_HANDLED; else if (get_pcvar_num(cvar_semiclip_ct) && cs_get_user_team(toucher) == CS_TEAM_CT ) entity_set_int(toucher,EV_INT_solid,SOLID_NOT); if(!get_pcvar_num(cvar_semiclip_t)) return PLUGIN_HANDLED; else if (get_pcvar_num(cvar_semiclip_t) && cs_get_user_team(toucher) == CS_TEAM_T ) entity_set_int(toucher,EV_INT_solid,SOLID_NOT); return PLUGIN_HANDLED; }
public RoundEnd() { static RoundCounter = 0; RoundCounter ++; new CvarRound = get_pcvar_num(cvar_switch); new players[32], iNum, id; get_players(players, iNum); if(RoundCounter >= CvarRound && 1 < iNum) { set_hudmessage(255, 0, 0, -1.0, -1.0, 1, 6.0, 12.0); show_hudmessage(0, "Switching Teams!");
for(new i = 0; i < iNum; i++) { id = players[i]; g_SpawnOn[id] = false switch((cs_get_user_team(id))) { case CS_TEAM_CT: { cs_set_user_team(id, CS_TEAM_T); } case CS_TEAM_T: { cs_set_user_team(id, CS_TEAM_CT); } } } RoundCounter = 0; } else if (1 < iNum) { set_hudmessage(255, 0, 0, -1.0, -1.0, 1, 6.0, 12.0); show_hudmessage(0, "Rounds left until switching: %d", (CvarRound - RoundCounter)); } } public EmitSound(id, channel, sample[], Float:volume, Float:attn, flag, pitch) { if(!is_user_connected(id)) return FMRES_IGNORED;
if(g_Zombie[id]) { //KNIFE if (sample[0] == 'w' && sample[1] == 'e' && sample[8] == 'k' && sample[9] == 'n') { switch(sample[17]) { case 'l': return FMRES_SUPERCEDE;
case 's', 'w': { emit_sound(id, CHAN_WEAPON, g_sound_miss[random(sizeof g_sound_miss)], volume, attn, flag, pitch); return FMRES_SUPERCEDE; }
case 'b', '1', '2', '3', '4': { emit_sound(id, CHAN_WEAPON, g_sound_hit[random(sizeof g_sound_hit)], volume, attn, flag, pitch); return FMRES_SUPERCEDE; } } } //PAIN else if (sample[1] == 'l' && sample[2] == 'a' && sample[3] == 'y') { emit_sound(id, CHAN_VOICE, g_sound_pain[random(sizeof g_sound_pain)], volume, attn, flag, pitch); return FMRES_SUPERCEDE; } //DEATH else if (sample[7] == 'd' && (sample[8] == 'i' && sample[9] == 'e' || sample[12] == '6')) { emit_sound(id, CHAN_VOICE, g_sound_die[random(sizeof g_sound_die)], volume, attn, flag, pitch); return FMRES_SUPERCEDE; } else if (sample[6] == 'n' && sample[7] == 'v' && sample[8] == 'g') return FMRES_SUPERCEDE; } return FMRES_IGNORED; }
public CurrentWeapon(id) { if(!is_user_alive(id) || cs_get_user_team(id) != CS_TEAM_T) return; if(read_data(2) != CSW_KNIFE ) { engclient_cmd(id, "weapon_knife"); UTIL_SetModel(id, g_ZombieClaws, ""); message_begin(MSG_ONE, msg_hideweapon, _ , id) write_byte(HIDE_FLASH | HIDE_HP_HUD | HIDE_MONEY) message_end() } }
public Event_DeathMessage() { new victim = read_data(2); set_task(get_pcvar_float(cvar_respawn), "FM_Respawn", victim); }
public Message_SendAudio(msg_id, msg_dest, id) { static AudioCode[22]; get_msg_arg_string(2, AudioCode, charsmax(AudioCode)); if(equal(AudioCode, "%!MRAD_terwin")) set_msg_arg_string(2, g_sound_zombiewin); if(equal(AudioCode, "%!MRAD_ctwin")) set_msg_arg_string(2, g_sound_humanwin); if(equal(AudioCode, "!%MRAD_rounddraw")) set_msg_arg_string(2, g_sound_humanwin); return PLUGIN_CONTINUE; }
public FM_Respawn(id) { if(is_user_connected(id) && !is_user_alive(id) && cs_get_user_team(id) == CS_TEAM_T && g_SpawnOn[id]) { set_pev(id,pev_deadflag,DEAD_RESPAWNABLE) dllfunc(DLLFunc_Think, id); }
return PLUGIN_CONTINUE; }
public Task_HUD(task) { new id = task - TASKID_HUD if(!is_user_alive(id)) return PLUGIN_HANDLED if(cs_get_user_team(id) == CS_TEAM_T) { static health health = get_user_health(id) set_hudmessage(255, 0, 0, 0.02, 0.97, 0, 0.0, 0.3, 0.0, 0.0) ShowSyncHudMsg(id, g_hudsync , "Health: %d || Destroy All Survivor|| Visit our website www.gamestreets.eu", health) set_task(0.1, "Task_HUD", TASKID_HUD + id) } return PLUGIN_CONTINUE } /*=========================Stocks=============================*/
stock UTIL_SetModel ( const PlayerId, const viewModel[], weaponModel[] ) { entity_set_string( PlayerId, EV_SZ_viewmodel, viewModel); entity_set_string( PlayerId, EV_SZ_weaponmodel, weaponModel); }
Dragonus
|