#include <amxmodx>
#include <fakemeta_util>
#define PLUGIN "Bomb Effect Defuse"
#define VERSION "1.0"
#define AUTHOR "MayroN"
#define m_flNextBlink 106
new g_iBomb;
public plugin_init()
{
if((engfunc(EngFunc_FindEntityByString, FM_NULLENT, "classname", "info_bomb_target") > 0) || (engfunc(EngFunc_FindEntityByString, FM_NULLENT, "classname", "func_bomb_target") > 0))
{
register_plugin(PLUGIN, VERSION, AUTHOR);
register_event("BarTime", "Stop_Effect", "b", "1=0");
}
}
public bomb_defusing(defuser)
{
g_iBomb = FM_NULLENT;
while((g_iBomb = engfunc(EngFunc_FindEntityByString, g_iBomb, "classname", "grenade")))
{
set_pdata_float(g_iBomb, m_flNextBlink, 9999.9);
new effect = random_num (0, 1)
switch (effect)
{
case 0:
{
fm_set_rendering(g_iBomb, kRenderFxDistort, 0, 0, 0, kRenderTransAdd, 180);
}
case 1:
{
fm_set_rendering(g_iBomb, kRenderFxGlowShell, 0, 255, 0, kRenderNormal, 25);
}
}
}
}
public Stop_Effect()
{
g_iBomb = FM_NULLENT;
while((g_iBomb = engfunc(EngFunc_FindEntityByString, g_iBomb, "classname", "grenade")))
{
set_pdata_float(g_iBomb, m_flNextBlink, 0.0);
fm_set_rendering(g_iBomb, kRenderFxNone, 255, 255, 255, kRenderNormal, 16);
}
}