Raised This Month: $51 Target: $400
 12% 

[REQ] Rank Tag Plugin


Post New Thread Reply   
 
Thread Tools Display Modes
Author Message
Relaxing
AlliedModders Donor
Join Date: Jun 2016
Location: White Plains
Old 07-24-2016 , 16:10   [REQ] Rank Tag Plugin
Reply With Quote #1

I already know how to do this.
__________________

Last edited by Relaxing; 03-30-2018 at 18:27.
Relaxing is offline
7thSense
Member
Join Date: Jul 2016
Old 07-24-2016 , 16:16   Re: [REQ] Rank Tag Plugin
Reply With Quote #2

if you use uncle google and search you will find it, just need little edit

Last edited by 7thSense; 07-24-2016 at 16:17.
7thSense is offline
siriusmd99
Veteran Member
Join Date: Oct 2013
Location: Republic of Moldova
Old 07-24-2016 , 17:49   Re: [REQ] Rank Tag Plugin
Reply With Quote #3

Quote:
Originally Posted by 7thSense View Post
if you use uncle google and search you will find it, just need little edit
Thats why he posted în request forum (a.k.a lazytown)
siriusmd99 is offline
Old 07-24-2016, 17:55
redivcram
This message has been deleted by redivcram. Reason: nvm
Relaxing
AlliedModders Donor
Join Date: Jun 2016
Location: White Plains
Old 07-25-2016 , 04:50   Re: [REQ] Rank Tag Plugin
Reply With Quote #4

May u search in uncle google for me lol ? :]
__________________
Relaxing is offline
7thSense
Member
Join Date: Jul 2016
Old 07-25-2016 , 05:33   Re: [REQ] Rank Tag Plugin
Reply With Quote #5

PHP Code:
#include <amxmodx>
#include <amxmisc>
#include <fun>
#include <hamsandwich>
#include <nvault>
#include <cstrike>
#include <fakemeta>



/*    ()        Leve Mod ConfiG        ()        */


/*    Who have flag "t" have vip !    */
#define VIP_ACCES    ADMIN_LEVEL_H

/*    Who have acces to amx_xp       !        */
#define ADMIN_ACCES    ADMIN_MENU

/*    Who have acces to amx_showxp       !        */
#define ADMIN_ACCES_INFO    ADMIN_ALL




/*    ()        ----------------------        ()    */




//     Plugin Info !

new const PLUGIN_NAME[] = "Level Mod";
new const 
AUTHOR[] = "swapped";
new const 
hnsxp_version[] = "6.6.5";

new 
levels[256] = {
    
1,
    
2,
    
4,
    
6,
    
8,
    
10,
    
15,
    
20,
    
25,
    
30,
    
40,
    
50,
    
60,
    
80,
    
100,
    
125,
    
150,
    
175,
    
190,
    
200,
    
240,
    
260,
    
280,
    
300,
    
350,
    
400,
    
460,
    
540,
    
600,
    
700,
    
800,
    
1000,
    
1200,
    
1500,
    
1800,
    
2500,
    
3000,
    
4800,
    
5900,
    
6500,
    
6800,
    
7400,
    
8000,
    
8500,
    
9000,
    
10000,
    
11000,
    
12500,
    
13500,
    
15000,
    
16000,
    
17000,
    
18000,
    
19000,
    
20000,
    
21500,
    
22000,
    
23080,
    
24000,
    
30000,
    
32000,
    
33000,
    
35000,
    
34000,
    
36000,
    
39000,
    
40000,
    
46000,
    
48000,
    
49000,
    
50000,
    
55000,
    
60000,
    
63000,
    
65000,
    
68000,
    
80000,
    
83000,
    
84000,
    
86000,
    
90000,
    
100000,
    
120000,
    
140000,
    
160000,
    
180000,
    
200000,
    
250000,
    
260000,
    
270000,
    
280000,
    
290000,
    
300000,
    
340000,
    
350000,
    
360000,
    
400000,
    
450000,
    
460000,
    
480000,
    
500000,
    
540000,
    
560000,
    
580000,
    
600000,
    
620000,
    
630000,
    
650000,
    
680000,
    
700000,
    
750000,
    
770000,
    
800000,
    
850000,
    
860000,
    
870000,
    
880000,
    
890000,
    
900000,
    
910000,
    
920000,
    
930000,
    
940000,
    
950000,
    
960000,
    
970000,
    
990000,
    
995000,
    
999000,
    
1000000,
    
1150000,
    
1200000,
    
1250000,
    
1300000,
    
1350000,
    
1400000,
    
1450000,
    
1500000,
    
1550000,
    
1600000,
    
1650000,
    
1700000,
    
1750000,
    
1800000,
    
1850000,
    
1900000,
    
1950000,
    
2000000,
    
2100000,
    
2200000,
    
2300000,
    
2400000,
    
2500000,
    
2600000,
    
2700000,
    
2800000,
    
2900000,
    
3000000,
    
3200000,
    
3300000,
    
3400000,
    
3500000,
    
3600000,
    
3700000,
    
3800000,
    
3900000,
    
4000000,
    
4100000,
    
4200000,
    
4300000,
    
4400000,
    
4500000,
    
4600000,
    
4700000,
    
4800000,
    
4900000,
    
5000000,
    
5100000,
    
5200000,
    
5300000,
    
5400000,
    
5500000,
    
5600000,
    
5700000,
    
5800000,
    
5900000,
    
6000000,
    
6100000,
    
6200000,
    
6400000,
    
6600000,
    
6800000,
    
7000000,
    
7200000,
    
7400000,
    
7500000,
    
7600000,
    
7800000,
    
8000000,
    
10000000,
    
11000000,
    
12000000,
    
13000000,
    
14000000,
    
15000000,
    
16000000,
    
17000000,
    
18000000,
    
19000000,
    
20000000,
    
21000000,
    
22000000,
    
23000000,
    
24000000,
    
25000000,
    
26000000,
    
27000000,
    
28000000,
    
29000000,
    
30000000,
    
31000000,
    
32000000,
    
33000000,
    
34000000,
    
35000000,
    
36000000,
    
37000000,
    
38000000,
    
39000000,
    
40000000,
    
42000000,
    
43000000,
    
45000000,
    
46000000,
    
48000000,
    
50000000,
    
52000000,
    
53000000,
    
54000000,
    
55000000,
    
56021421,
    
56999999,
    
58000000,
    
60000000,
    
65000000,
    
66000000,
    
70000000,
    
80000000,
    
90000000,
    
100000000,
    
110000000,
    
120000000,
    
130000000,
    
140000000,
    
150000000,
    
1959999999 
};
    
    



#define is_user_vip(%1)        ( get_user_flags(%1) & VIP_ACCES )

#define IsPlayer(%1) ( 1 <= %1 <=  g_iMaxPlayers )

new g_iMaxPlayers;
new 
hnsxp_playerxp[33];
new 
hnsxp_playerlevel[33];
new 
g_hnsxp_vault;
new 
wxp;
new 
xlevel;
new 
xp_kill_cvar;
new 
xp_hs_cvar;
new 
xp_vip_cvar;
new 
xp_win_cvar;
new 
time_item_cvar;
new 
g_iDamage_xp;
new 
speed_per_level;
new 
money_per_level;
new 
health_per_level;
new 
gravity_per_level;
new 
levelmod_prefix;
new 
g_power;
new Array:
Power_Name;
new Array:
Power_Level;
new Array:
Power_Desc;
new 
g_selected_power;
new 
g_damage_per_level;
new 
g_armor_per_level;
new 
bool:use_class_one[33];
new 
g_save_type;
new 
g_xplevel;
new 
g_iXpPerHitEnable;

enum Color
{
    
NORMAL 1// clients scr_concolor cvar color
    
YELLOW 1// NORMAL alias
    
GREEN// Green Color
    
TEAM_COLOR// Red, grey, blue
    
GREY// grey
    
RED// Red
    
BLUE// Blue
}
 
new 
TeamName[][] =
{
    
"",
    
"TERRORIST",
    
"CT",    
    
"SPECTATOR"
}


public 
plugin_init()
{
        
register_plugin(PLUGIN_NAMEhnsxp_versionAUTHOR);

    
register_event("DeathMsg""hnsxp_playerdie""a");
    
register_event("Damage""give_bonus_dmh""b""2!0""3=0""4!0");
    
register_event("CurWeapon""Ham_CheckSpeed_Bonus""be""1=1");
        
register_event("SendAudio""t_win""a""2&%!MRAD_terwin")

    
xp_kill_cvar register_cvar("levelmod_kill","3")
    
xp_hs_cvar register_cvar("levelmod_hs","6")
    
xp_vip_cvar register_cvar("levelmod_vip_xp","100")
    
xp_win_cvar register_cvar("levelmod_tero_win","1")
    
time_item_cvar  register_cvar("levelmod_time_item","15.0");
    
g_iDamage_xp register_cvar("levelmod_damage_xp","1");
    
speed_per_level register_cvar("levelmod_speed_per_level","3");
    
health_per_level register_cvar("levelmod_health_per_level","10");
    
money_per_level register_cvar("levelmod_money_per_level","1");
    
gravity_per_level register_cvar("levelmod_gravity_per_level","2");
    
levelmod_prefix register_cvar("levelmod_tag","LEVEL MOD");
    
g_damage_per_level register_cvar("levelmod_damage_per_level","2");
    
g_armor_per_level register_cvar("levelmod_armor_per_level""2");
    
g_save_type register_cvar"levelmod_save_type","1");
    
g_xplevel register_cvar"levelmod_xp_per_level""12")
    
g_iXpPerHitEnable register_cvar("levelmod_enable_xp_per_hit","1");

           
register_clcmd("say /level","plvl");
        
register_clcmd("say /xp","plvl");
        
register_clcmd("say /lvl","plvl");
        
register_clcmd("say /levels","plvl");
    
register_clcmd("say /powers""_open_the_classmenu");
    
register_clcmd("say /powers""_open_the_classmenu");
    
register_clcmd("say /powers""_open_the_classmenu");
        
register_clcmd("say_team /levels","plvl");
        
register_clcmd("say_team /level","plvl");
        
register_clcmd("say_team /xp","plvl");
        
register_clcmd("say_team /lvl","plvl");
    
register_clcmd("say_team /powers""_open_the_classmenu");
    
register_clcmd("say_team /powers""_open_the_classmenu");
    
register_clcmd("say_team /powers""_open_the_classmenu");

        
g_hnsxp_vault nvault_open("levelmod_xp_vault");

    
register_concmd("amx_xp","cmd_xp",ADMIN_ACCES,"<NUME> <XP>");
    
register_concmd("amx_showxp","cmd_xp_info",ADMIN_ACCES_INFO,"Retrive player xp,level information.");

        
xlevel CreateMultiForward("levelmod_client_updatelevel"ET_IGNOREFP_CELL);
        
wxp CreateMultiForward("levelmod_client_hook_xp"ET_IGNOREFP_CELL);
    
g_selected_power CreateMultiForward("levelmod_selected_power"ET_IGNOREFP_CELLFP_CELL)    
    
    
register_forward(FM_ClientUserInfoChanged"ClientUserInfoChanged"
    
    
g_iMaxPlayers get_maxplayers ( )
    
RegisterHamHam_TakeDamage"player""Player_TakeDamage" );
        
RegisterHamHam_Spawn"player""hnsxp_spawn");
}


public 
give_bonus_dmh(id)
{
    static 
valuevalue read_data);
    static 
attackerattacker get_user_attacker(id)

    new 
szName[33]; get_user_name(idszName32);

    new 
TAG[60];
    
get_pcvar_stringlevelmod_prefixTAGcharsmaxTAG ) - );

    if(!
is_user_alive(attacker) || !attacker || !id || id == attacker || !get_pcvar_numg_iXpPerHitEnable) )
        return 
PLUGIN_HANDLED;

    
    
GiveExpattackerget_pcvar_numg_iDamage_xp ) );
    
ColorChat(attackerTEAM_COLOR"^1[ ^3%s^1 ] You received ^4XP^1 because you give ^4%i^1 damage on ^4%s^1 !",TAG,value,szName);    
    
UpdateLevel(attacker);
    return 
PLUGIN_CONTINUE;
    
}

public 
_open_the_classmenuid )
{
    
_open_classmenuid )
    return 
PLUGIN_HANDLED
}


public 
_open_classmenuid )
{
    new 
TAG[60];
    
get_pcvar_stringlevelmod_prefixTAGcharsmaxTAG ) - );

    if(!
is_user_alive(id))
    {
        
ColorChat(idTEAM_COLOR"^1[ ^3%s^1 ] Only alive users can use this command.",TAG)
        return 
PLUGIN_HANDLED
    
}
    
    if(
g_power == 0)
    {
        
ColorChat(idTEAM_COLOR"^1[ ^3%s^1 ] Power menu are empty.",TAG)
        return 
PLUGIN_HANDLED        
    
}


    if( !
use_class_one[id] )
    {
        
ColorChat(idTEAM_COLOR"^1[ ^3%s^1 ] You already use a power, wait for next map.",TAG)
        return 
PLUGIN_HANDLED    
    
}
    
    static 
temp_menu[64]
    static 
menutemp_string1[33], temp_integer1temp_string2[33], temp_string3[5]
    
    
menu menu_create("Powers System:""class_handle")
        
    for(new 
0g_poweri++)
    {

        
ArrayGetString(Power_Nameitemp_string1sizeof(temp_string1))
        
temp_integer1 ArrayGetCell(Power_Leveli)
        
ArrayGetString(Power_Descitemp_string2sizeof(temp_string2))
                
        
formatex(temp_menusizeof(temp_menu), "%s - [ Level %i ] "temp_string1temp_integer1)
                
        
num_to_str(itemp_string3sizeof(temp_string3))
        
menu_additem(menutemp_menutemp_string3)            
    }

        
    
menu_setprop(menuMPROP_EXITMEXIT_ALL)
    
menu_display(idmenu0)    
    
    return 
PLUGIN_CONTINUE
}

public 
class_handle(idmenuitem)
{
    new 
TAG[60];
    
get_pcvar_stringlevelmod_prefixTAGcharsmaxTAG ) - );

    if(
item == MENU_EXIT)
    {
        
menu_destroy(menu)
        return 
PLUGIN_HANDLED
    
}
    
    static 
data[6], szName[64], accesscallback
    
static temp_integer1
    menu_item_getinfo
(menuitemaccessdatacharsmax(data), szNamecharsmax(szName), callback)
    
    
temp_integer1 str_to_num(data)
    
    static 
costwp_name[64], wp_desc[64]
    
cost ArrayGetCell(Power_Leveltemp_integer1)
    
ArrayGetString(Power_Nametemp_integer1wp_namesizeof(wp_name))
    
ArrayGetString(Power_Desctemp_integer1wp_descsizeof(wp_desc))
    
    if(
hnsxp_playerlevel[id] >= cost)
    {
        
ColorChat(idTEAM_COLOR"^1[ ^3%s^1 ] You choose ^4%s^1 power.",TAGwp_name)
        
ColorChat(idTEAM_COLOR"^1[ ^3%s^1 ] %s",TAG,wp_desc)

        
use_class_one[id] = false;
        
        static 
g_dummy
        ExecuteForward
(g_selected_powerg_dummyidtemp_integer1)
    } else {
        
ColorChat(idTEAM_COLOR"^1[ ^3%s^1 ] You need at least level ^4%i^1 to choose ^4%s^1 power. !",TAGcostwp_name )
        
_open_classmenuid )
    }
        
    return 
PLUGIN_CONTINUE
}

public 
Player_TakeDamage iVictimiInflictoriAttackerFloat:fDamage 
{
    
    if ( 
iInflictor == iAttacker && IsPlayer iAttacker ) && hnsxp_playerlevel[iAttacker]) 
    {
        
SetHamParamFloat 4fDamage + ( get_pcvar_numg_damage_per_level ) * hnsxp_playerleveliAttacker ] ) );
        return 
HAM_HANDLED;
           }
    
    return 
HAM_IGNORED;
    
}

public 
ClientUserInfoChangedidszBuffer )
{
    if ( !
is_user_connectedid ) || get_pcvar_num(g_save_type) != 
        return 
FMRES_IGNORED;
    
    static 
szNewName32 ];
    new 
g_szName32 ];
    
get_user_name(idg_szName31 );

    
    
engfuncEngFunc_InfoKeyValueszBuffer"name"szNewNamesizeof szNewName ) -);
    
    if ( 
equalszNewNameg_szName ) )
        return 
FMRES_IGNORED;
    
    
    
hnsxp_playerlevelid ] = 0;
    
hnsxp_playerxpid ] = 0;

    
set_task0.10 "LoadData"id );
    
set_task0.50"TryFuckUp"id );

    return 
FMRES_IGNORED;
}

public 
TryFuckUpid 
    
UpdateLevelid );

public 
cmd_xp(id,level,cid)
{
    if(!
cmd_access(id,level,cid,3))
        return 
PLUGIN_HANDLED;
    
    new 
arg[33], amount[33]
    
read_argv(1argcharsmax(arg) - 1)
    
read_argv(2amountcharsmax(amount) - 1)
    new 
target cmd_target(idarg7)
    new 
admin_name[35], player_name[35];
    
get_user_name(targetplayer_namecharsmax(player_name) - 1);
    
get_user_name(idadmin_namecharsmax(admin_name) - 1);
    new 
TAG[60];
    
get_pcvar_stringlevelmod_prefixTAGcharsmaxTAG ) - );



    new 
wors str_to_num(amount)
    
    
    if(!
target)
    {
        return 
1
    
}

    if( 
wors 150000000 )
    {
        
hnsxp_playerxp[target] = 150000000;
        
UpdateLevel(target);
        return 
1;
    }
    
        new 
ret;
        
ExecuteForward(wxprettarget);
    
hnsxp_playerxp[target] = wors;
    
ColorChat(0TEAM_COLOR"^1[ ^3%s^1 ] Admin ^4%s^1 set ^4%i^1 xp on ^4%s^1 !",TAG,admin_name,wors,player_name);
    
UpdateLevel(target);
    return 
0
}
  
public 
cmd_xp_info(id,level,cid)
{
    if(!
cmd_access(id,level,cid,2))
        return 
PLUGIN_HANDLED;

    new 
arg[33]
    
read_argv(1arg32)

    new 
target cmd_target(idarg7)

    new 
player_name[35];
    
get_user_name(targetplayer_namecharsmax(player_name) - 1);
    new 
TAG[60];
    
get_pcvar_stringlevelmod_prefixTAGcharsmaxTAG ) - );
    
    
    if(!
target)
    {
        return 
1;
    }
    
    
ColorChat(0TEAM_COLOR"^1[ ^3%s^1 ] Player ^3%s^1 have level ^4%i^1 [ ^4%i^1 / ^4%i^1 ]",TAG,player_name,hnsxp_playerlevel[target], hnsxp_playerxp[target],levels[hnsxp_playerlevel[target]]); 
    return 
0;
}

/*      Speed Check      */
public Ham_CheckSpeed_Bonusid )
{
    if(
is_user_alive(id))
    {
        
set_user_maxspeedid250.0 + ( get_pcvar_numspeed_per_level ) * hnsxp_playerlevelid ] ) );
    }        
}

GiveExp(indexvalue)
{
    if(
value >= 150000000)
    {
        
hnsxp_playerxp[index] = 150000000 ;
        return 
1;
    }
    if(
hnsxp_playerxp[index] >= 150000000)
    {
        
hnsxp_playerxp[index] = 150000000;
        return 
1;
    }

        new 
ret;
        
ExecuteForward(wxpretindex);

    
client_cmd(0"spk buttons/bell1");
    new 
xpx hnsxp_playerlevelindex ] * get_pcvar_numg_xplevel );
    
hnsxp_playerxp[index] = hnsxp_playerxp[index] + ( value xpx );
    return 
0;
}

public 
plugin_precache()
{
    
Power_Name ArrayCreate(641)
    
Power_Level ArrayCreate(11)
    
Power_Desc ArrayCreate(641)
}

public 
plugin_natives()
{
        
register_native("levelmod_get_user_xp","_get_user_xp");
        
register_native("levelmod_get_user_level","_get_user_level");
    
register_native("levelmod_get_user_next_level""_next_level");
    
register_native("levelmod_get_user_xp_needed""_xp_needed");
        
register_native("levelmod_set_user_xp","_set_user_xp");
        
register_native("levelmod_set_user_level","_set_user_level");
    
register_native("levelmod_updatelevel","_update");
    
register_native("levelmod_register_power""native_register_power"1)
    
register_native("levelmod_save""_savedata");
    
register_native("levelmod_load","_loaddata");
}

public 
_savedata(pluin)
{
    new 
id get_param);
    
SaveData(id);
}

public 
_loaddata(pl)
{
    new 
id get_param);
    
LoadData(id);
}


public 
_update(pluinparams)
{
    new 
ids get_param);

    if( 
is_user_connectedids ) )
    {
        
UpdateLevelids );
    }
}

public 
_get_user_xp(pluginparams)
{
        return 
hnsxp_playerxp[get_param(1)];
}

public 
_get_user_level(pluginparams)
{
        return 
hnsxp_playerlevel[get_param(1)];
}

public 
_next_level(pluginparams)
{
    return 
hnsxp_playerlevel[get_param(1)] + 1;
}

public 
_xp_needed(pluinparams)
{
    return 
levels[hnsxp_playerlevel[get_param(1)]];
}

public 
_set_user_xp(pluginxer)
{
    new 
id get_param(1)
    new 
value get_param(2)

    if(
is_user_connected(id))
    {
        
hnsxp_playerxp[id] = value;
        return 
0
    
}

    else
    {
        
log_error(AMX_ERR_NATIVE,"User %d is not connected !",id)
        return 
0
    
}
    return 
1
}


public 
_set_user_level(plugineat)
{
    new 
id get_param(1)
    new 
valuex get_param(2)

    if(
is_user_connected(id))
    {
        
hnsxp_playerlevel[id] = valuex;
        return 
0
    
}

    else
    {
        
log_error(AMX_ERR_NATIVE,"User %d is not connected !",id)
        return 
0
    
}
    return 
1
}


public 
native_register_power(const power_name[], const power_level, const power_desc[])
{
    
param_convert(1)
    
param_convert(3)
    
    
ArrayPushString(Power_Namepower_name)
    
ArrayPushCell(Power_Levelpower_level)
    
ArrayPushString(Power_Descpower_desc)
    
    
g_power++
    
    return 
g_power 1
}

public 
gItem(id)
{
    new 
TAG[60];
    
get_pcvar_stringlevelmod_prefixTAGcharsmaxTAG ) - );


        if(
is_user_alive(id))
        {
                switch(
hnsxp_playerlevel[id])
                {
                
                        case 
0:
                        {


                new 
hp get_pcvar_numhealth_per_level ) * hnsxp_playerlevelid ];
                new 
money get_pcvar_nummoney_per_level ) * hnsxp_playerlevelid ];
                new 
armor get_pcvar_numg_armor_per_level ) * hnsxp_playerlevelid ];

                                
set_user_healthidget_user_healthid ) + hp );
                
set_user_armoridget_user_armorid ) + armor );
                
cs_set_user_moneyidcs_get_user_moneyid ) + money )

                                
give_item(id"weapon_hegrenade");

                                
ColorChat(idTEAM_COLOR,"^1[^3 %s^1 ] You got ^4 0DGL ^1, ^4 0SG ^1, ^4 0FL ^1, ^4 1HE ^1!",TAG);
                                
remove_task(id);
                        }
                        
                        case 
1..4:
                        {
                                
give_item(id"weapon_hegrenade");
                                
give_item(id"weapon_smokegrenade");

                                
cs_set_user_bpammo(idCSW_HEGRENADE1);
                                
cs_set_user_bpammo(idCSW_SMOKEGRENADE1);


                new 
hp get_pcvar_numhealth_per_level ) * hnsxp_playerlevelid ];
                new 
money get_pcvar_nummoney_per_level ) * hnsxp_playerlevelid ];
                new 
armor get_pcvar_numg_armor_per_level ) * hnsxp_playerlevelid ];

                                
set_user_healthidget_user_healthid ) + hp );
                
set_user_armoridget_user_armorid ) + armor );
                
cs_set_user_moneyidcs_get_user_moneyid ) + money )

                                
ColorChat(idTEAM_COLOR,"^1[^3 %s^1 ] You got ^4 0DGL ^1, ^4 1SG ^1, ^4 0FL ^1, ^4 1HE ^1!",TAG);
                         
                
remove_task(id);
                
                        }

                        case 
5..9:
                        {
                                
give_item(id"weapon_hegrenade");
                                
give_item(id"weapon_flashbang");
                                
give_item(id"weapon_smokegrenade");

                                
cs_set_user_bpammo(idCSW_HEGRENADE1);
                                
cs_set_user_bpammo(idCSW_FLASHBANG1);
                                
cs_set_user_bpammo(idCSW_SMOKEGRENADE1);


                new 
hp get_pcvar_numhealth_per_level ) * hnsxp_playerlevelid ];
                new 
money get_pcvar_nummoney_per_level ) * hnsxp_playerlevelid ];
                new 
armor get_pcvar_numg_armor_per_level ) * hnsxp_playerlevelid ];

                                
set_user_healthidget_user_healthid ) + hp );
                
set_user_armoridget_user_armorid ) + armor );
                
cs_set_user_moneyidcs_get_user_moneyid ) + money )

                new 
dgl give_item(id"weapon_deagle")

                if( 
dgl )
                {
                                    
cs_set_weapon_ammo(dgl1);
                    
cs_set_user_bpammoidCSW_DEAGLE0);
                }

                                
ColorChat(idTEAM_COLOR,"^1[^3 %s^1 ] You got ^4 1DGL ^1, ^4 1SG ^1, ^4 1FL ^1, ^4 1HE ^1!",TAG);
                                
remove_task(id);
                
                        }

                        case 
10..19:
                        {
                                
give_item(id"weapon_hegrenade");
                                
give_item(id"weapon_flashbang");
                                
give_item(id"weapon_smokegrenade");

                                
cs_set_user_bpammo(idCSW_HEGRENADE1);
                                
cs_set_user_bpammo(idCSW_FLASHBANG1);
                                
cs_set_user_bpammo(idCSW_SMOKEGRENADE2);


                new 
hp get_pcvar_numhealth_per_level ) * hnsxp_playerlevelid ];
                new 
money get_pcvar_nummoney_per_level ) * hnsxp_playerlevelid ];
                new 
armor get_pcvar_numg_armor_per_level ) * hnsxp_playerlevelid ];

                                
set_user_healthidget_user_healthid ) + hp );
                
set_user_armoridget_user_armorid ) + armor );
                
cs_set_user_moneyidcs_get_user_moneyid ) + money )

                new 
dgl give_item(id"weapon_deagle")

                if( 
dgl )
                {
                                    
cs_set_weapon_ammo(dgl1);
                    
cs_set_user_bpammoidCSW_DEAGLE0);
                }

                                
ColorChat(idTEAM_COLOR,"^1[^3 %s^1 ] You got ^4 1DGL ^1, ^4 2SG ^1, ^4 1FL ^1, ^4 1HE ^1!",TAG);
                                
remove_task(id);
                
                        }

                        case 
20..29:
                        {
                                
give_item(id"weapon_hegrenade");
                                
give_item(id"weapon_flashbang");
                                
give_item(id"weapon_smokegrenade");

                                
cs_set_user_bpammo(idCSW_HEGRENADE,2);
                                
cs_set_user_bpammo(idCSW_FLASHBANG1);
                                
cs_set_user_bpammo(idCSW_SMOKEGRENADE2);


                new 
hp get_pcvar_numhealth_per_level ) * hnsxp_playerlevelid ];
                new 
money get_pcvar_nummoney_per_level ) * hnsxp_playerlevelid ];
                new 
armor get_pcvar_numg_armor_per_level ) * hnsxp_playerlevelid ];

                                
set_user_healthidget_user_healthid ) + hp );
                
set_user_armoridget_user_armorid ) + armor );
                
cs_set_user_moneyidcs_get_user_moneyid ) + money )

                new 
dgl give_item(id"weapon_deagle")

                if( 
dgl )
                {
                                    
cs_set_weapon_ammo(dgl2);
                    
cs_set_user_bpammoidCSW_DEAGLE0);
                }

                                
ColorChat(idTEAM_COLOR,"^1[^3 %s^1 ] You got ^4 2DGL ^1, ^4 2SG ^1, ^4 1FL ^1, ^4 2HE ^1!",TAG);
                                
remove_task(id);
                
                        }

                      case 
30..39:
                        {
                                
give_item(id"weapon_hegrenade");
                                
give_item(id"weapon_flashbang");
                                
give_item(id"weapon_smokegrenade");

                                
cs_set_user_bpammo(idCSW_HEGRENADE,2);
                                
cs_set_user_bpammo(idCSW_FLASHBANG2);
                                
cs_set_user_bpammo(idCSW_SMOKEGRENADE2);


                new 
hp get_pcvar_numhealth_per_level ) * hnsxp_playerlevelid ];
                new 
money get_pcvar_nummoney_per_level ) * hnsxp_playerlevelid ];
                new 
armor get_pcvar_numg_armor_per_level ) * hnsxp_playerlevelid ];

                                
set_user_healthidget_user_healthid ) + hp );
                
set_user_armoridget_user_armorid ) + armor );
                
cs_set_user_moneyidcs_get_user_moneyid ) + money )

                new 
dgl give_item(id"weapon_deagle")

                if( 
dgl )
                {
                                    
cs_set_weapon_ammo(dgl2);
                    
cs_set_user_bpammoidCSW_DEAGLE0);
                }

                                
ColorChat(idTEAM_COLOR,"^1[^3 %s^1 ] You got ^4 2DGL ^1, ^4 2SG ^1, ^4 2FL ^1, ^4 2HE ^1!",TAG);
                                
remove_task(id);
                
                        }


                      case 
40..49:
                        {
                                
give_item(id"weapon_hegrenade");
                                
give_item(id"weapon_flashbang");
                                
give_item(id"weapon_smokegrenade");

                                
cs_set_user_bpammo(idCSW_HEGRENADE,2);
                                
cs_set_user_bpammo(idCSW_FLASHBANG2);
                                
cs_set_user_bpammo(idCSW_SMOKEGRENADE2);


                new 
hp get_pcvar_numhealth_per_level ) * hnsxp_playerlevelid ];
                new 
money get_pcvar_nummoney_per_level ) * hnsxp_playerlevelid ];
                new 
armor get_pcvar_numg_armor_per_level ) * hnsxp_playerlevelid ];

                                
set_user_healthidget_user_healthid ) + hp );
                
set_user_armoridget_user_armorid ) + armor );
                
cs_set_user_moneyidcs_get_user_moneyid ) + money )

                new 
dgl give_item(id"weapon_deagle")

                if( 
dgl )
                {
                                    
cs_set_weapon_ammo(dgl3);
                    
cs_set_user_bpammoidCSW_DEAGLE0);
                }

                                
ColorChat(idTEAM_COLOR,"^1[^3 %s^1 ] You got ^4 3DGL ^1, ^4 2SG ^1, ^4 2FL ^1, ^4 2HE ^1!",TAG);
                                
remove_task(id);
                
                        }


                      case 
50..59:
                        {
                                
give_item(id"weapon_hegrenade");
                                
give_item(id"weapon_flashbang");
                                
give_item(id"weapon_smokegrenade");

                                
cs_set_user_bpammo(idCSW_HEGRENADE,3);
                                
cs_set_user_bpammo(idCSW_FLASHBANG2);
                                
cs_set_user_bpammo(idCSW_SMOKEGRENADE3);


                new 
hp get_pcvar_numhealth_per_level ) * hnsxp_playerlevelid ];
                new 
money get_pcvar_nummoney_per_level ) * hnsxp_playerlevelid ];
                new 
armor get_pcvar_numg_armor_per_level ) * hnsxp_playerlevelid ];

                                
set_user_healthidget_user_healthid ) + hp );
                
set_user_armoridget_user_armorid ) + armor );
                
cs_set_user_moneyidcs_get_user_moneyid ) + money )

                new 
dgl give_item(id"weapon_deagle")

                if( 
dgl )
                {
                                    
cs_set_weapon_ammo(dgl3);
                    
cs_set_user_bpammoidCSW_DEAGLE0);
                }

                                
ColorChat(idTEAM_COLOR,"^1[^3 %s^1 ] You got ^4 3DGL ^1, ^4 3SG ^1, ^4 2FL ^1, ^4 3HE ^1!",TAG);
                                
remove_task(id);
                
                        }



              
            case 
60..69:
            {
                                
give_item(id"weapon_hegrenade");
                                
give_item(id"weapon_flashbang");
                                
give_item(id"weapon_smokegrenade");

                                
cs_set_user_bpammo(idCSW_HEGRENADE,3);
                                
cs_set_user_bpammo(idCSW_FLASHBANG3);
                                
cs_set_user_bpammo(idCSW_SMOKEGRENADE3);


                new 
hp get_pcvar_numhealth_per_level ) * hnsxp_playerlevelid ];
                new 
money get_pcvar_nummoney_per_level ) * hnsxp_playerlevelid ];
                new 
armor get_pcvar_numg_armor_per_level ) * hnsxp_playerlevelid ];

                                
set_user_healthidget_user_healthid ) + hp );
                
set_user_armoridget_user_armorid ) + armor );
                
cs_set_user_moneyidcs_get_user_moneyid ) + money )

                new 
dgl give_item(id"weapon_deagle")

                if( 
dgl )
                {
                                    
cs_set_weapon_ammo(dgl4);
                    
cs_set_user_bpammoidCSW_DEAGLE0);
                }

                                
ColorChat(idTEAM_COLOR,"^1[^3 %s^1 ] You got ^4 4DGL ^1, ^4 3SG ^1, ^4 3FL ^1, ^4 3HE ^1!",TAG);
                                
remove_task(id);
                
                        }

            case 
70..79:
            {
                                
give_item(id"weapon_hegrenade");
                                
give_item(id"weapon_flashbang");
                                
give_item(id"weapon_smokegrenade");

                                
cs_set_user_bpammo(idCSW_HEGRENADE,3);
                                
cs_set_user_bpammo(idCSW_FLASHBANG3);
                                
cs_set_user_bpammo(idCSW_SMOKEGRENADE5);


                new 
hp get_pcvar_numhealth_per_level ) * hnsxp_playerlevelid ];
                new 
money get_pcvar_nummoney_per_level ) * hnsxp_playerlevelid ];
                new 
armor get_pcvar_numg_armor_per_level ) * hnsxp_playerlevelid ];

                                
set_user_healthidget_user_healthid ) + hp );
                
set_user_armoridget_user_armorid ) + armor );
                
cs_set_user_moneyidcs_get_user_moneyid ) + money )

                new 
dgl give_item(id"weapon_deagle")

                if( 
dgl )
                {
                                    
cs_set_weapon_ammo(dgl4);
                    
cs_set_user_bpammoidCSW_DEAGLE0);
                }

                                
ColorChat(idTEAM_COLOR,"^1[^3 %s^1 ] You got ^4 4DGL ^1, ^4 5SG ^1, ^4 3FL ^1, ^4 3HE ^1!",TAG);
                                
remove_task(id);
                
                        }

            case 
80..89:
            {
                                
give_item(id"weapon_hegrenade");
                                
give_item(id"weapon_flashbang");
                                
give_item(id"weapon_smokegrenade");

                                
cs_set_user_bpammo(idCSW_HEGRENADE,5);
                                
cs_set_user_bpammo(idCSW_FLASHBANG3);
                                
cs_set_user_bpammo(idCSW_SMOKEGRENADE5);


                new 
hp get_pcvar_numhealth_per_level ) * hnsxp_playerlevelid ];
                new 
money get_pcvar_nummoney_per_level ) * hnsxp_playerlevelid ];
                new 
armor get_pcvar_numg_armor_per_level ) * hnsxp_playerlevelid ];

                                
set_user_healthidget_user_healthid ) + hp );
                
set_user_armoridget_user_armorid ) + armor );
                
cs_set_user_moneyidcs_get_user_moneyid ) + money )

                new 
dgl give_item(id"weapon_deagle")

                if( 
dgl )
                {
                                    
cs_set_weapon_ammo(dgl5);
                    
cs_set_user_bpammoidCSW_DEAGLE0);
                }

                                
ColorChat(idTEAM_COLOR,"^1[^3 %s^1 ] You got ^4 5DGL ^1, ^4 5SG ^1, ^4 3FL ^1, ^4 5HE ^1!",TAG);
                                
remove_task(id);
                
                        }


            case 
90..99:
            {
                                
give_item(id"weapon_hegrenade");
                                
give_item(id"weapon_flashbang");
                                
give_item(id"weapon_smokegrenade");

                                
cs_set_user_bpammo(idCSW_HEGRENADE,5);
                                
cs_set_user_bpammo(idCSW_FLASHBANG5);
                                
cs_set_user_bpammo(idCSW_SMOKEGRENADE5);


                new 
hp get_pcvar_numhealth_per_level ) * hnsxp_playerlevelid ];
                new 
money get_pcvar_nummoney_per_level ) * hnsxp_playerlevelid ];
                new 
armor get_pcvar_numg_armor_per_level ) * hnsxp_playerlevelid ];

                                
set_user_healthidget_user_healthid ) + hp );
                
set_user_armoridget_user_armorid ) + armor );
                
cs_set_user_moneyidcs_get_user_moneyid ) + money )

                new 
dgl give_item(id"weapon_deagle")

                if( 
dgl )
                {
                                    
cs_set_weapon_ammo(dgl6);
                    
cs_set_user_bpammoidCSW_DEAGLE0);
                }

                                
ColorChat(idTEAM_COLOR,"^1[^3 %s^1 ] You got ^4 6DGL ^1, ^4 5SG ^1, ^4 5FL ^1, ^4 5HE ^1!",TAG);
                                
remove_task(id);
                
                        }

            case 
100..129:
            {
                                
give_item(id"weapon_hegrenade");
                                
give_item(id"weapon_flashbang");
                                
give_item(id"weapon_smokegrenade");

                                
cs_set_user_bpammo(idCSW_HEGRENADE,7);
                                
cs_set_user_bpammo(idCSW_FLASHBANG7);
                                
cs_set_user_bpammo(idCSW_SMOKEGRENADE7);


                new 
hp get_pcvar_numhealth_per_level ) * hnsxp_playerlevelid ];
                new 
money get_pcvar_nummoney_per_level ) * hnsxp_playerlevelid ];
                new 
armor get_pcvar_numg_armor_per_level ) * hnsxp_playerlevelid ];

                                
set_user_healthidget_user_healthid ) + hp );
                
set_user_armoridget_user_armorid ) + armor );
                
cs_set_user_moneyidcs_get_user_moneyid ) + money )

                new 
dgl give_item(id"weapon_deagle")

                if( 
dgl )
                {
                                    
cs_set_weapon_ammo(dgl6);
                    
cs_set_user_bpammoidCSW_DEAGLE0);
                }

                                
ColorChat(idTEAM_COLOR,"^1[^3 %s^1 ] You got ^4 6DGL ^1, ^4 7SG ^1, ^4 7FL ^1, ^4 7HE ^1!",TAG);
                                
remove_task(id);
                
                        }

            case 
130..149:
            {
                                
give_item(id"weapon_hegrenade");
                                
give_item(id"weapon_flashbang");
                                
give_item(id"weapon_smokegrenade");

                                
cs_set_user_bpammo(idCSW_HEGRENADE,8);
                                
cs_set_user_bpammo(idCSW_FLASHBANG7);
                                
cs_set_user_bpammo(idCSW_SMOKEGRENADE8);


                new 
hp get_pcvar_numhealth_per_level ) * hnsxp_playerlevelid ];
                new 
money get_pcvar_nummoney_per_level ) * hnsxp_playerlevelid ];
                new 
armor get_pcvar_numg_armor_per_level ) * hnsxp_playerlevelid ];

                                
set_user_healthidget_user_healthid ) + hp );
                
set_user_armoridget_user_armorid ) + armor );
                
cs_set_user_moneyidcs_get_user_moneyid ) + money )

                new 
dgl give_item(id"weapon_deagle")

                if( 
dgl )
                {
                                    
cs_set_weapon_ammo(dgl6);
                    
cs_set_user_bpammoidCSW_DEAGLE0);
                }

                                
ColorChat(idTEAM_COLOR,"^1[^3 %s^1 ] You got ^4 6DGL ^1, ^4 8SG ^1, ^4 7FL ^1, ^4 8HE ^1!",TAG);
                                
remove_task(id);
                
                        }

            case 
150..199:
            {
                                
give_item(id"weapon_hegrenade");
                                
give_item(id"weapon_flashbang");
                                
give_item(id"weapon_smokegrenade");

                                
cs_set_user_bpammo(idCSW_HEGRENADE,8);
                                
cs_set_user_bpammo(idCSW_FLASHBANG8);
                                
cs_set_user_bpammo(idCSW_SMOKEGRENADE10);


                new 
hp get_pcvar_numhealth_per_level ) * hnsxp_playerlevelid ];
                new 
money get_pcvar_nummoney_per_level ) * hnsxp_playerlevelid ];
                new 
armor get_pcvar_numg_armor_per_level ) * hnsxp_playerlevelid ];

                                
set_user_healthidget_user_healthid ) + hp );
                
set_user_armoridget_user_armorid ) + armor );
                
cs_set_user_moneyidcs_get_user_moneyid ) + money )

                new 
dgl give_item(id"weapon_deagle")

                if( 
dgl )
                {
                                    
cs_set_weapon_ammo(dgl6);
                    
cs_set_user_bpammoidCSW_DEAGLE0);
                }

                                
ColorChat(idTEAM_COLOR,"^1[^3 %s^1 ] You got ^4 6DGL ^1, ^4 10SG ^1, ^4 8FL ^1, ^4 8HE ^1!",TAG);
                                
remove_task(id);
                
                        }

            case 
200..229:
            {
                                
give_item(id"weapon_hegrenade");
                                
give_item(id"weapon_flashbang");
                                
give_item(id"weapon_smokegrenade");

                                
cs_set_user_bpammo(idCSW_HEGRENADE,10);
                                
cs_set_user_bpammo(idCSW_FLASHBANG10);
                                
cs_set_user_bpammo(idCSW_SMOKEGRENADE10);


                new 
hp get_pcvar_numhealth_per_level ) * hnsxp_playerlevelid ];
                new 
money get_pcvar_nummoney_per_level ) * hnsxp_playerlevelid ];
                new 
armor get_pcvar_numg_armor_per_level ) * hnsxp_playerlevelid ];

                                
set_user_healthidget_user_healthid ) + hp );
                
set_user_armoridget_user_armorid ) + armor );
                
cs_set_user_moneyidcs_get_user_moneyid ) + money )

                new 
dgl give_item(id"weapon_deagle")

                if( 
dgl )
                {
                                    
cs_set_weapon_ammo(dgl7);
                    
cs_set_user_bpammoidCSW_DEAGLE0);
                }

                                
ColorChat(idTEAM_COLOR,"^1[^3 %s^1 ] You got ^4 7DGL ^1, ^4 10SG ^1, ^4 10FL ^1, ^4 10HE ^1!",TAG);
                                
remove_task(id);
                
                        }

            case 
230..254:
            {
                                
give_item(id"weapon_hegrenade");
                                
give_item(id"weapon_flashbang");
                                
give_item(id"weapon_smokegrenade");

                                
cs_set_user_bpammo(idCSW_HEGRENADE,12);
                                
cs_set_user_bpammo(idCSW_FLASHBANG12);
                                
cs_set_user_bpammo(idCSW_SMOKEGRENADE12);


                new 
hp get_pcvar_numhealth_per_level ) * hnsxp_playerlevelid ];
                new 
money get_pcvar_nummoney_per_level ) * hnsxp_playerlevelid ];
                new 
armor get_pcvar_numg_armor_per_level ) * hnsxp_playerlevelid ];

                                
set_user_healthidget_user_healthid ) + hp );
                
set_user_armoridget_user_armorid ) + armor );
                
cs_set_user_moneyidcs_get_user_moneyid ) + money )

                new 
dgl give_item(id"weapon_deagle")

                if( 
dgl )
                {
                                    
cs_set_weapon_ammo(dgl7);
                    
cs_set_user_bpammoidCSW_DEAGLE0);
                }

                                
ColorChat(idTEAM_COLOR,"^1[^3 %s^1 ] You got ^4 7DGL ^1, ^4 12SG ^1, ^4 12FL ^1, ^4 12HE ^1!",TAG);
                                
remove_task(id);
                
                        }
                
     

            case 
255:
            {
                                
give_item(id"weapon_hegrenade");
                                
give_item(id"weapon_flashbang");
                                
give_item(id"weapon_smokegrenade");

                                
cs_set_user_bpammo(idCSW_HEGRENADE,15);
                                
cs_set_user_bpammo(idCSW_FLASHBANG15);
                                
cs_set_user_bpammo(idCSW_SMOKEGRENADE15);


                new 
hp get_pcvar_numhealth_per_level ) * hnsxp_playerlevelid ];
                new 
money get_pcvar_nummoney_per_level ) * hnsxp_playerlevelid ];
                new 
armor get_pcvar_numg_armor_per_level ) * hnsxp_playerlevelid ];

                                
set_user_healthidget_user_healthid ) + hp );
                
set_user_armoridget_user_armorid ) + armor );
                
cs_set_user_moneyidcs_get_user_moneyid ) + money )

                new 
dgl give_item(id"weapon_deagle")

                if( 
dgl )
                {
                                    
cs_set_weapon_ammo(dgl7);
                    
cs_set_user_bpammoidCSW_DEAGLE0);
                }

                                
ColorChat(idTEAM_COLOR,"^1[^3 %s^1 ] You got ^4 7DGL ^1, ^4 15SG ^1, ^4 15FL ^1, ^4 15HE ^1!",TAG);
                                
remove_task(id);
                
                        }                        
 
                }
                        
        }

}




UpdateLevel(id)
{
    new 
ret;
        
ExecuteForward(xlevelretid);

        if((
hnsxp_playerlevel[id] < 256) && (hnsxp_playerxp[id] >= levels[hnsxp_playerlevel[id]]))
        {
                while(
hnsxp_playerxp[id] >= levels[hnsxp_playerlevel[id]])
                {
                        
hnsxp_playerlevel[id]++;
                }
        }
}

public 
hnsxp_spawn(id)
{
        
set_task(get_pcvar_float(time_item_cvar), "gItem"id);

    new 
GRAVITYCheck 800 - ( get_pcvar_numgravity_per_level ) * hnsxp_playerlevelid ] );

    if(
is_user_alive(id))
    {
        
set_user_gravityidfloatGRAVITYCheck ) / 800.0 );
        
UpdateLevel(id);
    
    }


}

public 
plvl(id)
{
    new 
TAG[60];
    
get_pcvar_stringlevelmod_prefixTAGcharsmaxTAG ) - );

    if( 
hnsxp_playerlevel[id] != 255)
    { 
        
ColorChat(    id,    
                
TEAM_COLOR,
                
"^1[ ^3%s^1 ] (^4LVL^1: ^3%i^1) (^4XP^1: ^3%i^1 / ^3%i^1)"TAGhnsxp_playerlevelid ], hnsxp_playerxpid ], levelshnsxp_playerlevelid ] ] 
                );
        return 
1;
    }

    else
    {
        
ColorChat(    id,    
                
TEAM_COLOR,
                
"^1[ ^3%s^1 ] (^4LVL^1:^3 255^1) (^4XP^1:^3 0^1 /^3 0^1)"TAG
                
);
        return 
1;    
    }
        
    
    return 
1;
}

public 
hnsxp_playerdie() 
{
    new 
iVictim read_data)
    new 
attacker read_data)
    new 
headshot read_data)

        
        if( !
attacker || attacker == iVictim )
                return;
    
        
        
        
UpdateLevel(attacker);
        
UpdateLevel(iVictim);


    if(
headshot)
    { 
        
GiveExp(attackerget_pcvar_num(xp_hs_cvar));

    }else{
        
GiveExp(attackerget_pcvar_num(xp_kill_cvar));
    }

        if(
is_user_vip(attacker))
        {
        
GiveExp(attackerget_pcvar_num(xp_vip_cvar));

        }

}

public 
client_putinserver(id)
{
    
UpdateLevel(id);
    
use_class_one[id] = true;
}

public 
client_connect(id)

        
LoadData(id);            
}
public 
client_disconnect(id)

        
SaveData(id);
}

public 
SaveData(id)
{
        new 
PlayerName[35];
    switch( 
get_pcvar_numg_save_type ) )
    {
        case 
1:
                
get_user_nameid,PlayerNamecharsmaxPlayerName ) - );
        case 
2:
            
get_user_ipidPlayerNamecharsmaxPlayerName ) - );
        case 
3:
            
get_user_authididPlayerNamecharsmaxPlayerName ) - );
    }
       
        new 
vaultkey[64],vaultdata[256];
        
format(vaultkey,63,"%s",PlayerName);
        
format(vaultdata,255,"%i`i%",hnsxp_playerxp[id],hnsxp_playerlevel[id]);
        
nvault_set(g_hnsxp_vault,vaultkey,vaultdata);
        return 
PLUGIN_CONTINUE;
}
public 
LoadData(id)
{
        new 
PlayerName[35];
    switch( 
get_pcvar_numg_save_type ) )
    {
        case 
1:
                
get_user_nameid,PlayerNamecharsmaxPlayerName ) - );
        case 
2:
            
get_user_ipidPlayerNamecharsmaxPlayerName ) - );
        case 
3:
            
get_user_authididPlayerNamecharsmaxPlayerName ) - );
    }
       
        new 
vaultkey[64],vaultdata[256];
        
format(vaultkey,63,"%s",PlayerName);
        
format(vaultdata,255,"%i`%i",hnsxp_playerxp[id],hnsxp_playerlevel[id]);
        
nvault_get(g_hnsxp_vault,vaultkey,vaultdata,255);
       
        
replace_all(vaultdata255"`"" ");
       
        new 
playerxp[32], playerlevel[32];
       
        
parse(vaultdataplayerxp31playerlevel31);
       
        
hnsxp_playerxp[id] = str_to_num(playerxp);
        
hnsxp_playerlevel[id] = str_to_num(playerlevel);
       
        return 
PLUGIN_CONTINUE;
}

public 
t_win(id)
{
          new 
TAG[60];
    
get_pcvar_stringlevelmod_prefixTAGcharsmaxTAG ) - );
  
        new 
iPlayer 32 ], iNum;
        
get_players(iPlayeriNum"ae""TERRORIST")
        for ( new 
0iNumi++ ) 
        {
            if(
is_user_alive(iPlayer[i]))
        {
                    
GiveExp(iPlayer ], get_pcvar_num(xp_win_cvar));
                    
ColorChat(iPlayer[i], TEAM_COLOR,"^1[^3 %s^1 ] You got ^4 %iXP^1 because your team has win the round !",TAG,get_pcvar_num(xp_win_cvar));
                    
UpdateLevel(iPlayer[i]);
                }
        }
}
ColorChat(idColor:type, const msg[], {Float,Sql,Result,_}:...)
{
    new 
message[256];
 
    switch(
type)
    {
        case 
NORMAL// clients scr_concolor cvar color
        
{
            
message[0] = 0x01;
        }
        case 
GREEN// Green
        
{
            
message[0] = 0x04;
        }
        default: 
// White, Red, Blue
        
{
            
message[0] = 0x03;
        }
    }
     
    
vformat(message[1], 251msg4);
 
    
// Make sure message is not longer than 192 character. Will crash the server.
    
message[191] = '^0';
 
    new 
teamColorChangeindexMSG_Type;
    if(
id)
    {
        
MSG_Type MSG_ONE;
        
index id;
    } else {
        
index FindPlayer();
        
MSG_Type MSG_ALL;
    }

    
team get_user_team(index);
    
ColorChange ColorSelection(indexMSG_Typetype);
 

    
ShowColorMessage(indexMSG_Typemessage);
    if(
ColorChange)
    {
        
Team_Info(indexMSG_TypeTeamName[team]);
    }
}
 
ShowColorMessage(idtypemessage[])
{
    static 
get_user_msgid_saytext;
    if(!
get_user_msgid_saytext)
    {
        
get_user_msgid_saytext get_user_msgid("SayText");
    }
    
message_begin(typeget_user_msgid_saytext_id);
    
write_byte(id)    
    
write_string(message);
    
message_end();    
}
 
Team_Info(idtypeteam[])
{
    static 
bool:teaminfo_used;
    static 
get_user_msgid_teaminfo;
    if(!
teaminfo_used)
    {
        
get_user_msgid_teaminfo get_user_msgid("TeamInfo");
        
teaminfo_used true;
    }
    
message_begin(typeget_user_msgid_teaminfo_id);
    
write_byte(id);
    
write_string(team);
    
message_end();
 
    return 
1;
}
 
ColorSelection(indextypeColor:Type)
{
    switch(
Type)
    {
        case 
RED:
        {
            return 
Team_Info(indextypeTeamName[1]);
        }
        case 
BLUE:
        {
            return 
Team_Info(indextypeTeamName[2]);
        }
        case 
GREY:
        {
            return 
Team_Info(indextypeTeamName[0]);
        }
    }
 
    return 
0;
}
 
FindPlayer()
{
    new 
= -1;
    static 
iMaxPlayers;
    if( !
iMaxPlayers )
    {
        
iMaxPlayers get_maxplayers( );
    }
    while(
<= iMaxPlayers)
    {
        if(
is_user_connected(++i))
            return 
i;
    }
 
    return -
1;
}

stock Float:accuracy(stats[8])
{
    if(!
stats[4])
        return ( 
0.0 );
    new 
Float:result
    result 
100.0 floatstats[5] ) / floatstats[4] );
    return (
result 100.0) ? 100.0 result
}

stock Float:effec(stats[8])
{
    if(!
stats[0])
        return ( 
0.0 );
    new 
Float:result
    result 
100.0 floatstats[0] ) / floatstats[0] + stats[1] );
    return (
result 100.0) ? 100.0 result

inc file for compile

PHP Code:
#if defined _levelmod_included
    #endinput
#endif
#define _levelmod_included

#define LEVELMOD_VERSION "6.6.5"

enum Color
{
    
NORMAL 1// clients scr_concolor cvar color
    
YELLOW 1// NORMAL alias
    
GREEN// Green Color
    
TEAM_COLOR// Red, grey, blue
    
GREY// grey
    
RED// Red
    
BLUE// Blue
}
 
new 
TeamName[][] =
{
    
"",
    
"TERRORIST",
    
"CT",    
    
"SPECTATOR"
}



/**
* Called when player is select an power
*
* @param id: Player Index    
* @param power: The Power ID
*
*/
forward levelmod_selected_power(idpower);

/**
* Called when player is update his level
*
* @param id: Player Index    
*
*/
forward levelmod_client_updatelevel(id);

/**
* Called when player is hook xp ( + admin command, amx_xp support ! )
*
* @param id: Player Index    
*
*/
forward levelmod_client_hook_xp(id);

/**

* @param id: The Player Index 
*
* @return: Return the player index XP 
*/
native levelmod_get_user_xp(id);

/**

* @param id: The Player Index 
*
* @return: Return the player index LEVEL 
*/
native levelmod_get_user_level(id);

/**

* @param id: The Player Index 
*
* @return: Return the player index next level
*/
native levelmod_get_user_next_level(id);

/**

* @param id: The Player Index 
*
* @return: Return the player index XP necesary for next level
*/
native levelmod_get_user_xp_needed(id);

/**

* @param id: The Player Index 
* @param value: Value for set the player exactly XP value !
*/
native levelmod_set_user_xp(idvalue);

/**

* @param id: The Player Index 
* @param value: Value for set the player exactly LEVEL value !
*/
native levelmod_set_user_level(idvalue);

/**

* Update the player level
*
* @param id: The Player Index 
*/
native levelmod_updatelevel(id);

/**

* Register a new levelmod power
*
*
* @param power_name: The name of the Power
* @param power_level: The level necesary to choose this power
* @param power_desc: Description of the power
*/
native levelmod_register_power(const power_name[], const power_level, const power_desc[])

/**

* Load Player XP/level
*
* @param id: The Player Index 
*/
native levelmod_load(id)

/**

* Save Player XP/Level
*
* @param id: The Player Index 
*/
native levelmod_save(id)


/**

* @param id: The Player Index 
* @param value: Value for give use bonus-xp 
*/
stock levelmod_give_user_xpidvalue )
{
    
levelmod_set_user_xpidlevelmod_get_user_xpid ) + value );
}

/**

* @param id: The Player Index 
* @param value: Value for give use bonus-level
*/
stock levelmod_give_user_levelidvalue )
{
    
levelmod_set_user_levelidlevelmod_get_user_levelid ) + value );
}

/**

* @param id: The Player Index 
* @param value: Value for take amount of xp
*/
stock levelmod_take_user_xpidvalue )
{
    
levelmod_set_user_xpidlevelmod_get_user_xpid ) - value );
}

/**

* @param id: The Player Index 
* @param value: Value for take amount of level
*/
stock levelmod_take_user_levelidvalue )
{
    
levelmod_set_user_levelidlevelmod_get_user_levelid ) - value );
}

/**

* @param id: The Player Index 
* @param color type: the color type( TEAM_COLOR, READ, BLUE.. etc)
* @param msg: the message ( with quotes)
*/
stock CC(idColor:type, const msg[], {Float,Sql,Result,_}:...)
{
    new 
message[256];
 
    switch(
type)
    {
        case 
NORMAL// clients scr_concolor cvar color
        
{
            
message[0] = 0x01;
        }
        case 
GREEN// Green
        
{
            
message[0] = 0x04;
        }
        default: 
// White, Red, Blue
        
{
            
message[0] = 0x03;
        }
    }
     
    
vformat(message[1], 251msg4);
 
    
// Make sure message is not longer than 192 character. Will crash the server.
    
message[191] = '^0';
 
    new 
teamColorChangeindexMSG_Type;
    if(
id)
    {
        
MSG_Type MSG_ONE;
        
index id;
    } else {
        
index FindPlayer();
        
MSG_Type MSG_ALL;
    }

    
team get_user_team(index);
    
ColorChange ColorSelection(indexMSG_Typetype);
 

    
ShowColorMessage(indexMSG_Typemessage);
    if(
ColorChange)
    {
        
Team_Info(indexMSG_TypeTeamName[team]);
    }
}
 
stock ShowColorMessage(idtypemessage[])
{
    static 
get_user_msgid_saytext;
    if(!
get_user_msgid_saytext)
    {
        
get_user_msgid_saytext get_user_msgid("SayText");
    }
    
message_begin(typeget_user_msgid_saytext_id);
    
write_byte(id)    
    
write_string(message);
    
message_end();    
}
 
stock Team_Info(idtypeteam[])
{
    static 
bool:teaminfo_used;
    static 
get_user_msgid_teaminfo;
    if(!
teaminfo_used)
    {
        
get_user_msgid_teaminfo get_user_msgid("TeamInfo");
        
teaminfo_used true;
    }
    
message_begin(typeget_user_msgid_teaminfo_id);
    
write_byte(id);
    
write_string(team);
    
message_end();
 
    return 
1;
}
 
stock ColorSelection(indextypeColor:Type)
{
    switch(
Type)
    {
        case 
RED:
        {
            return 
Team_Info(indextypeTeamName[1]);
        }
        case 
BLUE:
        {
            return 
Team_Info(indextypeTeamName[2]);
        }
        case 
GREY:
        {
            return 
Team_Info(indextypeTeamName[0]);
        }
    }
 
    return 
0;
}
 
stock FindPlayer()
{
    new 
= -1;
    static 
iMaxPlayers;
    if( !
iMaxPlayers )
    {
        
iMaxPlayers get_maxplayers( );
    }
    while(
<= iMaxPlayers)
    {
        if(
is_user_connected(++i))
            return 
i;
    }
 
    return -
1;

second rank plugin

PHP Code:
#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#include <colorchat>
#include <fvault>

#define MaxLevels 32
#define IsPlayer(%1) (1 <= %1 <=  g_iMaxPlayers)

#define CHAT_ACCESS ADMIN_ALL

new gMaxPlayerssyncObjLevel[33], eXP[33]
new 
ranks_hudknife_xphe_xphs_xpkill_xpkill_msg

new const g_vault_name[] = "levelsz";
//new const rprefix[]= "Ranks";
new iCvarPrefix;

new const 
Levels[MaxLevels+1] =
{
0,
15,
30,
50,
100,
200,
300,
450,
550,
650,
750,
850,
950,
1050,
1250,
1350,
1450,
1550,
1650,
2000,
2500,
3000,
4000,
5000,
6000,
7000,
8000,
9000,
9999,
10000,
999999
}

new const 
Prefix[MaxLevels][] =
{
"",
"Newbie",
"Jumper",
"Runner",
"Perefct",
"GS Master",
"Bhopper",
"Assassin",
"Incredible",
"Unstoppable",
"Monster",
"Godlike",
"Ninja",
"Xtreme",
"Deathrun Styler",
"Jump Master",
"Machine",
"Immortal",
"Fantastic",
"Knifer",
"Justyler",
"Destroyer",
"Rampage",
"Silent Walker",
"Chuck Norris",
"Terminator",
"GOD",
"Invincible",
"Thunder",
"Supernova",
"Wolverine",
"Wolverine"
}

public 
plugin_init()
{
register_plugin("RankSystem""1.0a""alt.nick")

register_event("DeathMsg","client_death","a")


register_clcmd("say /rank""cmdRank")
register_clcmd("say_team /rank""cmdRank")


ranks_hud register_cvar("ranks_hud""1")     // Дали да се появява хъд при влизане в сървъра. Включено 1/0 Изключено
knife_xp register_cvar("knife_xp""5")     // Колко ХР да дава за убийство с нож.
he_xp register_cvar("he_xp""7")        // Колко ХР да дава за убийство с Granata (HE).
hs_xp register_cvar("hs_xp""3")        // Колко ХР да дава за убийство с Headshot.
kill_xp register_cvar("kill_xp""1")        // Колко ХР да дава за нормално убийство.   
kill_msg register_cvar("kill_msg""1")    // Дали да показва кой сте убили и колко ХР сте получили. Включено 1/0 Изключено

register_concmd ("amx_give_xp""CmdAddXP"ADMIN_LEVEL_A"<nick | @ct | @t | @all> <xp>")

iCvarPrefix register_cvar("amx_rank_prefix""Deathrun");

gMaxPlayers get_maxplayers()

syncObj     CreateHudSyncObj()

fvault_load(g_vault_name)
}

public 
ShowHud(id)
{
set_hudmessage(random(256), random(256), random(256), 0.010.1306.01.00.00.0, -1)
ShowSyncHudMsg(idsyncObj,"Rank: %s ^nExp: %i ^nLevel: %i"Prefix[Level[id]], eXP[id], Level[id])
}

public 
client_putinserver(id)
{
if(
get_pcvar_num(ranks_hud) == 1)
set_task(1.0"ShowHud"id__"b")

if(
Level[id] < MaxLevels-1)
   while(
eXP[id] >= Levels[Level[id]])
      
Level[id] += 1
}

public 
client_death(killervictimweaponhitgroupTK)
{       
   if(
killer == victim)
      return 
PLUGIN_HANDLED
   
   
new headshot = (hitgroup == HIT_HEAD) ? 0
   
   
new rprefix[64];
   
get_pcvar_string(iCvarPrefixrprefixsizeof rprefix 1);
   
   switch(
weapon)
   {
      case 
CSW_HEGRENADE:
      {
         
eXP[killer] += get_pcvar_num(he_xp)
         
CheckLevel(killer)
         
SaveData(killer)
         if(
get_pcvar_num(kill_msg) == 1)
            
ColorChat(killerNORMAL"^4[%s]^1 poluchihte^4 %d XP^1 poradi ubiistwoto s^4 HE^1."rprefix,  get_pcvar_num(he_xp))
         
         return 
PLUGIN_CONTINUE
      
}
      case 
CSW_KNIFE:
      {
         
eXP[killer] += get_pcvar_num(knife_xp)
         
CheckLevel(killer)
         
SaveData(killer)
         if(
get_pcvar_num(kill_msg) == 1)
            
ColorChat(killerNORMAL"^4[%s]^1 poluchihte^4 %d XP^1 poradi ubiistwoto s^4 noj^1.",rprefixget_pcvar_num(knife_xp))
         
         return 
PLUGIN_CONTINUE
      
}
   }
   
   if(
headshot)
   {
      
eXP[killer] += get_pcvar_num(hs_xp)
      
CheckLevel(killer)
      
SaveData(killer)
      if(
get_pcvar_num(kill_msg) == 1)
         
ColorChat(killerNORMAL"^4[%s]^1 poluchihte^4 %d XP^1 poradi ubiistwoto s^4 HS^1.",rprefixget_pcvar_num(hs_xp))
      
      return 
PLUGIN_CONTINUE
   
}
   
   else
   {
      
eXP[killer] += get_pcvar_num(kill_xp)
      
CheckLevel(killer)
      
SaveData(killer)
      if(
get_pcvar_num(kill_msg) == 1)
         
ColorChat(killerNORMAL"^4[%s]^1 poluchihte^4 %d XP^1."rprefixget_pcvar_num(kill_xp))
      
      return 
PLUGIN_CONTINUE
   
}
   
   
CheckLevel(killer)
   
SaveData(killer)
   return 
PLUGIN_CONTINUE
}

public 
CheckLevel(id)
{
   if(
Level[id] < MaxLevels-1)
      while(
eXP[id] >= Levels[Level[id]])
      
Level[id] += 1
}

public 
client_connect(id)
{
   
LoadData(id)
}


public 
client_disconnect(id)
{
   
SaveData(id)
   
eXP[id] = 0
   Level
[id] = 0
   remove_task
(id)
}



public 
cmdRank(id)
{
   new 
rprefix[64];
   
get_pcvar_string(iCvarPrefixrprefixsizeof rprefix 1);
   if(
is_user_connected(id))
      
ColorChat(idGREY"^4[%s]^1 Deathrun:^4 %s^1 | XP:^3 %d^1 | Level:^3 %d^1."rprefixPrefix[Level[id]], eXP[id], Level[id])
}

public 
CmdAddXP (iPlayerlevelcid)
{
   if(!
cmd_access(iPlayerlevelcid3)) return PLUGIN_HANDLED;
   
   new 
arg [32]
   
read_argv (1arg31)
   
   new 
AddXP [32]
   
read_argv (2AddXPcharsmax (AddXP))
   
   new 
XPtoGive str_to_num (AddXP)
   
   new 
AdminName [32]
   new 
TargetName [32]
   
get_user_name (iPlayerAdminNamecharsmax (AdminName))
   
   new 
rprefix[64];
   
get_pcvar_string(iCvarPrefixrprefixsizeof rprefix 1);
   
   if(
arg[0]=='@')
   {
      if(
equali(arg[1],"All") || equali(arg[1],"ALL"))
      {
         new 
players[32], totalplayersAll
         get_players
(playerstotalplayers)
         
         for (new 
0totalplayersi++)
         {
            
All players[i]
            
            
eXP[All] += XPtoGive
         
}
         
         
CheckLevel(All)
         
ColorChat(0NORMAL"^4[%s]^1 ^3%s^1 dade^4 %i^1 XP na vsichki ^4igrachi^1!"rprefixAdminNameXPtoGive)
      }
      else if(
equali(arg[1],"T") || equali(arg[1],"t"))
      {
         new 
players[32], totalplayersT
         get_players
(playerstotalplayers)
         
         
         for (new 
0totalplayersi++)
         {
            if (
get_user_team(players[i]) == 1)
            {
               
players[i]
               
               
eXP[T] += XPtoGive
            
}
         }
         
         
CheckLevel(T)
         
ColorChat(0RED"^4[%s] ^1%s dade^4 %i^1 XP na vsichki ^3 Teroristi^1."rprefixAdminNameXPtoGive)
      }
      else if(
equali(arg[1],"CT") || equali(arg[1],"ct"))
      {
         new 
players[32], totalplayersCT
         get_players
(playerstotalplayers)
         
         for(new 
0totalplayersi++)
         {
            if(
get_user_team(players[i]) == 2)
            {
               
CT players[i]
               
               
eXP[CT] += XPtoGive
            
}
         }
         
         
CheckLevel(CT)
         
ColorChat(0BLUE"^4[%s]^1 %s^1 dade^4 %i^1 XP na wsichki ^3 Kontra-Teroristi^1!"rprefixAdminNameXPtoGive)
      }
   }
   else
   {
      new 
iTarget cmd_target(iPlayerarg3)
      
get_user_name (iTargetTargetNamecharsmax (TargetName))
      
      if(
iTarget)
      {
         
eXP[iTarget] += XPtoGive
         
         CheckLevel
(iTarget)
         
ColorChat(0NORMAL"^4[%s]^1 ^3%s^1 dade^4 %i^1 XP na^4 %s^1."rprefixAdminNameXPtoGiveTargetName)
      }
   }
   return 
PLUGIN_HANDLED
}
      
public 
SaveData(id)
{
   new 
name[32];
   
get_user_name(id,name,31);
   new 
vaultkey[64],vaultdata[256];
   
   
format(vaultkey,63,"%s"name);
   
format(vaultdata,255,"%i#%i#",eXP[id],Level[id]);
   
fvault_set_data(g_vault_name,vaultkey,vaultdata);
   
   return 
PLUGIN_CONTINUE;
}
public 
LoadData(id)
{
   new 
name[32];
   
get_user_name(id,name,31);
   new 
vaultkey[64],vaultdata[256];
   
   
format(vaultkey,63,"%s",name);
   
format(vaultdata,255,"%i#%i#",eXP[id],Level[id]);
   
fvault_get_data(g_vault_name,vaultkey,vaultdata,charsmax(vaultdata));
   
   
replace_all(vaultdata255"#"" ");
   new 
playerxp[32], playerlevel[32];
   
parse(vaultdataplayerxp31playerlevel31);
   
   
eXP[id] = str_to_num(playerxp);
   
Level[id] = str_to_num(playerlevel);
   
   return 
PLUGIN_CONTINUE;

rank + admin prefix and more

PHP Code:
#include < amxmodx >
#include < amxmisc >
#include < fakemeta >
#include < engine >
#include < colorchat >
#include < hamsandwich >
#include < fun >
#include < nvault >

#define MAXRANKS 32

#define PLUGIN "BP Admin prefix with ranks"
#define VERSION "1.3"
#define AUTHOR "BetterPlay"

//ПРОМЕНЛИВИ
new PlayerRank[33], message[192]
new 
sayTextteamInfomaxPlayersg_AdminListen,  g_AdminListenFlag,g_MsgHudgVault
new strName[191], strText[191], alive[11], temp_cvar[2], g_name[32]
new 
gPlayerPoints[33], give[33],iTarget[33]

new const 
g_szTag[][] = {
       
"",
       
"Server Owner",
       
"Administrator",
       
"Global Moderator",
       
"Supervisor",
       
"Team Bans",
       
"Server Admin",
       
"Test Admin",
       
"VIP",
       
"SMS Admin"
}

new const 
rankNames[MAXRANKS][] =
{
"[Jumper]"
"[Jumper First Class]"
"[Incredible]"
"[Unstoppable]"
"[Perfect]"
"[Runner]"
"[Great Bhop]"
"[Bhopper]"
"[Great Jumper]"
"[Alien Jumper]"
"[Super Bhopper]"
"[LJ Master]"
"[Technique]"
"[Unreal]"
"[Advanced]"
"[Machine]",
"[Hunter]"
"*PunisheR*"
"[Quick]"
"[Maniac]",
"[Jump Master]"
"[Bhop Master]",
"[God Like]"
"[Unique]"
"*PRO*"
"[Immortal]"
"[Hero]"
"[Jarring]"
"*ProffesionaL*"
"[Danger Bhopper]",
"[Bhop Legend]"
"[HNS Master]"
};

new const 
rankXP[MAXRANKS] =
{
    
025501001502003505007008501100140018002400300035004300520058006500730080009600105001200013800150001720020000215002400026000
};
public 
plugin_init()
{
    
register_plugin(PLUGINVERSIONAUTHOR)
    
    
g_AdminListen register_cvar("amx_listen""1")
    
g_AdminListenFlag register_cvar("amx_listen_flag""c")

    
register_clcmd("say""hook_say")
    
register_clcmd("say_team""hook_teamsay")
    
register_clcmd("say /myrank""cmdJumpRank")
    
register_clcmd("say_team /myrank""cmdJumpRank")
    
register_clcmd("say /checkrank""cmdCheckLevel")
    
register_clcmd("say_team /checkrank""cmdCheckLevel")
    
register_clcmd("say /rankmenu""cmdRankMenu"ADMIN_RCON)
    
register_clcmd("say_team /rankmenu""cmdRankMenu"ADMIN_RCON)

    
register_concmd("Points_Amount""cmdTyped"ADMIN_RCON);

    
sayText get_user_msgid("SayText")
    
teamInfo get_user_msgid("TeamInfo")
    
maxPlayers get_maxplayers()
    
g_MsgHud CreateHudSyncObj()
    
    
register_message(sayText"avoid_duplicated")
    
register_event("DeathMsg""Hook_Deathmessage""a");
    
RegisterHam(Ham_Spawn"player""player_spawn"1);
    
    
set_task(1.0"taskHud"0__"b")
    
    
gVault nvault_open"PlayerRanks" );
}

public 
player_spawn(id)
{
    if( !
is_user_aliveid ) ) return;

    if(
MAXRANKS == PlayerRank[id]+1)
        
ColorChat(idRED"[BetterPlay]^x01 Your level is ^x04#%d ^x01with rank ^x04%s ^x01. You have got ^x03 %d points"PlayerRank[id]+1rankNames[PlayerRank[id]], gPlayerPoints[id])
    else
        
ColorChat(idRED"[BetterPlay]^x01 Your level is ^x04#%d ^x01with rank ^x04%s^x01. You have got ^x03 %d^x01 /^x04 %d^x01 points to become^x04 %s^x01."PlayerRank[id]+1rankNames[PlayerRank[id]], gPlayerPoints[id], rankXP[PlayerRank[id]+1], rankNames[PlayerRank[id]+1])
    
    switch( 
PlayerRankid ] )
    {
        case 
28set_user_healthidget_user_healthid ) + );
        case 
29set_user_healthidget_user_healthid ) + 10 );
        case 
30set_user_healthidget_user_healthid ) + 15 );
        case 
31set_user_healthidget_user_healthid ) + 20 );
        case 
32set_user_healthidget_user_healthid ) + 30 );
    }
}

public 
cmdCheckLevel(id)
{
    new 
iMenu menu_create("\yBetterPlay \d- \wChoose Player\r:""checklevel_menu_handler")
    
    new 
iPlayers[32], iNumiTarget;
    new 
UserName[34], szTempID[10];
    
get_players(iPlayersiNum);
    for(new 
iiNumi++)
    {
        
iTarget iPlayers[i];
        if(!
is_user_connected(iTarget))
            continue;
        
get_user_name(iTargetUserNamesizeof UserName 1);
        
num_to_str(iTargetszTempIDcharsmax(szTempID));
        
menu_additem(iMenuUserNameszTempID);
    }
    
menu_setprop(iMenuMPROP_EXITMEXIT_ALL);
    
menu_display(idiMenu0);
}

public 
checklevel_menu_handler(idiMenuItem)
{
    if(
Item == MENU_EXIT)
    {
        
menu_destroy(iMenu);
        return 
PLUGIN_HANDLED;
    }
    new 
iData[6], iName[64];
    new 
accesscallback;
    
menu_item_getinfo(iMenuItemaccessiDatacharsmax(iData), iNamecharsmax(iName), callback);
    new 
target str_to_num(iData);
    if(!
is_user_connected(target))
    {
        
ColorChat(idGREEN"[BetterPlay]^x01 The player you chose is not in the server.")
        
menu_destroy(iMenu);
        
cmdCheckLevel(id);
        return 
PLUGIN_HANDLED;
    }
    
menu_destroy(iMenu);
    new 
szText[256], player_name[32];
    
get_user_name(targetplayer_name31);
    if(
MAXRANKS == PlayerRank[target]+1)
        
formatex(szTextcharsmax(szText), "<html><head></head><body><br/>Name: %s<br/>Points: %d<br/>Level: %d/%d<br/>Rank: %s<br/></body></html>"player_namegPlayerPoints[target], PlayerRank[target]+1MAXRANKSrankNames[PlayerRank[target]]);
    else
        
formatex(szTextcharsmax(szText), "<html><head></head><body><br/>Name: %s<br/>Points: %d/%d<br/>Level: %d/%d<br/>Rank: %s<br/>Next Rank: %s</body></html>"player_namegPlayerPoints[target], rankXP[PlayerRank[target]+1], PlayerRank[target]+1MAXRANKSrankNames[PlayerRank[target]], rankNames[PlayerRank[target]+1]);
    
show_motd(idszText"BetterPlay Rank System");
    
cmdCheckLevel(id);
    return 
PLUGIN_HANDLED;
}

public 
taskHud()
{
    new 
iPlayers[32], iNumiTarget;
    
get_players(iPlayersiNum);
    for(new 
iiNumi++)
    {
        
iTarget iPlayers[i];
        if(!
is_user_connected(iTarget))
            continue;
    
        
set_hudmessage(01391390.020.1706.012.0)
        if(
MAXRANKS == PlayerRank[iTarget]+1)
            
ShowSyncHudMsg(iTargetg_MsgHud"Level: %d/%d^nRank : %s^nPoints : %d",PlayerRank[iTarget]+1MAXRANKSrankNames[PlayerRank[iTarget]], gPlayerPoints[iTarget])
        else
            
ShowSyncHudMsg(iTargetg_MsgHud"Level: %d/%d^nRank : %s^nPoints : %d/%d",PlayerRank[iTarget]+1MAXRANKSrankNames[PlayerRank[iTarget]], gPlayerPoints[iTarget], rankXP[PlayerRank[iTarget]+1])
    }
}

public 
cmdJumpRank(id)
{
    if(
MAXRANKS == PlayerRank[id]+1)
        
ColorChat(idRED"[BetterPlay]^x01 Your level is ^x04#%d ^x01| Rank ^x04%s ^x01| Points:^x03 %d"PlayerRank[id]+1rankNames[PlayerRank[id]], gPlayerPoints[id])
    else
        
ColorChat(idRED"[BetterPlay]^x01 Your level is ^x04#%d ^x01| Rank ^x04%s ^x01| Points:^x03 %d^x01 /^x04 %d^x01 to become^x04 %s^x01."PlayerRank[id]+1rankNames[PlayerRank[id]], gPlayerPoints[id], rankXP[PlayerRank[id]+1], rankNames[PlayerRank[id]+1])
}

public 
cmdRankMenu(idlevelcid)
{
    if(!
cmd_access(idlevelcid1))
        return 
PLUGIN_HANDLED;
    new 
iMenu menu_create("Rank Menu""rankmenu_menu_handler")
    
menu_additem(iMenu"Give Points""1");
    
menu_additem(iMenu"Take Points""2");
    
menu_setprop(iMenuMPROP_EXITMEXIT_ALL);
    
menu_display(idiMenu0);
    return 
PLUGIN_CONTINUE;
}

public 
rankmenu_menu_handler(idiMenuItem)
{
    if(
Item == MENU_EXIT)
    {
        
menu_destroy(iMenu);
        return 
PLUGIN_HANDLED;
    }
    new 
iData[6], iName[64];
    new 
accesscallback;
    
menu_item_getinfo(iMenuItemaccessiDatacharsmax(iData), iNamecharsmax(iName), callback);
    
give[id] = str_to_num(iData);
    
GiveTakeMenu(id);
    return 
PLUGIN_HANDLED;
}

public 
GiveTakeMenu(id)
{
    static 
szText[64]
    
formatex(szText63"%s Points"give[id] == "Give" "Take")
    new 
iMenu menu_create(szText"givetake_menu_handler")

    new 
iPlayers[32], iNumiTarget;
    new 
UserName[34], szTempID[10];
    
get_players(iPlayersiNum);
    for(new 
iiNumi++)
    {
        
iTarget iPlayers[i];
        if(!
is_user_connected(iTarget))
            continue;
        
get_user_name(iTargetUserNamesizeof UserName 1);
        
num_to_str(iTargetszTempIDcharsmax(szTempID));
        
menu_additem(iMenuUserNameszTempID);
    }
    
menu_setprop(iMenuMPROP_EXITMEXIT_ALL);
    
menu_display(idiMenu0);
}

public 
givetake_menu_handler(idiMenuItem)
{
    if(
Item == MENU_EXIT)
    {
        
menu_destroy(iMenu);
        return 
PLUGIN_HANDLED;
    }

    new 
iData[6], iName[64];
    new 
accesscallback;
    
menu_item_getinfo(iMenuItemaccessiDatacharsmax(iData), iNamecharsmax(iName), callback);
    
iTarget[id] = str_to_num(iData);
    if(!
is_user_connected(iTarget[id]))
    {
        
iTarget[id] = 0
        ColorChat
(idGREEN"[BetterPlay]^x01 The player you chose is not in the server.")
        return 
PLUGIN_HANDLED;
    }
    
menu_destroy(iMenu);
    
client_cmd(id"messagemode Points_Amount");
    return 
PLUGIN_HANDLED;
}

public 
cmdTyped(idlevelcid)
{
    if(!
cmd_access(idlevelcid1))
        return 
PLUGIN_HANDLED;

    if(!
iTarget[id] || give[id] <= 0)
        return 
PLUGIN_HANDLED;
    if(!
is_user_connected(iTarget[id]))
    {
        
ColorChat(idRED"[BetterPlay]^x01 The player you chose is not in the server.")
        return 
PLUGIN_HANDLED;
    }

    new 
iTyped[12];
    
read_argv(1iTypedsizeof iTyped 1);
    new 
g_points str_to_num(iTyped)
    new 
AdminName[32], PlayerName[32];
    
get_user_name(idAdminName31)
    
get_user_name(iTarget[id], PlayerName31)
    if(
give[id] == 1)
    {
        
gPlayerPoints[iTarget[id]] += g_points
        ColorChat
(0GREEN,"[BetterPlay]^x03 %s^x01 gave^x04 %d^x01 rank points to^x03 %s^x01."AdminNameg_pointsPlayerName)
    }
    else
    {
        if(
g_points gPlayerPoints[iTarget[id]])
            
gPlayerPoints[iTarget[id]] = 0
        
else
            
gPlayerPoints[iTarget[id]] -= g_points;
        
ColorChat(0GREEN,"[BetterPlay]^x03 %s^x01 took^x04 %d^x01 rank points from^x03 %s^x01."AdminNameg_pointsPlayerName)
    }
    new 
currentPlayerRank 0;
    while(
currentPlayerRank < (MAXRANKS 1))
    {       
        if(
gPlayerPoints[iTarget[id]] >= rankXP[currentPlayerRank 1])
            ++
currentPlayerRank;     
        else         
            break;
    }
    
PlayerRank[iTarget[id]] = currentPlayerRank;
    
iTarget[id] = 0;
    
GiveTakeMenu(id);
    
Saveid );
    return 
PLUGIN_HANDLED;
}

public 
client_authorizedid )
{
    
Loadid );
}

public 
client_disconnectid )
{
    
Saveid );
}

public 
client_putinserver(id)
{
    new 
currentPlayerRank 0;
    while(
currentPlayerRank < (MAXRANKS 1))
    {       
        if(
gPlayerPoints[id] >= rankXP[currentPlayerRank 1])
            ++
currentPlayerRank;     
        else         
            break;
    }
    
PlayerRank[id] = currentPlayerRank;
}

public 
Loadid )
{
    if( !
is_user_botid ) && !is_user_hltvid ) )
    {
        new 
vaultkey64 ], vaultdata256 ], points33 ], UserName33 ];
        
get_user_nameidUserNamecharsmaxUserName ) );
        
        
formatvaultkeycharsmaxvaultkey ), "%s"UserName );
        
formatvaultdatacharsmaxvaultdata ), "%i#"gPlayerPointsid ] );
        
        
nvault_getgVaultvaultkeyvaultdata255 );
        
replace_allvaultdata255"#"" " );
        
        
parsevaultdatapoints32 );
        
gPlayerPointsid ] = str_to_numpoints );
    }
}

public 
Saveid )
{
    if( !
is_user_botid ) && !is_user_hltvid ) )
    {
        new 
vaultkey64 ], vaultdata256 ], UserName33 ];
        
get_user_nameidUserNamecharsmaxUserName ) );
        
        
formatvaultkeycharsmaxvaultkey ), "%s"UserName );
        
formatvaultdatacharsmaxvaultdata ), "%i#"gPlayerPointsid ] );
        
        
nvault_setgVaultvaultkeyvaultdata );
    }
}

public 
avoid_duplicated(msgIdmsgDestreceiver)
    return 
PLUGIN_HANDLED;

public 
hook_say(id)
{
    
read_args(message191)
    
remove_quotes(message)

    if(
message[0] == '@' || message[0] == '/' || message[0] == '!' || message[0] == '#' || message[0] == '$' || equal(message""))
        return 
PLUGIN_CONTINUE

    get_user_name
(idg_namecharsmax(g_name))

    new 
isAlive    
    
new admin 0iFlags get_user_flags(id)
    if(
iFlags ADMIN_LEVEL_Badmin 1  //owner
    
else if(iFlags ADMIN_LEVEL_Cadmin 2   //administrator
     
else if(iFlags ADMIN_LEVEL_Dadmin 3  //global
    
else if(iFlags&  ADMIN_LEVEL_Gadmin=//otgowornik
    
else if(iFlagsADMIN_LEVEL_Hadmin=5  //ekip banove
    
else if(iFlags ADMIN_BANadmin 6  //admin
    
else if(iFlags ADMIN_LEVEL_Fadmin 7  //test
    
else if(iFlags ADMIN_LEVEL_Eadmin 8  //vip
    
else if(iFlags ADMIN_CHATadmin 9  //sms admin
    

    
if(is_user_alive(id))
    {
        
isAlive 1
        alive 
"^x01"
    
}
    else
    {
        
isAlive 0
        alive 
"^x01*DEAD* "
    
}

    static  
color[10]
    if(
admin)
    {
        
get_user_team(idcolor9)
        
format(strName191"%s^x01[^x04%s^x01] ^x03%s "aliveg_szTag[admin], g_name)
        
format(strText191"^x01%s"message)
    }
    else
    {
        
get_user_name(idg_name32)
        
get_user_team(idcolor9)
        
format(strName191"%s^x04%s ^x03%s"aliverankNames[PlayerRank[id]], g_name)
        
format(strText191"%s"message)
    }

    
format(message191"%s ^x01: %s"strNamestrText)

    
sendMessage(colorisAlive)// Sends the colored message
    
return PLUGIN_CONTINUE;
}

public 
hook_teamsay(id)
{
    
read_args(message191)
    
remove_quotes(message)

    if(
message[0] == '@' || message[0] == '/' || message[0] == '!' || message[0] == '#' || message[0] == '$' || equal(message"")) // Ignores Admin Hud Messages, Admin Slash commands
        
return PLUGIN_CONTINUE

    
new playerTeam get_user_team(id)
    new 
playerTeamName[19]

    switch(
playerTeam// Team names which appear on team-only messages
    
{
        case 
1copy(playerTeamName11"Terrorists")
        case 
2copy(playerTeamName18"Counter-Terrorists")
        default: 
copy(playerTeamName9"Spectator")
    }

    
get_user_name(idg_namecharsmax(g_name))
    new 
isAlive    
    
new admin 0iFlags get_user_flags(id)
    if(
iFlags ADMIN_LEVEL_Badmin 1  //owner
    
else if(iFlags ADMIN_LEVEL_Cadmin 2   //administrator
     
else if(iFlags ADMIN_LEVEL_Dadmin 3  //global
    
else if(iFlags&  ADMIN_LEVEL_Gadmin=//otgowornik
    
else if(iFlagsADMIN_LEVEL_Hadmin=5  //ekip banove
    
else if(iFlags ADMIN_BANadmin 6  //admin
    
else if(iFlags ADMIN_LEVEL_Fadmin 7  //test
    
else if(iFlags ADMIN_LEVEL_Eadmin 8  //vip
    
else if(iFlags ADMIN_CHATadmin 9  //sms admin

    
if(is_user_alive(id))
    {
        
isAlive 1
        alive 
"^x01"
    
}
    else
    {
        
isAlive 0
        alive 
"^x01*DEAD* "
    
}

    static  
color[10]
    if(
admin)
    {
        
get_user_team(idcolor9)
        
format(strName191"%s(%s) ^x01[^x04%s^x01] ^x03%s "aliveplayerTeamName,  g_szTag[admin], g_name)
        
format(strText191"^x01%s"message)
    }
    else
    {
        
get_user_name(idg_name32)
        
get_user_team(idcolor9);
        
format(strName191"%s(%s) ^x04%s ^x03%s"aliveplayerTeamNamerankNames[PlayerRank[id]], g_name)
        
format(strText191"%s"message)
    }

    
format(message191"%s ^x01: %s"strNamestrText)
    
sendTeamMessage(colorisAliveplayerTeam)
    return 
PLUGIN_CONTINUE
}

public 
sendMessage(color[], alive)
{
    new 
teamName[10]
   
    for(new 
player 1player maxPlayersplayer++)
    {
        if(!
is_user_connected(player))
            continue

        
get_pcvar_string(g_AdminListenFlagtemp_cvarcharsmax(temp_cvar))
        if(
alive && is_user_alive(player) || !alive && !is_user_alive(player) || get_pcvar_num(g_AdminListen) && get_user_flags(player) & read_flags(temp_cvar))
        {
            
get_user_team(playerteamName9)// Stores user's team name to change back after sending the message
            
changeTeamInfo(playercolor)// Changes user's team according to color choosen
            
writeMessage(playermessage)// Writes the message on player's chat
            
changeTeamInfo(playerteamName)// Changes user's team back to original
        
}
    }
}

public 
sendTeamMessage(color[], aliveplayerTeam)
{
    new 
teamName[10]

    for(new 
player 1player maxPlayersplayer++)
    {
        if(!
is_user_connected(player))
            continue

        
get_pcvar_string(g_AdminListenFlagtemp_cvarcharsmax(temp_cvar))
        if(
get_user_team(player) == playerTeam || get_pcvar_num(g_AdminListen) && get_user_flags(player) & read_flags(temp_cvar))
        {
            if(
alive && is_user_alive(player) || !alive && !is_user_alive(player) || get_pcvar_num(g_AdminListen) && get_user_flags(player) & read_flags(temp_cvar))
            {
                
get_user_team(playerteamName9)// Stores user's team name to change back after sending the message
                
changeTeamInfo(playercolor)// Changes user's team according to color choosen
                
writeMessage(playermessage)// Writes the message on player's chat
                
changeTeamInfo(playerteamName)// Changes user's team back to original
            
}
        }
    }
}


public 
changeTeamInfo(playerteam[])
{
    
message_begin(MSG_ONEteamInfo_player)// Tells to to modify teamInfo(Which is responsable for which time player is)
    
write_byte(player)// Write byte needed
    
write_string(team)// Changes player's team
    
message_end()// Also Needed
}


public 
writeMessage(playermessage[])
{
    
message_begin(MSG_ONEsayText, {000}, player)// Tells to modify sayText(Which is responsable for writing colored messages)
    
write_byte(player)// Write byte needed
    
write_string(message)// Effectively write the message, finally, afterall
    
message_end()// Needed as always
}

public 
Hook_Deathmessage()
{
    new 
killer read_data(1);
    new 
victim read_data(2);

    if(
killer == victim)
        return 
PLUGIN_CONTINUE;
    if(!
killer || killer maxPlayers)
        return 
PLUGIN_CONTINUE;

    
gPlayerPoints[killer]++
    new 
currentPlayerRank 0;
    while(
currentPlayerRank < (MAXRANKS 1))
    {       
        if(
gPlayerPoints[killer] >= rankXP[currentPlayerRank 1])
            ++
currentPlayerRank;     
        else         
            break;
    }
    new 
OldRank PlayerRank[killer]
    
PlayerRank[killer] = currentPlayerRank
    Save
killer );
    if(
OldRank currentPlayerRank)
    {
        new 
g_name[32]
        
get_user_name(killerg_name31)
        
ColorChat(0GREEN"[BetterPlay] ^1Congratulations! ^x03%s^x01 got a new rank ^x04%s"g_namerankNames[PlayerRank[killer]])
    }
    return 
PLUGIN_CONTINUE;

hud show rank

PHP Code:
#include <amxmodx> 
#include <amxmisc> 
#include <csstats> 
#define HUD_INTERVAL 1.0 
#define RANK_NOTHING 0 
#define RANK_PRIVATE 1 
#define RANK_PRIVATE_FIRST_CLASS 2 
#define RANK_CORPORAL 3 
#define RANK_SERGEANT 4 
#define RANK_STAFF_SERGEANT 5 
#define RANK_GUNNERY_SERGEANT 6 
#define RANK_MASTER_SERGEANT 7 
#define RANK_COMMAND_SERGEANT 8 
#define RANK_SECOND_LIEUTENANT 9 
#define RANK_FIRST_LIEUTENANT 10 
#define RANK_COLONEL 11 
#define RANK_BRIGADIER_GENERAL 12 
#define RANK_MAJOR_GENERAL 13 
#define RANK_LIEUTENANT_GENERAL 14 
#define RANK_GENERAL 15 
#define RANK_GENERAL_OF_THE_ARMY 16 
#define MAXRANKS 17 
new PlayerRank[33
new const 
rankNames[MAXRANKS][] = 
{  
"Onbasi",  
"Cavus",  
"Uzman",  
"Astsubay",  
"Astegmen",  
"Tegmen",  
"Ustegmen",  
"Yuzbasi",  
"Binbasi",  
"Yarbay",  
"Albay",  
"Tuggeneral",  
"Tumgeneral",  
"Korgeneral",  
"Orgeneral",  
"GenelKurmay Baskani",  
"Maresal" 
}
 new const 
rankXP[MAXRANKS] = 
 { 
  
0100200400800100020004000800010000120001500020000400005000080000100000 
 

 
 public 
plugin_init() 
 
 {
 
register_plugin("Rank Display""0.1","gaben"
 } 
 
 public 
client_putinserver(id
 { 
 
set_task(HUD_INTERVAL"ShowHUD"id)     
 return 
PLUGIN_HANDLED 
 

 
 public 
ShowHUD(id)     
 {
     
 if(!
is_user_connected(id))       
 return 
0    
 
static stats[8], hits[8], name[33]  
 
get_user_stats(idstatshits)
 
get_user_name(idname32)
 
 new 
currentPlayerRank 0;  
 while
 (
currentPlayerRank < (MAXRANKS 1)) 
 {        
 if(
stats[0] >= rankXP[currentPlayerRank 1])         
 ++
currentPlayerRank;      
 else         
 break;  
 }       
 new 
leftkills stats[0];
 new 
right rankXP[currentPlayerRank 1]
 
//I have no idea why you are storing the rank here, maybe you're planning to use it later   
 
PlayerRank[id] = currentPlayerRank;     
 
set_hudmessage(02550, -0.1, -0.106.012.0)
 
show_hudmessage(id"%s : [Rutben: %s] ^nFrags: [%i / %i]"namerankNames[currentPlayerRank], leftkillsright)    
 
set_task(HUD_INTERVAL"ShowHUD"id)    
 return 
PLUGIN_HANDLED
 

rank plugin with csstats

PHP Code:
#include <amxmodx>
#include <amxmisc>
#include <csstats>

#define RANK_a 0
#define RANK_b 1
#define RANK_c 2 
#define RANK_d 3
#define RANK_e 4
#define RANK_f 5
#define RANK_g 6
#define RANK_h 7
#define RANK_i 8
#define RANK_j 9
#define RANK_k 10
#define RANK_1 12
#define RANK_2 13
#define RANK_3 14
#define RANK_4 15
#define RANK_5 16
#define RANK_6 17
#define RANK_7 18
#define RANK_8 19
#define RANK_9 20
#define RANK_11 21
#define RANK_12 23
#define RANK_13 24
#define RANK_14 25
#define RANK_15 26
#define RANK_16 27
#define RANK_17 28
#define RANK_18 29
#define RANK_19 30
#define RANK_20 31

#define MAXRANKS 31

new PlayerRank[33]

#define ACCESS_LEVEL  ADMIN_RCON
#define ADMIN_LISTEN  ADMIN_IMMUNITY

new message[192]
new 
sayText
new teamInfo
new maxPlayers

new g_MessageColor
new g_NameColor
new g_AdminListen

new strName[191]
new 
strText[191]
new 
alive[11]

new const 
g_szTag[][] = {
"[SOBSTVENIK]",
"[Global Admin]",
"[Local Admin]",
"[VIP]",
"[Co-Op]"
}

public 
plugin_init()
{
register_plugin("Ranks&AdminTags","X",":)"

g_MessageColor register_cvar("amx_color""3")
g_NameColor register_cvar("amx_namecolor""2")
g_AdminListen register_cvar("amx_listen""1")

sayText get_user_msgid("SayText")
teamInfo get_user_msgid("TeamInfo")
maxPlayers get_maxplayers()

register_message(sayText"avoid_duplicated")

register_concmd("amx_color""set_color"ACCESS_LEVEL"<color>")
register_concmd("amx_namecolor""set_name_color"ACCESS_LEVEL"<color>")
register_concmd("amx_listen""set_listen"ACCESS_LEVEL"<1 | 0>")
register_clcmd("say""hook_say")
register_clcmd("say_team""hook_teamsay")
}

new const 
rankNames[MAXRANKS][] = 

"^x04[^x03Rednik^x04]",
"^x04[^x03Efreitor^x04]",
"^x04[^x03Mladshi Serjant^x04]",
"^x04[^x03Serjant^x04]",
"^x04[^x03Starshi Serjant^x04]",
"^x04[^x03Oficerski Kandidat^x04]",
"^x04[^x03Feldfebel^x04]",
"^x04[^x03Podporuchnik^x04]",
"^x04[^x03Poruchnik^x04]",
"^x04[^x03Starshina^x04]",
"^x04[^x03Leitenant^x04]",
"^x04[^x03Starshi Leitenant^x04]",
"^x04[^x03Kapitan^x04]",
"^x04[^x03Major^x04]",
"^x04[^x03Podpolkovnik^x04]",
"^x04[^x03Polkovnik^x04]",
"^x04[^x03Kapitan^x04]",
"^x04[^x03Komandir^x04]",
"^x04[^x03Brigaden General^x04]",
"^x04[^x03General-Major^x04]",
"^x04[^x03General-Leitenant^x04]",
"^x04[^x03General^x04]",
"^x04[^x03Zombie Veteran^x04]",
"^x04[^x03Zombie Master^x04]",
"^x04[^x03Zombie MASHINA^x04]",
"^x04[^x03PRO^x04]",
"^x04[^x03HERO^x04]",
"^x04[^x03Quick^x04]",
"^x04[^x03Commander^x04]",
"^x04[^x03THE ONE KILLER^x04]",
"^x03[^x04Prefessional^x03]"
}

new const 
rankXP[MAXRANKS] =
{
1050100200400450480500600100017002300270032503699399843994800520058706200650070008000870091009800103001100011400
}

public 
avoid_duplicated(msgIdmsgDestreceiver)
{
return 
PLUGIN_HANDLED
}

public 
hook_say(id)
{
read_args(message191)
remove_quotes(message)

if(
message[0] == '@' || message[0] == '/' || message[0] == '!' || message[0] == '#' || message[0] == '$' || equal(message""))
return 
PLUGIN_CONTINUE

new name[32]
get_user_name(idname31)

new 
admin 0iFlags get_user_flags(id)

if(
iFlags ADMIN_LEVEL_A)
admin 1
else if(iFlags ADMIN_LEVEL_B)
admin 2
else if(iFlags ADMIN_LEVEL_C)
admin 3
else if(iFlags ADMIN_LEVEL_D)
admin 4
else if(iFlags ADMIN_LEVEL_E)
admin 5


new isAlive


if(is_user_alive(id))
{
isAlive 1
alive 
"^x01"
}
else
{
isAlive 0
alive 
"^x01*DEAD* "
}

static 
color[10]

if(
admin)
{
switch(
get_pcvar_num(g_NameColor))
{
case 
1:
format(strName191"%s^x03%s ^x04%s"aliveg_szTag[admin], name)
case 
2:
format(strName191"%s^x03%s ^x04%s"aliveg_szTag[admin], name)
case 
3:
{
color "SPECTATOR"
format(strName191"%s^x03%s ^x04%s"aliveg_szTag[admin], name)
}
case 
4:
{
color "CT"
format(strName191"%s^x03%s ^x04%s"aliveg_szTag[admin], name)
}
case 
5:
{
color "TERRORIST"
format(strName191"%s^x03%s ^x04%s"aliveg_szTag[admin], name)
}
case 
6:
{
get_user_team(idcolor9)
format(strName191"%s^x03%s ^x04%s"aliveg_szTag[admin], name)
}
}

switch(
get_pcvar_num(g_MessageColor))
{
case 
1:
format(strText191"^x03%s"message)
case 
2:
format(strText191"^x03%s"message)
case 
3:
{
copy(color9"SPECTATOR")
format(strText191"^x03%s"message)
}
case 
4:
{
copy(color9"CT")
format(strText191"^x03%s"message)
}
case 
5:
{
copy(color9"TERRORIST")
format(strText191"^x03%s"message)
}
}
}
else
{
get_user_team(idcolor9)

static 
stats[8], hits[8]  
get_user_stats(idstatshits)
get_user_name(idname32)

new 
currentPlayerRank 0;  
while
(
currentPlayerRank < (MAXRANKS 1)) 
{        
if(
stats[0] >= rankXP[currentPlayerRank 1])         
++
currentPlayerRank;      
else         
break;  
}        
PlayerRank[id] = currentPlayerRank;

format(strName191"%s%s^x03 %s"aliverankNames[currentPlayerRank], name)
format(strText191"^x01%s"message)
}
    
format(message191"%s^x01: %s"strNamestrText)

sendMessage(colorisAlive)

return 
PLUGIN_CONTINUE
}

public 
hook_teamsay(id)
{
new 
playerTeam get_user_team(id)

read_args(message191)
remove_quotes(message)

if(
message[0] == '@' || message[0] == '/' || message[0] == '!' || message[0] == '#' || message[0] == '$' || equal(message""))
return 
PLUGIN_CONTINUE

new name[32]
get_user_name (idname31)

new 
admin 0iFlags get_user_flags(id)

if(
iFlags ADMIN_LEVEL_A)
admin 1
else if(iFlags ADMIN_LEVEL_B)
admin 2
else if(iFlags ADMIN_LEVEL_C)
admin 3
else if(iFlags ADMIN_LEVEL_D)
admin 4
else if(iFlags ADMIN_LEVEL_E)
admin 5


new isAlive

if(is_user_alive(id))
{
isAlive 1
alive 
"^x01"
}
else
{
isAlive 0
alive 
"^x01*DEAD* "
}

static 
color[10]

if(
admin)
{
switch(
get_pcvar_num(g_NameColor))
{
case 
1:
format(strName191"%s(Teamchat) ^x03%s ^x04%s"aliveg_szTag[admin], name)
case 
2:
format(strName191"%s(Teamchat) ^x03%s ^x04%s"aliveg_szTag[admin], name)
case 
3:
{
color "SPECTATOR"
format(strName191"%s(Teamchat) ^x03%s ^x04%s"aliveg_szTag[admin], name)
}
case 
4:
{
color "CT"
format(strName191"%s(Teamchat) ^x03%s ^x04%s"aliveg_szTag[admin], name)
}
case 
5:
{
color "TERRORIST"
format(strName191"%s(Teamchat) ^x03%s ^x04%s"aliveg_szTag[admin], name)
}
case 
6:
{
get_user_team(idcolor9)
format(strName191"%s(Teamchat) ^x03%s ^x04%s"aliveg_szTag[admin], name)
}
}

switch(
get_pcvar_num(g_MessageColor))
{
case 
1:    
format(strText191"^x03%s"message)
case 
2:
format(strText191"^x03%s"message)
case 
3:    
{
copy(color9"SPECTATOR")
format(strText191"^x03%s"message)
}
case 
4:    
{
copy(color9"CT")
format(strText191"^x03%s"message)
}
case 
5:    
{
copy(color9"TERRORIST")
format(strText191"^x03%s"message)
}
}
}
else
{
get_user_team(idcolor9)

static 
stats[8], hits[8]  
get_user_stats(idstatshits)
get_user_name(idname32)

new 
currentPlayerRank 0;  
while
(
currentPlayerRank < (MAXRANKS 1)) 
{        
if(
stats[0] >= rankXP[currentPlayerRank 1])         
++
currentPlayerRank;      
else         
break;  
}        
PlayerRank[id] = currentPlayerRank;

format(strName191"%s(Teamchat) %s^x03 %s"aliverankNames[currentPlayerRank], name)
format(strText191"%s"message)
}

format(message191"%s^x01: %s"strNamestrText)

sendTeamMessage(colorisAliveplayerTeam)

return 
PLUGIN_CONTINUE
}

public 
set_color(idlevelcid)
{
if(!
cmd_access(idlevelcid2))
return 
PLUGIN_HANDLED

new arg[1], newColor
read_argv
(1arg1)

newColor str_to_num(arg)

if(
newColor >= && newColor <= 5)
{
set_pcvar_num(g_MessageColornewColor)

if(
get_pcvar_num(g_NameColor) != &&
((
newColor == &&  get_pcvar_num(g_NameColor) != 3)
||(
newColor == &&  get_pcvar_num(g_NameColor) != 4)
||(
newColor == &&  get_pcvar_num(g_NameColor) != 5)))
{
set_pcvar_num(g_NameColor2)
}
}

return 
PLUGIN_HANDLED
}

public 
set_name_color(idlevelcid)
{
if(!
cmd_access(idlevelcid2))
return 
PLUGIN_HANDLED

new arg[1], newColor
read_argv
(1arg1)

newColor str_to_num(arg)

if(
newColor >= && newColor <= 6)
{
set_pcvar_num(g_NameColornewColor)

if((
get_pcvar_num(g_MessageColor) != 1
&&((newColor == &&  get_pcvar_num(g_MessageColor) != 3)
||(
newColor == &&  get_pcvar_num(g_MessageColor) != 4)
||(
newColor == &&  get_pcvar_num(g_MessageColor) != 5)))
|| 
get_pcvar_num(g_NameColor) == 6)
{
set_pcvar_num(g_MessageColor2)
}
}

return 
PLUGIN_HANDLED
}

public 
set_listen(idlevelcid)
{
if(!
cmd_access(idlevelcid2))
return 
PLUGIN_HANDLED

new arg[1], newListen
read_argv
(1arg1)

newListen str_to_num(arg)

set_pcvar_num(g_AdminListennewListen)

return 
PLUGIN_HANDLED
}

public 
sendMessage(color[], alive)
{
new 
teamName[10]

for(new 
player 1player maxPlayersplayer++)
{
if(!
is_user_connected(player))
continue

if(
alive && is_user_alive(player) || !alive && !is_user_alive(player) || get_pcvar_num(g_AdminListen) && get_user_flags(player) & ADMIN_LISTEN)
{
get_user_team(playerteamName9)
changeTeamInfo(playercolor)
writeMessage(playermessage)
changeTeamInfo(playerteamName)
}
}
}

public 
sendTeamMessage(color[], aliveplayerTeam)
{
new 
teamName[10]

for(new 
player 1player maxPlayersplayer++)
{
if(!
is_user_connected(player))
continue

if(
get_user_team(player) == playerTeam || get_pcvar_num(g_AdminListen) && get_user_flags(player) & ADMIN_LISTEN)
{
if(
alive && is_user_alive(player) || !alive && !is_user_alive(player) || get_pcvar_num(g_AdminListen) && get_user_flags(player) & ADMIN_LISTEN)
{
get_user_team(playerteamName9)
changeTeamInfo(playercolor)
writeMessage(playermessage)
changeTeamInfo(playerteamName)
}
}
}
}

public 
changeTeamInfo(playerteam[])
{
message_begin(MSG_ONEteamInfo_player)
write_byte(player)
write_string(team)
message_end()
}

public 
writeMessage(playermessage[])
{
message_begin(MSG_ONEsayText, {000}, player)
write_byte(player)
write_string(message)
message_end()

one more rank plugin
http://cscontrol.ru/load/3-1-0-4079

one more
http://cscontrol.ru/load/3-1-0-3940

rank with points
PHP Code:
#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#include <fvault>
#include <fun>
#include <colorchat>

#define IsPlayer(%1)  (1 <= %1 <= g_players) 
#define TOTALLEVELS 18

new const g_vault_name[] = "levels_by_name"//kak se kazva faila, koito e kato localno db (zapazva prefixite)

new const g_team_names[CsTeams][] = 

    
"(Spectator) "
    
"(Terrorist) "
    
"(Counter-Terrorist) "
    
"(Spectator) " 
}; 

new 
xp
new cvar_hp
new cvar_hp2

new const Levels[TOTALLEVELS] = 
{
0,
50
100,
200,
300,
500,
750,
1000,
1250,
1500,
1750,
2000,
3500,
4500,
6500,
7500,
11000,
18000
}
new const 
LevelNames[TOTALLEVELS][] =
{
"[NEW]",
"[NewBie]",
"[Advanced]",
"[Learning]",
"[Kniffer]",
"[Killer]",
"[Danger Killer]",
"[Multi Killer]",
"[Super Killer]",
"[Pro Killer]",
"[SuperNova]",
"[Ultimate]",
"[OneAndOnly]",
"[Terminator]",
"[CrushFactor]",
"[GENESIS]",
"[Amazing Shooting]",
"[The Best Killer]"
}

// admin prefixes

new const g_szTag[][] = {
""//NEEEE IZTRIVAI!
"[Owner]",
"[SuperAdmin]",
"[Admin]",
"[Vip]"
}
     
new const 
g_iTagFlag[sizeof(g_szTag)] = {
ADMIN_ALL//NEEEE IZTRIVAI!
ADMIN_RCON,
ADMIN_IMMUNITY,
ADMIN_BAN,
ADMIN_LEVEL_H
}

//end 

new gXP[33], gLevel[33];
new 
points_killpoints_hs;
new  
g_players;

new 
g_msgid_SayText
new 
g_msgsync

public plugin_init()
{
register_plugin("Ranks with XP""Dedihost/val4o0o0""2.3");

register_event("DeathMsg""eDeath""a");

register_clcmd("say /xpmenu","setmenu1");

points_kill register_cvar("dr_rank_kill""1"); //kolko xp da dava pri kill (normalen)
points_hs register_cvar("dr_rank_hs","2"); //kolko xp da dava pri hs
cvar_hp register_cvar("dr_rank_hp_enable","1"); //da dava li hp pri ubiistvo
cvar_hp2 register_cvar("dr_rank_hp_value","25"); //kolko hp da dava pri ubiistvo

fvault_load(g_vault_name);
g_players get_maxplayers();


g_msgid_SayText get_user_msgid("SayText"); 

register_clcmd ("say""hook_say")
register_clcmd ("say_team""hook_teamsay")
register_clcmd ("amx_give_xp""addpts"ADMIN_BAN"<user> <xp>")
g_msgsync CreateHudSyncObj();
}



public 
eDeath(id
{
new 
killer read_data(1);
new 
victim read_data(2);
new 
gpoints_kill get_pcvar_num(points_kill);
new 
gpoints_hs get_pcvar_num(points_hs);

if( 
IsPlayer(killer) && is_user_connected(killer) )
{
  if( 
victim != killer )
  {
   if( 
cs_get_user_team(victim) != cs_get_user_team(killer) )
   {
    if( 
is_user_alive(killer) )
    {
     if(
get_pcvar_num(cvar_hp) == 1) {
     
set_user_health(killer,get_user_health(killer)+get_pcvar_num(cvar_hp2));
     }     
     if(!
read_data(3))
     {
      
gXP[killer] += gpoints_kill
      
//ColorChat(killer, GREY,"*^x4[^3Ranks^4]^3 You Gained %d XP!", gpoints_kill);
     
}
     else if(
read_data(3))
     {
      
gXP[killer] += (gpoints_hs);
     
// ColorChat(killer, GREY,"*^x4[^3Ranks^4]^3 You Gained %d XP!", gpoints_hs);
     
}

     
CheckLevel(killer);
     
SaveData(killer);
    }
   }
  }
}

return 
PLUGIN_HANDLED;
}




public 
CheckLevel(id)
{
if( 
gXP[id] >= Levels[gLevel[id]] )
{
gLevel[id]++;
new 
szName[33];
get_user_name(idszNamecharsmax(szName));
ColorChat(idGREY,"*^x4[^3Ranks^4]^3 Congratulations You are [Level: %i/%i] with Title %s!"gLevel[id], TOTALLEVELSLevelNames[gLevel[id]-1]);
}
}


public 
CmdShowHud (id)
{
if (
is_user_connected(id) && gXP[id]>=0) {
set_hudmessage(random_num(70,255), random_num(70,255), 00.340.0306.0,4.00.10.22)
ShowSyncHudMsg(idg_msgsync"*[Ranks]Level: %i/%i | RankName: %s | XP: %i"gLevel[id], TOTALLEVELS LevelNames[gLevel[id]-1], gXP[id] )
}
}


public 
client_connect(id)
{
LoadData(id);

if(
gXP[id] == && gLevel[id] == 0) {
gLevel[id] = 1;
gXP[id] = 0
}
if( 
gXP[id] > && gLevel[id] == 0){
gLevel[id] = 1;


}


public 
client_disconnect(id)
{
SaveData(id);
gXP[id] = 0;
gLevel[id] = 0;
}

public 
client_putinserver(idset_task(1.0,"CmdShowHud",id,_,_,"b")

public 
SaveData(id)
{
new 
name[32];
get_user_name(id,name,31);
new 
vaultkey[64],vaultdata[256];
format(vaultkey,63,"%s"name);
format(vaultdata,255,"%i#%i#",gXP[id],gLevel[id]);
fvault_set_data(g_vault_name,vaultkey,vaultdata);
return 
PLUGIN_CONTINUE;
}
public 
LoadData(id)
{
new 
name[32];
get_user_name(id,name,31);
new 
vaultkey[64],vaultdata[256];
format(vaultkey,63,"%s",name);
format(vaultdata,255,"%i#%i#",gXP[id],gLevel[id]);
fvault_get_data(g_vault_name,vaultkey,vaultdata,charsmax(vaultdata));
replace_all(vaultdata255"#"" ");
new 
playerxp[32], playerlevel[32];
parse(vaultdataplayerxp31playerlevel31);
gXP[id] = str_to_num(playerxp);
gLevel[id] = str_to_num(playerlevel);

return 
PLUGIN_CONTINUE;
}



public 
addpts(idlevelcid) {
if (!
cmd_access(idlevelcid2))
return 
PLUGIN_HANDLED

new arg11[32],arg22[32],name[32]
read_argv(1arg1131)
read_argv(2arg2231)

new 
arg23 str_to_num(arg22)

new 
player cmd_target(idarg11CMDTARGET_OBEY_IMMUNITY CMDTARGET_ALLOW_SELF)
get_user_name(playername31)

if (!
player || is_user_bot(player))
return 
PLUGIN_HANDLED

new vaultkey[64],vaultdata[256];
format(vaultkey,63,"%s",name);
format(vaultdata,255,"%i",gXP[player]);
fvault_get_data(g_vault_namevaultkey,vaultdata,charsmax(vaultdata))

new 
data[255]; 
formatex(datacharsmax(data), "%i"str_to_num(vaultdata) + arg23); 

fvault_set_data(g_vault_namenamedata)
gXP[player] = str_to_num(data)
client_print(idprint_console"Successfuly added xp to %s",name)
return 
PLUGIN_HANDLED
}


public 
hook_say(client

    new 
said[192]; 
    
read_args(saidsizeof(said) - 1); 
    
remove_quotes(said); 
     
     
    new 
name[32]; 
    
get_user_name(clientnamesizeof(name) - 1); 
     
    new 
alive is_user_alive(client); 
     
    new 
tag[9]; 
    if( 
cs_get_user_team(client) == CS_TEAM_SPECTATOR 
    { 
        
copy(tagsizeof(tag) - 1"*SPEC* "); 
    } 
    else if( !
alive 
    { 
        
copy(tagsizeof(tag) - 1"*DEAD* "); 
    } 
     

    if(
gXP[client]>=0) {
    new 
admin get_tag_index(client)
    new 
message[192]; 
    
formatex(messagesizeof(message) - 1"^x01%s^x04%s^x04 %s^x03 %s^x01 :  %s",  tagg_szTag[admin], LevelNames[gLevel[client]-1], namesaid); 
    if (
contain(message"@") != -1) {
    return 
PLUGIN_HANDLED
    
}

    for( new 
1<= g_playersi++ ) 
    { 
        if(!
is_user_connected(i) || is_user_alive(i) != alive ) continue 
        
message_begin(MSG_ONE_UNRELIABLEg_msgid_SayText_i); 
        
write_byte(client); 
        
write_string(message); 
        
message_end(); 
    } 
     
   
    }
 
    return 
PLUGIN_HANDLED_MAIN


public 
hook_teamsay(client

    new 
said[192]; 
    
read_args(saidsizeof(said) - 1); 
    
remove_quotes(said); 
     
    new 
name[32]; 
    
get_user_name(clientnamesizeof(name) - 1); 
     
    new 
alive is_user_alive(client); 
     
    new 
CsTeams:team cs_get_user_team(client); 
     

    if(
gXP[client]>=0) {
    new 
admin get_tag_index(client)
    new 
message[192]; 
    
formatex(messagesizeof(message) - 1"^x01%s^x04%s^x04 %s^x03 %s^x01 :  %s"g_team_names[team],g_szTag[admin], LevelNames[gLevel[client]-1],namesaid); 
    if (
contain(message"@") != -1) {
    return 
PLUGIN_HANDLED
    
}

    for( new 
1<= g_playersi++ ) 
    { 
        if(!
is_user_connected(i) || is_user_alive(i) != alive || get_user_team(i) != get_user_team(client)) continue 
        
message_begin(MSG_ONE_UNRELIABLEg_msgid_SayText_i); 
        
write_byte(client); 
        
write_string(message); 
        
message_end(); 
    } 
    }
     
     
    return 
PLUGIN_HANDLED_MAIN



public 
setmenu1id ) {
if(
get_user_flags(id) & ADMIN_RCON) {
new 
menu menu_create"\rChoose XP to Given!:""menu_handler2" );
menu_additemmenu"\w15 XP""");
menu_additemmenu"\w20 XP""");
menu_additemmenu"\w100 XP""");
menu_additemmenu"\w500 XP""");
menu_additemmenu"\w1000 XP""");
menu_setpropmenuMPROP_EXITMEXIT_ALL );
menu_displayidmenu);
} else {
ColorChat(id,GREEN,"Nqmash nujnite prava za dostup!");
}
}

public 
menu_handler2idmenuitem )
{
if ( 
item == MENU_EXIT )
{
menu_destroymenu );
return 
PLUGIN_HANDLED;
}

new 
szData[6], szName[64];
new 
item_accessitem_callback;
menu_item_getinfomenuitemitem_accessszData,charsmaxszData ), szName,charsmaxszName ), item_callback );
    
switch( 
item )
{
                case 
0:
                {
                  
xp 15;
                }
                case 
1:
                {
                  
xp 20
                
}
                case 
2:
                {
                  
xp 100
                
}
                case 
3:
                {
                  
xp 500
                
}
                case 
4:
                {
                  
xp 1000
                

}    
    
setmenu(id
menu_destroymenu );
return 
PLUGIN_HANDLED;
}

public 
setmenu(id) {

    new 
menu menu_create"\rXP Set Menu \y[PlayerRanks]:""menu_handler" );
    new 
players[32], pnumtempid;
    new 
szName[32], szUserId[32];
    
get_playersplayerspnum"c" );

    for ( new 
ii<pnumi++ )
    {
        
tempid players[i];
        if(!
is_user_connected(tempid))
        break;

        
get_user_nametempidszNamecharsmaxszName ) );
        
formatexszUserIdcharsmaxszUserId ), "%d"get_user_useridtempid ) );

     
        
menu_additemmenuszNameszUserId);
    }
  

    
menu_displayidmenu);

}


public 
menu_handleridmenuitem )
 {
    if ( 
item == MENU_EXIT )
    {
        
menu_destroymenu );
        return 
PLUGIN_HANDLED;
    }

    new 
szData[6], szName[64];
    new 
item_accessitem_callback;
    
menu_item_getinfomenuitemitem_accessszData,charsmaxszData ), szName,charsmaxszName ), item_callback );

    new 
userid str_to_numszData );

    new 
player find_player"k"userid );

    
    if ( 
player && is_user_aliveplayer ) )
    {
        new 
szname[32]
        
get_user_name(player,szname,charsmax(szname))
        new 
vaultkey[64],vaultdata[256];
        
format(vaultkey,63,"%s",szname);
        
format(vaultdata,255,"%i",gXP[player]);
        
fvault_get_data(g_vault_namevaultkey,vaultdata,charsmax(vaultdata))

        new 
data[255]; 
        
formatex(datacharsmax(data), "%i"str_to_num(vaultdata) + xp); 

        
fvault_set_data(g_vault_namesznamedata)
        
gXP[player] =  gXP[player] + xp
        SaveData
(player)
        
ColorChat(id,GREEN,"Vie dobavihte %d XP na igrach %s, toi veche e s %d XP",xp,szname,gXP[player]);
        
    }
    
setmenu(id)
    
menu_destroymenu );
    return 
PLUGIN_HANDLED;
 }
 
//some useful to me :) stocks
get_tag_index(id)
{
        new 
flags get_user_flags(id)
       
        for(new 
1sizeof(g_iTagFlag); i++)
        {
            if(
check_admin_flag(flagsg_iTagFlag[i]))
            {
                return 
i
            
}
        }
       
        return 
0
}

check_admin_flag(flagsflag)
{
        if(
flag == ADMIN_ADMIN)
        {
            return ((
flags & ~ADMIN_USER) > 0)
        }
        else if(
flag == ADMIN_ALL)
        {
            return 
1
        
}
       
        return (
flags flag)

if you are not satisfied i can give you more, just say in the topic
7thSense is offline
Relaxing
AlliedModders Donor
Join Date: Jun 2016
Location: White Plains
Old 07-25-2016 , 11:56   Re: [REQ] Rank Tag Plugin
Reply With Quote #6

Oh my god,
I wantes plugin without XP so i could be a bit easier.
You just dumped me all the level system plugins :p
__________________
Relaxing is offline
7thSense
Member
Join Date: Jul 2016
Old 07-25-2016 , 14:26   Re: [REQ] Rank Tag Plugin
Reply With Quote #7

Quote:
Originally Posted by Relaxing View Post
Oh my god,
I wantes plugin without XP so i could be a bit easier.
You just dumped me all the level system plugins :p
you can make it to use kills not only XP ... and you can you alose XP cuz you can make it 1 kill = 1 XP
i dont get what is the point with the "kills"
7thSense is offline
Craxor
Veteran Member
Join Date: Jan 2016
Location: Romania
Old 07-25-2016 , 14:39   Re: [REQ] Rank Tag Plugin
Reply With Quote #8

Quote:
Originally Posted by Relaxing View Post
Oh my god,
I wantes plugin without XP so i could be a bit easier.
You just dumped me all the level system plugins :p
You should check this one: https://forums.alliedmods.net/showthread.php?t=181306 It's realy nice!

About plugins posted with xp mod/level mod, they are all wrong and you should trust me, because first one is maded by me) - Don't use them, no one.
Craxor is offline
Send a message via ICQ to Craxor
Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -4. The time now is 16:10.


Powered by vBulletin®
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
Theme made by Freecode