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

[Request] Army Ranks Plugin


Post New Thread Reply   
 
Thread Tools Display Modes
Author Message
administratora
Member
Join Date: Mar 2015
Old 02-20-2017 , 06:41   [Request] Army Ranks Plugin
Reply With Quote #1

Can someone make a plugin like this - http://imgur.com/a/5bOjS with that hud message under the radar and an XP: which shows you how many XP you have and how many you need to the next rank. Also if it's possible the chat commands which starts with "/" to be hidden would be great.

Thanks in advance!
administratora is offline
Relaxing
AlliedModders Donor
Join Date: Jun 2016
Location: White Plains
Old 02-20-2017 , 12:35   Re: [Request] Army Ranks Plugin
Reply With Quote #2

Search friend, if you find the plugin you want, post the code here to change the position of HUD.
__________________
Relaxing is offline
administratora
Member
Join Date: Mar 2015
Old 02-20-2017 , 13:21   Re: [Request] Army Ranks Plugin
Reply With Quote #3

This for example but when i use it, no one has team chat and chat commands which start with "/" are visible in chat. If someone can edit it so the hud message is under the radar and the same color as the picture. Also to have XP:0/50 for example. The other thing is that it gives me 2 or 3 XP for knife kill, I have done it to 1 cuz I wanna use it for knife respawn server.
PHP Code:
#include <amxmodx>
#include <amxmisc>  
#include <cstrike>
#include <chatcolor>
#include <fvault>

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

#define ADMIN1 "Owner"
#define ADMIN1_ACCESS ADMIN_IMMUNITY

#define ADMIN2 "Head Admin"
#define ADMIN2_ACCESS ADMIN_BAN

#define ADMIN3 "Server Admin"
#define ADMIN3_ACCESS ADMIN_KICK

#define ADMIN4 "Test Admin"
#define ADMIN4_ACCESS ADMIN_SLAY

#define ADMIN5 "Sms Admin"
#define ADMIN5_ACCESS ADMIN_VOTE

new gMaxPlayersgMsgSayTextsyncObjLevel[33], eXP[33]
new 
ranks_hudknife_xphe_xphs_xpkill_xpkill_msg

new const g_vault_name[] = "levelsz";

new const 
Levels[MaxLevels] = 
{
    
100,
    
300
    
500
    
750
    
1000
    
1250,
    
1500,
    
1850,
    
2100,
    
2200,
    
2650,
    
2950,
    
3300,
    
3700,
    
4200,
    
4600,
    
5600
}

new const 
Prefix[MaxLevels +1][] =
{
    
"Silver I"
    
"Silver II",
    
"Silver II"
    
"Silver IV",
    
"Silver IElite"
    
"Silver Elite Master",
    
"Gold Nova I",
    
"Gold Nova II"
    
"Gold Nova III"
    
"Gold Nova Master",
    
"Master Guardian I",
    
"Master Guardian II",
    
"Master Guardian Elite",
    
"Distinguished Master Guardian",
    
"Legendary Eagle",
    
"Legendary Eagle Master",
    
"Supreme Master First Class",
    
"The Global Elite",
    
""
    
}

public 
plugin_init() 
{
    
register_plugin("Ranks & XP mod""1.0""alt.nick")
    
    
register_event("DeathMsg","client_death","a"
    
register_clcmd("say""hook_say")
    
register_clcmd("say_team""hook_say")
    
    
register_clcmd("say /ranks""cmdRank")
    
register_clcmd("say_team /ranks""cmdRank")
    
    
register_clcmd("say /resrank""reset_xp")
    
register_clcmd("say_team /resrank""reset_xp")
    
    
ranks_hud register_cvar("ranks_hud""1")     // Дали да се появява хъд при влизане в сървъра. Включено 1/0 Изключено
    
knife_xp register_cvar("knife_xp""1")     // Колко ХР да дава за убийство с нож.
    
he_xp register_cvar("he_xp""1")        // Колко ХР да дава за убийство с Granata (HE).
    
hs_xp register_cvar("hs_xp""1")        // Колко ХР да дава за убийство с Headshot.
    
kill_xp register_cvar("kill_xp""0")        // Колко ХР да дава за нормално убийство.    
    
kill_msg register_cvar("kill_msg""0")    // Дали да показва кой сте убили и колко ХР сте получили. Включено 1/0 Изключено
    
    
register_concmd ("amx_give_xp""CmdAddXP"ADMIN_LEVEL_A"<nick | ct | t | @all> <xp>")
    
    
gMaxPlayers get_maxplayers()
    
gMsgSayText get_user_msgid("SayText")

    
syncObj     CreateHudSyncObj()
    
    
fvault_load(g_vault_name)
}

public 
ShowHud(id
{
    
set_hudmessage(14223939, -1.00.0106.01.00.00.0, -1)
    
ShowSyncHudMsg(idsyncObj,"Rank: %s ^nXP: %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] += 
}

public 
client_death(killervictimweaponhitgroupTK)
{        
    if(
killer == victim)
        return 
PLUGIN_HANDLED
        
    
new Name[20]
    
get_user_name(victimName19)
    new 
headshot = (hitgroup == HIT_HEAD) ? 0
    
    
if(get_user_team(killer) == && killer != victim)
    {
        switch(
weapon
        {
            case 
CSW_HEGRENADE:
            {
                
eXP[killer] += get_pcvar_num(he_xp)
                
CheckLevel(killer)
                
SaveData(killer)
                if(
get_pcvar_num(kill_msg) == 1)
                    
client_print_color(killerprint_chat"^4[Ranks]^1 poluchihte^4 %d XP^1 poradi ubiistwoto s^4 HE^1 na ^3%s^1."get_pcvar_num(he_xp), Name)
            } 
            
            case 
CSW_KNIFE:
            {
                
eXP[killer] += get_pcvar_num(knife_xp)
                
CheckLevel(killer)
                
SaveData(killer)
                if(
get_pcvar_num(kill_msg) == 1)
                    
client_print_color(killerprint_chat"^4[Ranks]^1 poluchihte^4 %d XP^1 poradi ubiistwoto s^4 noj^1 na ^3%s^1."get_pcvar_num(knife_xp) , Name)
            } 
        }
        
        if(
headshot)
        {
            
eXP[killer] += get_pcvar_num(hs_xp)
            
CheckLevel(killer)
            
SaveData(killer)
            if(
get_pcvar_num(kill_msg) == 1)
                
client_print_color(killerprint_chat"^4[Ranks]^1 poluchihte^4 2 XP^1 poradi ubiistwoto s^4 HS^1 na ^3%s^1.",get_pcvar_num(hs_xp),  Name)
        }
        else
        {
            
eXP[killer] += get_pcvar_num(kill_xp)
            
CheckLevel(killer)
            
SaveData(killer)
            if(
get_pcvar_num(kill_msg) == 1)
                
client_print_color(killerprint_chat"^4[Ranks]^1 poluchihte^4 1 XP^1 poradi ubiistwoto na ^3%s^1."get_pcvar_num(kill_xp), Name)
        }
    }
    
CheckLevel(killer)
    
SaveData(killer)
    return 
PLUGIN_CONTINUE
}

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

public 
client_connect(id)
{
    
LoadData(id)
}


public 
client_disconnect(id)
{
    
SaveData(id)
    
eXP[id] = 0
    Level
[id] = 0
    remove_task
(id)
}
        
public 
reset_xp(id)
{
    if(
eXP[id] != 0)
    {
        
Level[id] = 0
        eXP
[id] = 0
        CheckLevel
(id)
        
client_print_color(idprint_chat"^4[Ranks]^1 Successfully restarted your^4 XP^1 i ^4Level^1.")
    }
    else
        
client_print_color(idprint_chat"^4[Ranks]^1 Your^4 XP^1 i ^4Level^1 is now restarted.")
}
        
public 
cmdRank(id)
{
    if(
is_user_connected(id))
        
client_print_color(idprint_chat"^4[Ranks]^1 Rank:^4 %s^1 | XP:^4 %d^1 | Level:^4 %d^1."Prefix[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))
        
    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)
            
client_print_color(0print_chat"^4[Ranks]^1 ^3%s^1 gave^3 %i^1 XP to all ^3players^1!"AdminNameXPtoGive)
        }
        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)
            
client_print_color(0print_chat"^4[Ranks]^1 ^3%s^1 gave^3 %i^1 XP to all ^3 Terrorists^1."AdminNameXPtoGive)
        }
        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)
            
client_print_color(0print_chat"^4[Ranks]^1 ^3%s^1 gave^3 %i^1 XP to all ^3 Counter-Terrorists^1!"AdminNameXPtoGive)
        }
    }
    else
    {
        new 
iTarget cmd_target(iPlayerarg3)
        
get_user_name (iTargetTargetNamecharsmax (TargetName))
        
        if(
iTarget)
        {
            
eXP[iTarget] += XPtoGive
            
            CheckLevel
(iTarget)
            
client_print_color(0print_chat"^4[Ranks]^1 ^3%s^1 gave^3 %i^1 XP to^3 %s^1."AdminNameXPtoGiveTargetName)
        }
    }
    return 
PLUGIN_HANDLED
}

bool:IsValidMessageszMessage[ ], iLen )
{
    
read_argsszMessageiLen )
    
remove_quotesszMessage )
   
    new 
iPoscChar
    
while( <= ( cChar szMessageiPos++ ] ) <= 255 )
    {
        if( 
cChar != ' ' && cChar != '%' )
        {
            return 
true
        
}
    }
   
    return 
false
}

public 
hook_say(id)
{
    if(!
is_user_connected(id)) 
        return 
PLUGIN_HANDLED_MAIN
    
    
new szArgs[192]
    
    if( !
IsValidMessage(szArgscharsmax(szArgs))) 
        return 
PLUGIN_HANDLED_MAIN

    
if(equal(szArgs,"")) return PLUGIN_HANDLED_MAIN

    
    
new szName[32]
    
get_user_name(idszNamesizeof szName-1)

    new 
alive is_user_alive(id)

    if(
contain(szArgs,"@") >= 0
    return  
PLUGIN_HANDLED_MAIN
 
    
if(get_user_flags(id) & ADMIN1_ACCESS
    
format(szArgs191,"^x04[%s] [%s] ^x03%s^x01 :^x04  %s"ADMIN1Prefix[Level[id]], szNameszArgs)
    
    else if(
get_user_flags(id) & ADMIN2_ACCESS
    
format(szArgs191"^x04[%s] [%s] ^x03%s^x01 :^x04  %s"ADMIN2Prefix[Level[id]], szNameszArgs)
    
    else if(
get_user_flags(id) & ADMIN3_ACCESS
    
format(szArgs191"^x04[%s] [%s] ^x03%s^x01 :^x04  %s"ADMIN3Prefix[Level[id]], szNameszArgs)
    
    else if(
get_user_flags(id) & ADMIN4_ACCESS
    
format(szArgs191"^x04[%s] [%s] ^x03%s^x01 :^x04  %s"ADMIN4Prefix[Level[id]], szNameszArgs)

    else if(
get_user_flags(id) & ADMIN5_ACCESS
    
format(szArgs191"^x04[%s] [%s] ^x03%s^x01 :^x04  %s"ADMIN5Prefix[Level[id]], szNameszArgs)
    
    
    else 
    
format(szArgs191"^x04{%s} ^x03%s^x01 :  %s",  Prefix[Level[id]], szNameszArgs)

    for(new 
1<= gMaxPlayersi++)
    {
        if(!
is_user_connected(i))
            continue
    
        if(
alive && is_user_alive(i))
        {
            
message_begin(MSG_ONEgMsgSayText, {000}, i)
            
write_byte(id)
            
write_string(szArgs)
            
message_end()
        } 
        else if(!
alive && !is_user_alive(i)) 
        {
            new 
format[192]
            
formatex(format,191,"^x01* DEAD %s",szArgs)
            
message_begin(MSG_ONEgMsgSayText, {000}, i)
            
write_byte(id)
            
write_string(format)
            
message_end()
        }
    }
        
    return 
PLUGIN_HANDLED_MAIN
}

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;


Last edited by administratora; 02-20-2017 at 13:22.
administratora is offline
SomewhereLost
AlliedModders Donor
Join Date: Mar 2014
Location: Tomorrowland
Old 02-20-2017 , 22:38   Re: [Request] Army Ranks Plugin
Reply With Quote #4

I'm with phone right now, try this one

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

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

#define CHAT_LEN_MAX 106

#define ADMIN1 "Owner"
#define ADMIN1_ACCESS ADMIN_IMMUNITY

#define ADMIN2 "Head Admin"
#define ADMIN2_ACCESS ADMIN_BAN

#define ADMIN3 "Server Admin"
#define ADMIN3_ACCESS ADMIN_KICK

#define ADMIN4 "Test Admin"
#define ADMIN4_ACCESS ADMIN_SLAY

#define ADMIN5 "Sms Admin"
#define ADMIN5_ACCESS ADMIN_VOTE

new gMaxPlayersgMsgSayTextsyncObjLevel[33], eXP[33]
new 
ranks_hudknife_xphe_xphs_xpkill_xpkill_msg

new const g_vault_name[] = "levelsz";

new const 
Levels[MaxLevels] = 
{
    
100,
    
300
    
500
    
750
    
1000
    
1250,
    
1500,
    
1850,
    
2100,
    
2200,
    
2650,
    
2950,
    
3300,
    
3700,
    
4200,
    
4600,
    
5600
}

new const 
Prefix[MaxLevels +1][] =
{
    
"Silver I"
    
"Silver II",
    
"Silver II"
    
"Silver IV",
    
"Silver IElite"
    
"Silver Elite Master",
    
"Gold Nova I",
    
"Gold Nova II"
    
"Gold Nova III"
    
"Gold Nova Master",
    
"Master Guardian I",
    
"Master Guardian II",
    
"Master Guardian Elite",
    
"Distinguished Master Guardian",
    
"Legendary Eagle",
    
"Legendary Eagle Master",
    
"Supreme Master First Class",
    
"The Global Elite",
    
""
    
}

public 
plugin_init() 
{
    
register_plugin("Ranks & XP mod""1.0""alt.nick")
    
    
register_event("DeathMsg","client_death","a"
    
register_clcmd("say""hook_say")
    
register_clcmd("say_team""hook_teamsay")
    
    
register_clcmd("say /ranks""cmdRank")
    
register_clcmd("say_team /ranks""cmdRank")
    
    
register_clcmd("say /resrank""reset_xp")
    
register_clcmd("say_team /resrank""reset_xp")
    
    
ranks_hud register_cvar("ranks_hud""1")     // Дали да се появява хъд при влизане в сървъра. Включено 1/0 Изключено
    
knife_xp register_cvar("knife_xp""1")     // Колко ХР да дава за убийство с нож.
    
he_xp register_cvar("he_xp""1")        // Колко ХР да дава за убийство с Granata (HE).
    
hs_xp register_cvar("hs_xp""1")        // Колко ХР да дава за убийство с Headshot.
    
kill_xp register_cvar("kill_xp""0")        // Колко ХР да дава за нормално убийство.    
    
kill_msg register_cvar("kill_msg""0")    // Дали да показва кой сте убили и колко ХР сте получили. Включено 1/0 Изключено
    
    
register_concmd ("amx_give_xp""CmdAddXP"ADMIN_LEVEL_A"<nick | ct | t | @all> <xp>")
    
    
gMaxPlayers get_maxplayers()
    
gMsgSayText get_user_msgid("SayText")

    
syncObj     CreateHudSyncObj()
    
    
fvault_load(g_vault_name)
}

public 
ShowHud(id
{
    
set_hudmessage(02552550.020.1702.00.20.10.2, -1)
    
ShowSyncHudMsg(idsyncObj,"Rank: %s ^nXP: %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] += 
}

public 
client_death(killervictimweaponhitgroupTK)
{        
    if(
killer == victim)
        return 
PLUGIN_HANDLED
        
    
new Name[20]
    
get_user_name(victimName19)
    new 
headshot = (hitgroup == HIT_HEAD) ? 0
    
    
if(get_user_team(killer) == && killer != victim)
    {
        switch(
weapon
        {
            case 
CSW_HEGRENADE:
            {
                
eXP[killer] += get_pcvar_num(he_xp)
                
CheckLevel(killer)
                
SaveData(killer)
                if(
get_pcvar_num(kill_msg) == 1)
                    
client_print_color(killerprint_chat"^4[Ranks]^1 poluchihte^4 %d XP^1 poradi ubiistwoto s^4 HE^1 na ^3%s^1."get_pcvar_num(he_xp), Name)
            } 
            
            case 
CSW_KNIFE:
            {
                
eXP[killer] += get_pcvar_num(knife_xp)
                
CheckLevel(killer)
                
SaveData(killer)
                if(
get_pcvar_num(kill_msg) == 1)
                    
client_print_color(killerprint_chat"^4[Ranks]^1 poluchihte^4 %d XP^1 poradi ubiistwoto s^4 noj^1 na ^3%s^1."get_pcvar_num(knife_xp) , Name)
            } 
        }
        
        if(
headshot)
        {
            
eXP[killer] += get_pcvar_num(hs_xp)
            
CheckLevel(killer)
            
SaveData(killer)
            if(
get_pcvar_num(kill_msg) == 1)
                
client_print_color(killerprint_chat"^4[Ranks]^1 poluchihte^4 2 XP^1 poradi ubiistwoto s^4 HS^1 na ^3%s^1.",get_pcvar_num(hs_xp),  Name)
        }
        else
        {
            
eXP[killer] += get_pcvar_num(kill_xp)
            
CheckLevel(killer)
            
SaveData(killer)
            if(
get_pcvar_num(kill_msg) == 1)
                
client_print_color(killerprint_chat"^4[Ranks]^1 poluchihte^4 1 XP^1 poradi ubiistwoto na ^3%s^1."get_pcvar_num(kill_xp), Name)
        }
    }
    
CheckLevel(killer)
    
SaveData(killer)
    return 
PLUGIN_CONTINUE
}

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

public 
client_connect(id)
{
    
LoadData(id)
}


public 
client_disconnect(id)
{
    
SaveData(id)
    
eXP[id] = 0
    Level
[id] = 0
    remove_task
(id)
}
        
public 
reset_xp(id)
{
    if(
eXP[id] != 0)
    {
        
Level[id] = 0
        eXP
[id] = 0
        CheckLevel
(id)
        
client_print_color(idprint_chat"^4[Ranks]^1 Successfully restarted your^4 XP^1 i ^4Level^1.")
    }
    else
        
client_print_color(idprint_chat"^4[Ranks]^1 Your^4 XP^1 i ^4Level^1 is now restarted.")
}
        
public 
cmdRank(id)
{
    if(
is_user_connected(id))
        
client_print_color(idprint_chat"^4[Ranks]^1 Rank:^4 %s^1 | XP:^4 %d^1 | Level:^4 %d^1."Prefix[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))
        
    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)
            
client_print_color(0print_chat"^4[Ranks]^1 ^3%s^1 gave^3 %i^1 XP to all ^3players^1!"AdminNameXPtoGive)
        }
        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)
            
client_print_color(0print_chat"^4[Ranks]^1 ^3%s^1 gave^3 %i^1 XP to all ^3 Terrorists^1."AdminNameXPtoGive)
        }
        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)
            
client_print_color(0print_chat"^4[Ranks]^1 ^3%s^1 gave^3 %i^1 XP to all ^3 Counter-Terrorists^1!"AdminNameXPtoGive)
        }
    }
    else
    {
        new 
iTarget cmd_target(iPlayerarg3)
        
get_user_name (iTargetTargetNamecharsmax (TargetName))
        
        if(
iTarget)
        {
            
eXP[iTarget] += XPtoGive
            
            CheckLevel
(iTarget)
            
client_print_color(0print_chat"^4[Ranks]^1 ^3%s^1 gave^3 %i^1 XP to^3 %s^1."AdminNameXPtoGiveTargetName)
        }
    }
    return 
PLUGIN_HANDLED
}

/*bool:IsValidMessage( szMessage[ ], iLen )
{
    read_args( szMessage, iLen )
    remove_quotes( szMessage )
   
    new iPos, cChar
    while( 0 <= ( cChar = szMessage[ iPos++ ] ) <= 255 )
    {
        if( cChar != ' ' && cChar != '%' )
        {
            return true
        }
    }
   
    return false
}

public hook_say(id)
{
    if(!is_user_connected(id)) 
        return PLUGIN_HANDLED_MAIN
    
    new szArgs[192]
    
    if( !IsValidMessage(szArgs, charsmax(szArgs))) 
        return PLUGIN_HANDLED_MAIN

    if(equal(szArgs,"")) return PLUGIN_HANDLED_MAIN
*/
    
public hook_sayid )
{
   new 
szArgs[CHAT_LEN_MAX];
   
read_args(szArgscharsmax(szArgs));
   
remove_quotes(szArgs);
   
   if(
szArgs[0]=='/')
      return 
PLUGIN_HANDLED
      
   
return PLUGIN_CONTINUE
}

public 
hook_teamsayid )
{
   new 
szArgs[CHAT_LEN_MAX];
   
read_args(szArgscharsmax(szArgs));
   
remove_quotes(szArgs);
   
   if(
szArgs[0]=='/')
      return 
PLUGIN_HANDLED

  
    
new szName[32]
    
get_user_name(idszNamesizeof szName-1)

    new 
alive is_user_alive(id)

    if(
contain(szArgs,"@") >= 0
    return  
PLUGIN_HANDLED_MAIN
 
    
if(get_user_flags(id) & ADMIN1_ACCESS
    
format(szArgs191,"^x04[%s] [%s] ^x03%s^x01 :^x04  %s"ADMIN1Prefix[Level[id]], szNameszArgs)
    
    else if(
get_user_flags(id) & ADMIN2_ACCESS
    
format(szArgs191"^x04[%s] [%s] ^x03%s^x01 :^x04  %s"ADMIN2Prefix[Level[id]], szNameszArgs)
    
    else if(
get_user_flags(id) & ADMIN3_ACCESS
    
format(szArgs191"^x04[%s] [%s] ^x03%s^x01 :^x04  %s"ADMIN3Prefix[Level[id]], szNameszArgs)
    
    else if(
get_user_flags(id) & ADMIN4_ACCESS
    
format(szArgs191"^x04[%s] [%s] ^x03%s^x01 :^x04  %s"ADMIN4Prefix[Level[id]], szNameszArgs)

    else if(
get_user_flags(id) & ADMIN5_ACCESS
    
format(szArgs191"^x04[%s] [%s] ^x03%s^x01 :^x04  %s"ADMIN5Prefix[Level[id]], szNameszArgs)
    
    
    else 
    
format(szArgs191"^x04{%s} ^x03%s^x01 :  %s",  Prefix[Level[id]], szNameszArgs)

    for(new 
1<= gMaxPlayersi++)
    {
        if(!
is_user_connected(i))
            continue
    
        if(
alive && is_user_alive(i))
        {
            
message_begin(MSG_ONEgMsgSayText, {000}, i)
            
write_byte(id)
            
write_string(szArgs)
            
message_end()
        } 
        else if(!
alive && !is_user_alive(i)) 
        {
            new 
format[192]
            
formatex(format,191,"^x01* DEAD %s",szArgs)
            
message_begin(MSG_ONEgMsgSayText, {000}, i)
            
write_byte(id)
            
write_string(format)
            
message_end()
        }
    }
        
    return 
PLUGIN_HANDLED_MAIN
}

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;

__________________
SomewhereLost is offline
Send a message via Skype™ to SomewhereLost
administratora
Member
Join Date: Mar 2015
Old 02-21-2017 , 04:40   Re: [Request] Army Ranks Plugin
Reply With Quote #5

Thanks but the hud message now flashes all the time and in the general chat the rank is not visible, only the name of the player. In team chat you don't have (Terrorist) or (Counter-Terrorist) so I think it doesn't work and is visible for everyone.
administratora is offline
Reply


Thread Tools
Display Modes

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 12:19.


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