Code:
#include <amxmodx>
#if !defined MAX_PLAYERS
const MAX_PLAYERS = 32
#endif
#if !defined client_disconnected
#define client_disconnected client_disconnect
#endif
#define COUNTER_COLOR 0, 255, 0
#define COUNTER_POSITION -1.0, 0.1
const Float:COUNTER_REFRESH = 1.0
enum _:FragInfo { Frags, Headshots }
new g_iFrags[MAX_PLAYERS + 1][FragInfo], g_iSyncObj
public plugin_init()
{
register_plugin("Frag Counter", "1.0", "OciXCrom")
register_event("DeathMsg", "OnPlayerKilled", "a")
g_iSyncObj = CreateHudSyncObj()
}
public client_putinserver(id)
{
g_iFrags[id][Frags] = 0
g_iFrags[id][Headshots] = 0
set_task(COUNTER_REFRESH, "display_frags", id, .flags = "b")
}
public client_disconnected(id)
{
remove_task(id)
}
public display_frags(id)
{
if(is_user_alive(id))
{
set_hudmessage(COUNTER_COLOR, COUNTER_POSITION, .holdtime = COUNTER_REFRESH)
ShowSyncHudMsg(id, g_iSyncObj, "%i (%i HS)", g_iFrags[id][Frags], g_iFrags[id][Headshots])
}
}
public OnPlayerKilled()
{
new iAttacker = read_data(1)
if(is_user_connected(iAttacker) && iAttacker != read_data(2))
{
g_iFrags[iAttacker][Frags]++
if(read_data(3))
{
g_iFrags[iAttacker][Headshots]++
}
}
}
__________________