Hmmm, this wont let me connect to my server . But theres no run time errors. Any ideas ? I changed the origins to floats .
Code:
#include <amxmodx>
#include <fakemeta_util>
new g_Switch;
new g_Mode[8];
new g_Fire;
new g_HE_Fx;
new g_SG_Fx;
new g_FB_Fx;
new g_FireWorks;
new g_Smoke;
new Lightning;
new Float: SG_Origin[3];
new Float: HE_Origin[3];
new Float: FB_Origin[3];
public plugin_init()
{
register_plugin("Advanced Nade Effects","0.1","The Specialist");
g_Switch = register_cvar("he_switch","1");
g_HE_Fx = register_cvar("he_fx","a");
g_SG_Fx = register_cvar("sg_fx","a");
g_FB_Fx = register_cvar("fb_fx","a");
register_forward(FM_PlayerPreThink,"HeNadeEffects");
}
public HeNadeEffects()
{
if(get_pcvar_num(g_Switch))
{
new HE = fm_find_ent_by_model(-1,"grenade","w_hegrenade.mdl");
new HE_Owner = pev(HE,pev_owner);
new g_iMode = read_flags(g_Mode);
get_pcvar_string(g_HE_Fx,g_Mode,7);
pev(HE,pev_origin,HE_Origin);
if(g_iMode & 1 )
{
message_begin(MSG_BROADCAST ,SVC_TEMPENTITY);
write_byte(8)
write_short(HE)
write_short(g_Fire)
write_byte(10)
write_byte(10)
write_byte(250)
write_byte(250)
write_byte(250)
write_byte(250)
message_end();
}
if(g_iMode & 2 )
{
message_begin(MSG_BROADCAST ,SVC_TEMPENTITY);
write_byte(8)
write_short(HE)
write_short(g_FireWorks)
write_byte(10)
write_byte(2)
write_byte(0)
write_byte(0)
write_byte(0)
write_byte(250)
message_end();
}
if(g_iMode & 4 )
{
message_begin(MSG_BROADCAST ,SVC_TEMPENTITY);
write_byte(5);
engfunc(EngFunc_WriteCoord,HE_Origin[0]);
engfunc(EngFunc_WriteCoord,HE_Origin[1]);
engfunc(EngFunc_WriteCoord,HE_Origin[2]);
write_short(g_Smoke);
write_byte(255);
write_byte(0);
message_end();
}
if(g_iMode & 8 )
{
message_begin(MSG_BROADCAST ,SVC_TEMPENTITY);
write_byte(28);
write_short(HE);
engfunc(EngFunc_WriteCoord,HE_Origin[0]);
engfunc(EngFunc_WriteCoord,HE_Origin[1]);
engfunc(EngFunc_WriteCoord,HE_Origin[2]);
engfunc(EngFunc_WriteCoord,10);
write_byte(250);
write_byte(250);
write_byte(250);
write_byte(10);
write_coord(10);
message_end();
}
if(g_iMode & 16 )
{
message_begin( MSG_BROADCAST, SVC_TEMPENTITY)
write_byte(8);
write_short(HE_Owner);
write_short(HE);
write_short(Lightning);
write_byte(0)
write_byte(0);
write_byte(25);
write_byte(30);
write_byte(10);
write_byte(255);
write_byte(255);
write_byte(255)
write_byte(255);
write_byte(0);
message_end()
}
if( g_iMode & 32)
{
message_begin( MSG_BROADCAST, SVC_TEMPENTITY);
write_byte(9)
engfunc(EngFunc_WriteCoord,HE_Origin[0]);
engfunc(EngFunc_WriteCoord,HE_Origin[1]);
engfunc(EngFunc_WriteCoord,HE_Origin[2]);
message_end();
}
}
FlashEffects();
}
public FlashEffects()
{
if(get_pcvar_num(g_Switch))
{
new FB = fm_find_ent_by_model(-1,"grenade","w_flashbang.mdl");
new FB_Owner = pev(FB,pev_owner);
new g_iMode = read_flags(g_Mode);
get_pcvar_string(g_FB_Fx,g_Mode,7);
pev(FB,pev_origin,FB_Origin);
if(g_iMode & 1 )
{
message_begin(MSG_BROADCAST ,SVC_TEMPENTITY);
write_byte(8)
write_short(FB)
write_short(g_Fire)
write_byte(10)
write_byte(2)
write_byte(0)
write_byte(0)
write_byte(0)
write_byte(250)
message_end();
}
if(g_iMode & 2 )
{
message_begin(MSG_BROADCAST ,SVC_TEMPENTITY);
write_byte(8)
write_short(FB)
write_short(g_FireWorks)
write_byte(10)
write_byte(2)
write_byte(0)
write_byte(0)
write_byte(0)
write_byte(250)
message_end();
}
if(g_iMode & 4 )
{
message_begin(MSG_BROADCAST ,SVC_TEMPENTITY);
write_byte(5);
engfunc(EngFunc_WriteCoord,FB_Origin[0]);
engfunc(EngFunc_WriteCoord,FB_Origin[1]);
engfunc(EngFunc_WriteCoord,FB_Origin[2]);
write_short(g_Smoke);
write_byte(255);
write_byte(0);
message_end();
}
if(g_iMode & 8 )
{
message_begin(MSG_BROADCAST ,SVC_TEMPENTITY);
write_byte(28);
write_short(FB);
engfunc(EngFunc_WriteCoord,FB_Origin[0]);
engfunc(EngFunc_WriteCoord,FB_Origin[1]);
engfunc(EngFunc_WriteCoord,FB_Origin[2]);
engfunc(EngFunc_WriteCoord,10);
write_byte(250);
write_byte(250);
write_byte(250);
write_byte(10);
write_coord(10);
message_end();
}
if(g_iMode & 16 )
{
message_begin( MSG_BROADCAST, SVC_TEMPENTITY)
write_byte(8);
write_short(FB_Owner);
write_short(FB);
write_short(Lightning);
write_byte(0)
write_byte(0);
write_byte(25);
write_byte(30);
write_byte(10);
write_byte(255);
write_byte(255);
write_byte(255)
write_byte(255);
write_byte(0);
message_end()
}
if( g_iMode & 32)
{
message_begin( MSG_BROADCAST, SVC_TEMPENTITY);
write_byte(9)
engfunc(EngFunc_WriteCoord,FB_Origin[0]);
engfunc(EngFunc_WriteCoord,FB_Origin[1]);
engfunc(EngFunc_WriteCoord,FB_Origin[2]);
message_end();
}
}
SmokeEffects();
return;
}
public SmokeEffects()
{
if(get_pcvar_num(g_Switch))
{
new SG = fm_find_ent_by_model(-1,"grenade","w_smokegrenade.mdl");
new SG_Owner = pev(SG,pev_owner);
new g_iMode = read_flags(g_Mode);
get_pcvar_string(g_SG_Fx,g_Mode,7);
pev(SG,pev_origin,SG_Origin);
if(g_iMode & 1 )
{
message_begin(MSG_BROADCAST ,SVC_TEMPENTITY);
write_byte(8)
write_short(SG)
write_short(g_Fire)
write_byte(10)
write_byte(2)
write_byte(0)
write_byte(0)
write_byte(0)
write_byte(250)
message_end();
}
if(g_iMode & 2 )
{
message_begin(MSG_BROADCAST ,SVC_TEMPENTITY);
write_byte(8)
write_short(SG)
write_short(g_FireWorks)
write_byte(10)
write_byte(2)
write_byte(0)
write_byte(0)
write_byte(0)
write_byte(250)
message_end();
}
if(g_iMode & 4 )
{
message_begin(MSG_BROADCAST ,SVC_TEMPENTITY);
write_byte(5);
engfunc(EngFunc_WriteCoord,SG_Origin[0]);
engfunc(EngFunc_WriteCoord,SG_Origin[1]);
engfunc(EngFunc_WriteCoord,SG_Origin[2]);
write_short(g_Smoke);
write_byte(255);
write_byte(0);
message_end();
}
if(g_iMode & 8 )
{
message_begin(MSG_BROADCAST ,SVC_TEMPENTITY);
write_byte(28);
write_short(SG);
engfunc(EngFunc_WriteCoord,SG_Origin[0]);
engfunc(EngFunc_WriteCoord,SG_Origin[1]);
engfunc(EngFunc_WriteCoord,SG_Origin[2]);
engfunc(EngFunc_WriteCoord,10);
write_byte(250);
write_byte(250);
write_byte(250);
write_byte(10);
write_coord(10);
message_end();
}
if(g_iMode & 16 )
{
message_begin( MSG_BROADCAST, SVC_TEMPENTITY)
write_byte(8);
write_short(SG_Owner);
write_short(SG);
write_short(Lightning);
write_byte(0)
write_byte(0);
write_byte(25);
write_byte(30);
write_byte(10);
write_byte(255);
write_byte(255);
write_byte(255)
write_byte(255);
write_byte(0);
message_end()
}
if( g_iMode & 32)
{
message_begin( MSG_BROADCAST, SVC_TEMPENTITY);
write_byte(9)
engfunc(EngFunc_WriteCoord,SG_Origin[0]);
engfunc(EngFunc_WriteCoord,SG_Origin[1]);
engfunc(EngFunc_WriteCoord,SG_Origin[2]);
message_end();
}
}
return 0;
}
public plugin_precache()
{
g_FireWorks = precache_model("sprites/fireworkbest.spr");
g_Fire = precache_model("sprites/flame.spr");
g_Smoke = precache_model("sprites/steam1.spr");
Lightning = precache_model("sprites/lgtning.spr");
}