# Not Tested
# I Think This Will Look Laggy
Code:
#include <amxmodx>
#include <cstrike>
#include <fakemeta>
#define m_iFOV 363
new const DEFAULT_FOV = 90;
new sprite,toggle_plugin;
new redb,greenb,blueb;
public plugin_init() {
register_plugin("Laser Beam","","");
set_task(0.1,"show_beam2",0,"",0,"b");
toggle_plugin = register_cvar("amx_showbeam","1");
redb = register_cvar("amx_redbeam","255");
greenb = register_cvar("amx_greenbeam","2");
blueb = register_cvar("amx_bluebeam","0");
}
public plugin_precache()
{
sprite = precache_model("sprites/laserbeam.spr");
}
public show_beam2(id)
{
static iPlayers[32], iPlayer, pNum;
get_players( iPlayers, pNum, "a" );
new origin[3];
if((get_pcvar_num(toggle_plugin) == 1)){
for(new i=0; i < pNum; i++)
{
iPlayer = iPlayers[i];
if (get_user_weapon(iPlayer) != CSW_AWP)
continue;
if (get_pdata_int(iPlayer, m_iFOV) == DEFAULT_FOV)
continue;
get_user_origin(iPlayer,origin,3);
message_begin(MSG_BROADCAST,SVC_TEMPENTITY);
write_byte(TE_BEAMENTPOINT);
write_short(iPlayer | 0x1000);
write_coord(origin[0]);
write_coord(origin[1]);
write_coord(origin[2]);
write_short(sprite);
write_byte(0);
write_byte(0);
write_byte(1);
write_byte(10);
write_byte(0);
write_byte(get_pcvar_num(redb));
write_byte(get_pcvar_num(greenb));
write_byte(get_pcvar_num(blueb));
write_byte(200);
write_byte(1);
message_end();
}
}
return PLUGIN_HANDLED;
}
__________________