Code:
#include <amxmodx>
#include <fakemeta>
#include <engine>
#include <cstrike>
#include <hamsandwich>
#define TASK_HUD_REMOVE 4853453
new userSpr[33][6], g_buytime, bool:bTimeIsOver;
new const g_szSprites[][] =
{
"sprites/1.spr",
"sprites/10.spr",
"sprites/100.spr",
"sprites/1000.spr",
"sprites/10000.spr",
"sprites/cash.spr"
}
public plugin_init()
{
register_event("DeathMsg", "event_deathmsg", "a");
register_event("HLTV", "event_new_round", "a", "1=0", "2=0");
register_think("LOL", "fw_think");
RegisterHam(Ham_Spawn, "player", "player_got_spawned", 1);
g_buytime = get_cvar_pointer("mp_buytime");
}
public plugin_precache()
{
for(new i = 0; i < sizeof g_szSprites; i++)
precache_model(g_szSprites[i]);
}
public client_disconnected(id)
{
for(new i; i < sizeof userSpr[]; i++)
{
if(userSpr[id][i] > 0) remove_entity(userSpr[id][i]);
userSpr[id][i] = 0;
}
}
public reset(id)
{
for(new i; i < sizeof userSpr[]; i++)
{
if(userSpr[id][i] > 0) remove_entity(userSpr[id][i]);
userSpr[id][i] = 0;
}
}
public event_deathmsg()
{
reset(read_data(2));
}
public player_got_spawned(id)
{
if(!is_user_alive(id) || bTimeIsOver) return;
reset(id) ;
set_user_HUDMONEY_onhead(id);
}
public event_new_round()
{
bTimeIsOver = false;
remove_task(TASK_HUD_REMOVE)
set_task(floatclamp(get_pcvar_float(g_buytime), 1.0, 60.0 * 20.0), "task_remove_HUD", TASK_HUD_REMOVE);
}
public task_remove_HUD()
{
new players[32],pnum;
get_players(players, pnum, "ah");
for(new i; i < pnum; i++)
{
reset(players[i]);
}
bTimeIsOver = true;
}
set_user_HUDMONEY_onhead(id)
{
new ent = create_entity("env_sprite");
new Float:gTime = get_gametime();
if(ent > 0)
{
userSpr[id][0] = ent;
set_pev(ent, pev_classname, "LOL");
set_pev(ent, pev_nextthink, gTime + 0.1);
set_pev(ent, pev_movetype, MOVETYPE_NOCLIP);
engfunc(EngFunc_SetModel, ent, g_szSprites[0]);
set_pev(ent, pev_iuser4, id);
set_pev(ent, pev_iuser3, 4);
set_pev(ent, pev_frame, 0.0)
set_pev(ent, pev_framerate, 1.0)
set_pev(ent, pev_scale, 0.2)
set_rendering(ent, kRenderFxNone, 0, 255, 0, kRenderTransAdd, 200)
}
new ent2 = create_entity("env_sprite");
if(ent2 > 0)
{
userSpr[id][1] = ent2;
set_pev(ent2, pev_classname, "LOL");
set_pev(ent2, pev_nextthink, gTime + 0.1);
set_pev(ent2, pev_movetype, MOVETYPE_NOCLIP);
engfunc(EngFunc_SetModel, ent2, g_szSprites[1]);
set_pev(ent2, pev_iuser4, id);
set_pev(ent2, pev_iuser3, 3);
set_pev(ent2, pev_frame, 0.0)
set_pev(ent2, pev_framerate, 1.0)
set_pev(ent2, pev_scale, 0.2)
set_rendering(ent2, kRenderFxNone, 0, 255, 0, kRenderTransAdd, 200)
}
new ent3 = create_entity("env_sprite");
if(ent3 > 0)
{
userSpr[id][2] = ent3;
set_pev(ent3, pev_classname, "LOL");
set_pev(ent3, pev_nextthink, gTime + 0.1);
set_pev(ent3, pev_movetype, MOVETYPE_NOCLIP);
engfunc(EngFunc_SetModel, ent3, g_szSprites[2]);
set_pev(ent3, pev_iuser4, id);
set_pev(ent3, pev_iuser3, 2);
set_pev(ent3, pev_frame, 0.0)
set_pev(ent3, pev_framerate, 1.0)
set_pev(ent3, pev_scale, 0.2)
set_rendering(ent3, kRenderFxNone, 0, 255, 0, kRenderTransAdd, 200)
}
new ent4 = create_entity("env_sprite");
if(ent4 > 0)
{
userSpr[id][3] = ent4;
set_pev(ent4, pev_classname, "LOL");
set_pev(ent4, pev_nextthink, gTime + 0.1);
set_pev(ent4, pev_movetype, MOVETYPE_NOCLIP);
engfunc(EngFunc_SetModel, ent4, g_szSprites[3]);
set_pev(ent4, pev_iuser4, id);
set_pev(ent4, pev_iuser3, 1);
set_pev(ent4, pev_frame, 0.0)
set_pev(ent4, pev_framerate, 1.0)
set_pev(ent4, pev_scale, 0.2)
set_rendering(ent4, kRenderFxNone, 0, 255, 0, kRenderTransAdd, 200)
}
new ent5 = create_entity("env_sprite");
if(ent5 > 0)
{
userSpr[id][4] = ent5;
set_pev(ent5, pev_classname, "LOL");
set_pev(ent5, pev_nextthink, gTime + 0.1);
set_pev(ent5, pev_movetype, MOVETYPE_NOCLIP);
engfunc(EngFunc_SetModel, ent5, g_szSprites[4]);
set_pev(ent5, pev_iuser4, id);
set_pev(ent5, pev_iuser3, 0);
set_pev(ent5, pev_frame, 0.0)
set_pev(ent5, pev_framerate, 1.0)
set_pev(ent5, pev_scale, 0.2)
set_rendering(ent5, kRenderFxNone, 0, 255, 0, kRenderTransAdd, 200)
}
new ent6 = create_entity("env_sprite");
if(ent > 0)
{
userSpr[id][5] = ent6;
set_pev(ent6, pev_classname, "LOL");
engfunc(EngFunc_SetModel, ent6, g_szSprites[5]);
set_pev(ent6, pev_nextthink, gTime + 0.1);
set_pev(ent6, pev_movetype, MOVETYPE_NOCLIP);
set_pev(ent6, pev_iuser4, id);
set_pev(ent6, pev_iuser3, 5);
set_pev(ent6, pev_frame, 1.0)
set_pev(ent6, pev_framerate, 1.0)
set_pev(ent6, pev_scale, 0.22)
set_rendering(ent6, kRenderFxNone, 0, 255, 0, kRenderTransAdd, 200)
}
}
public fw_think(ent)
{
static Float:fOrigin[3], x, iUser;
pev((iUser=pev(ent, pev_iuser4)), pev_origin, fOrigin)
fOrigin[2] += 50.0;
set_pev(ent, pev_origin, fOrigin);
x = pev(ent, pev_iuser3);
if(x == 5)
{
set_pev(ent, pev_nextthink, get_gametime() + 0.1);
return;
}
static szMoney[6], szValue[2];
arrayset(szMoney, 0, sizeof szMoney);
num_to_str(cs_get_user_money(iUser), szMoney, charsmax(szMoney));
if(szMoney[x] == 0)
{
set_rendering(ent, kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 0)
set_pev(ent, pev_nextthink, get_gametime() + 0.1);
return;
}
szValue[0] = szMoney[x];
szValue[1] = 0;
set_rendering(ent, kRenderFxNone, 0, 255, 0, kRenderTransAdd, 200)
set_pev(ent, pev_frame, floatstr(szValue))
set_pev(ent, pev_nextthink, get_gametime() + 0.1);
}
But why did the plugin on this topic never work for me? I see that the plugins are similar...