// Includes
#include <amxmodx>
#include <fakemeta>
#include <hamsandwich>
// Plugin info
new const PLUGIN[] = "Kill Icon"
new const VERSION[] = "0.1"
new const AUTHOR[] = "muxaz"
#define ICON_HIDE 0
#define ICON_SHOW 1
new kill_num[33]
new gMsgID
// Init
public plugin_init()
{
// Register the plugin
register_plugin(PLUGIN, VERSION, AUTHOR)
// Forwards
RegisterHam(Ham_Killed, "player", "ham_PlayerKilled")
RegisterHam(Ham_Spawn, "player", "ham_PlayerSpawned_Post", 1);
// Icon
gMsgID = get_user_msgid("StatusIcon")
}
public ham_PlayerSpawned_Post(id)
{
if (is_user_connected(id) && is_user_alive(id))
{
ammo_hud(id, 0)
kill_num[id] = 0
ammo_hud(id, 1)
}
else
{
ammo_hud(id, 0)
kill_num[id] = 0
ammo_hud(id, 1)
}
}
public ham_PlayerKilled(victim, attacker)
{
static selfkill;
selfkill = (victim == attacker || !is_user_connected(attacker)) ? true : false;
if (!selfkill)
{
ammo_hud(attacker, 0)
kill_num[attacker] += 1
ammo_hud(attacker, 1)
}
}
ammo_hud(id, sw)
{
if(is_user_bot(id)||!is_user_alive(id)||!is_user_connected(id))
return
new s_sprite[33]
format(s_sprite, 32, "number_%d", kill_num[id])
if(sw)
{
message_begin( MSG_ONE, gMsgID, {0,0,0}, id )
write_byte( ICON_SHOW ) // status
write_string( s_sprite ) // sprite name
write_byte( 250 ) // red
write_byte( 250 ) // green
write_byte( 250 ) // blue
message_end()
}
else
{
message_begin( MSG_ONE, gMsgID, {0,0,0}, id )
write_byte( ICON_HIDE ) // status
write_string( s_sprite ) // sprite name
write_byte( 250 ) // red
write_byte( 250 ) // green
write_byte( 250 ) // blue
message_end()
}
if(kill_num[id] <= 0)
{
message_begin( MSG_ONE, gMsgID, {0,0,0}, id )
write_byte( ICON_HIDE ) // status
write_string( s_sprite ) // sprite name
write_byte( 250 ) // red
write_byte( 250 ) // green
write_byte( 250 ) // blue
message_end()
}
}