#include < amxmodx >
#pragma semicolon 1
#define PLUGIN_NAME "Killer Rangs"
#define PLUGIN_VERSION "0.1"
#define PLUGIN_AUTHOR "Genius"
new g_RangTitles[ ][ ] =
{
"Bot", // With 0 kills...
"Bot", // With 1 kills...
"Bot", // With 2 kills...
"KEzdo", // With 3 kills...
"KEzdo", // With 4 kills...
"Amator", // With 5 kills...
"Amator", // With 6 kills...
"Felprofi", // With 7 kills...
"Felprofi", // With 8 kills...
"Felprofi", // With 9 kills...
"Felprofi", // With 10 kills...
"Profi", // With 11 kills...
"Profi", // With 12 kills...
"Ful profi", // With 13 kills...
"Ful profi", // With 14 kills...
"Ful profi", // With 15 kills...
"Ful profi", // With 16 kills...
"Ful profi", // With 17 kills...
"Szazados", // With 18 kills...
"Szazados", // With 19 kills...
"Szazados", // With 20 kills...
"Szazados", // With 21 kills...
"Szazados", // With 22 kills...
"Kemeny", // With 23 kills...
"Kemeny", // With 24 kills...
"Kemeny", // With 25 kills...
"Kemeny", // With 26 kills...
"Kemeny", // With 27 kills...
"Tabornok", // With 28 kills...
"Tabornok", // With 29 kills...
"Tabornok", // With 30 kills...
"Kiraly", // With 31 kills...
"Kiraly", // With 32 kills...
"Csillamlama", // With 33 kills...
"Csilamlama", // With 34 kills...
"Szero kiraly" // With 35 and more kills...
};
new g_frags[ 33 ];
new p_Enabled;
new p_MessageColor;
new g_HudSyncObj;
public plugin_init( )
{
register_plugin( PLUGIN_NAME, PLUGIN_VERSION, PLUGIN_AUTHOR );
register_event( "DeathMsg", "event_DeathMsg", "a" );
register_clcmd( "frag", "cmd_frag", ADMIN_BAN, "- Gives +1 frag of rangs" );
register_clcmd( "say frag", "cmd_frag", ADMIN_BAN, "- Gives +1 frag of rangs" );
register_clcmd( "say /frag", "cmd_frag", ADMIN_BAN, "- Gives +1 frag of rangs" );
p_Enabled = register_cvar( "amx_rangs", "1" );
p_MessageColor = register_cvar( "amx_rangs_message_color", "0 100 200" );
g_HudSyncObj = CreateHudSyncObj( );
}
public client_putinserver( id )
{
if ( get_pcvar_num( p_Enabled ) )
{
g_frags[ id ] = 0;
set_task( 1.0, "task_UpdateRang", id, "", 0, "b" );
}
}
public client_disconnect( id )
{
remove_task( id );
}
public event_DeathMsg( )
{
if ( !get_pcvar_num( p_Enabled ) )
return PLUGIN_CONTINUE;
new killer_id, victim_id;
killer_id = read_data( 1 );
victim_id = read_data( 2 );
if ( killer_id )
{
if ( killer_id != victim_id )
{
g_frags[ killer_id ]++;
}
else if ( killer_id == victim_id )
{
g_frags[ killer_id ]--;
}
}
return PLUGIN_CONTINUE;
}
public cmd_frag( id, level )
{
if ( get_pcvar_num( p_Enabled ) )
{
if ( get_user_flags( id ) & level )
{
g_frags[ id ]++;
client_print( id, print_chat, "***** +1/%d frag addedd *****", g_frags[ id ] );
}
}
return PLUGIN_HANDLED;
}
public task_UpdateRang( id )
{
new name[ 32 ], szMessageColor[ 64 ], szRed[ 8 ], szGreen[ 8 ], szBlue[ 8 ], nRed, nGreen, nBlue;
get_user_name( id, name, charsmax( name ) );
get_pcvar_string( p_MessageColor, szMessageColor, charsmax( szMessageColor ) );
parse( szMessageColor, szRed, charsmax( szRed ), szGreen, charsmax( szGreen ), szBlue, charsmax( szBlue ) );
nRed = str_to_num( szRed );
nGreen = str_to_num( szGreen );
nBlue = str_to_num( szBlue );
if ( g_frags[ id ] > ( sizeof( g_RangTitles ) - 1 ) )
{
set_hudmessage( nRed, nGreen, nBlue, 0.02, 0.23, 0, 0.0, 1.0, 0.0, 0.01, -1 );
ShowSyncHudMsg( id, g_HudSyncObj, "Nev: %s^nFrags: %d^nRang: %s", name, g_frags[ id ], g_RangTitles[ ( sizeof( g_RangTitles ) - 1 ) ] );
}
else
{
set_hudmessage( nRed, nGreen, nBlue, 0.02, 0.23, 0, 0.0, 1.0, 0.0, 0.01, -1 );
ShowSyncHudMsg( id, g_HudSyncObj, "Nev: %s^nFrags: %d^nRang: %s", name, g_frags[ id ], g_RangTitles[ g_frags[ id ] ] );
}
}