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

A small edit


Post New Thread Reply   
 
Thread Tools Display Modes
Author Message
Tyler2211
Junior Member
Join Date: May 2017
Old 05-29-2017 , 18:19   A small edit
Reply With Quote #1

Hello, count when you rank
You are a music lover and you are a music lover.

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

#define ACCESS_LEVEL    ADMIN_RESERVATION
#define ADMIN_LISTEN    ADMIN_ALL

#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 
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 
rankNames[MAXRANKS][] = 
{  
"[SILVER I]",  
"[SILVER II]",  
"[SILVER III]",  
"[SILVER IV]",  
"[SILVER ELITE]",  
"[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]",  
"[LEGENDARY EAGLE]",  
"[LEGENDARY EAGLE MASTER]",  
"[The Global Elite]"
}
 new const 
rankXP[MAXRANKS] = 
 { 
  
010255010020035050075010001250150017502000250030005000 
 


/////////////////////////////////////////
#define HUD_INTERVALR 1.0 
#define RANK_NOTHINGR 0 
#define RANK_PRIVATER 1 
#define RANK_PRIVATE_FIRST_CLASSR 2 
#define RANK_CORPORALR 3 
#define RANK_SERGEANTR 4 
#define RANK_STAFF_SERGEANTR 5 
#define RANK_GUNNERY_SERGEANTR 6 
#define RANK_MASTER_SERGEANTR 7 
#define RANK_COMMAND_SERGEANTR 8 
#define RANK_SECOND_LIEUTENANTR 9 
#define RANK_FIRST_LIEUTENANTR 10 
#define RANK_COLONELR 11 
#define RANK_BRIGADIER_GENERALR 12 
#define RANK_MAJOR_GENERALR 13 
#define RANK_LIEUTENANT_GENERALR 14 
#define RANK_GENERALR 15 
#define RANK_GENERAL_OF_THE_ARMYR 16 
#define MAXRANKSR 17 
new PlayerRankR[33
new const 
rankNamesR[MAXRANKSR][] = 
{   
"[SILVER I]",  
"[SILVER II]",  
"[SILVER III]",  
"[SILVER IV]",  
"[SILVER ELITE]",  
"[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]",  
"[LEGENDARY EAGLE]",  
"[LEGENDARY EAGLE MASTER]",  
"[The Global Elite]" 
}
 new const 
rankXPR[MAXRANKSR] = 
 { 
  
010255010020035050075010001250150017502000250030005000 
 

 
public 
plugin_init()
{    
    
g_MessageColor register_cvar ("amx_color""2"// Message colors: [1] Default Yellow, [2] Green, [3] White, [4] Blue, [5] Red

    
g_NameColor register_cvar ("amx_namecolor""6"// Name colors: [1] Default Yellow, [2] Green, [3] White, [4] Blue, [5] Red, [6] Team-color
    
    
g_AdminListen register_cvar ("amx_listen""1"// Set whether admins see or not all messages (Alive, dead and team-only)
    
    
    
sayText get_user_msgid ("SayText")
    
teamInfo get_user_msgid ("TeamInfo")
    
maxPlayers get_maxplayers()
    
    
    
register_message (sayText"avoid_duplicated")
    
    
register_clcmd ("amx_color""set_color"ACCESS_LEVEL"<color>")
    
register_clcmd ("amx_namecolor""set_name_color"ACCESS_LEVEL"<color>")
    
register_clcmd ("amx_listen""set_listen"ACCESS_LEVEL"<1 | 0>")
    
    
register_clcmd ("say""hook_say")
    
register_clcmd ("say_team""hook_teamsay")
}
 
 public 
client_putinserver(id
 { 
 
set_task(HUD_INTERVALR"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 < (MAXRANKSR 1)) 
 {        
 if(
stats[0] >= rankXPR[currentPlayerRank 1])         
 ++
currentPlayerRank;      
 else         
 break;  
 }       
 new 
leftkills stats[0];
 new 
right rankXPR[currentPlayerRank 1]
 
//I have no idea why you are storing the rank here, maybe you're planning to use it later   
 
PlayerRankR[id] = currentPlayerRank;     
 
set_hudmessage(002550.010.1806.05.0)
 
show_hudmessage(id"%s : [Rutben : %s] ^nFragin : [%i / %i]"namerankNamesR[currentPlayerRank], leftkillsright)    
 
set_task(HUD_INTERVALR"ShowHUD"id)    
 return 
PLUGIN_HANDLED
 
}
public 
avoid_duplicated (msgIdmsgDestreceiver)
{
    return 
PLUGIN_HANDLED
}


public 
hook_say(id)
{
    
read_args (message191)
    
remove_quotes (message)
    
    if (
message[0] == '@' || message[0] == '/' || message[0] == '!' || equal (message"")) // Ignores Admin Hud Messages, Admin Slash commands, 
                                                   // Gungame commands and empty messages
        
return PLUGIN_CONTINUE

        
    
new name[32]
    
get_user_name (idname31)
    
    new 
bool:admin false
    
    
if (get_user_flags(id) & ACCESS_LEVEL)
        
admin true
        
    
    
new isAlive
    
    
if (is_user_alive (id))
        {
            
isAlive 1
            alive 
"^x01"
        
}
    else
        {
            
isAlive 0
            alive 
"^x01*OLU* "
        
}
    
    static 
color[10]
    
 
    static 
stats[8], hits[8]
    
get_user_stats(idstatshits)
 
    new 
currentPlayerRank 0;
    while(
currentPlayerRank < (MAXRANKS 1))
    {
        if(
stats[0] >= rankXP[currentPlayerRank 1])
            ++
currentPlayerRank;
        else
            break;
    }
 
 
    
PlayerRank[id] = currentPlayerRank;
    
    if (
admin)
        {
            
// Name
            
switch (get_pcvar_num (g_NameColor))
                {
                    case 
1:
                        
format (strName191"^x04%s %s%s"rankNames[currentPlayerRank], alivename)

                    case 
2:
                        
format (strName191"^x04%s %s^x04%s"rankNames[currentPlayerRank], alivename)
                        
                    case 
3:
                        {
                            
color "SPECTATOR"
                            
format (strName191"^x04%s %s^x03%s"rankNames[currentPlayerRank], alivename)
                        }
                        
                    case 
4:
                        {
                            
color "CT"
                            
format (strName191"^x04%s %s^x03%s"rankNames[currentPlayerRank], alivename)
                        }

                    case 
5:
                        {
                            
color "TERRORIST"
                            
format (strName191"^x04%s %s^x03%s"rankNames[currentPlayerRank], alivename)
                        }
                    
                    case 
6:
                        {
                            
get_user_team (idcolor9)
                                
                            
format (strName191"^x04%s %s^x03%s"rankNames[currentPlayerRank], alivename)
                        }
                }
            
            
            
// Message
            
switch (get_pcvar_num (g_MessageColor))
                {
                    case 
1:    // Yellow
                        
format (strText191"%s"message)
                        
                    case 
2:    // Green
                        
format (strText191"^x04%s"message)
                        
                    case 
3:    // White
                        
{
                            
copy (color9"SPECTATOR")
                            
format (strText191"^x03%s"message)
                        }

                    case 
4:    // Blue
                        
{
                            
copy (color9"CT")
                            
format (strText191"^x03%s"message)
                        }
                        
                    case 
5:    // Red
                        
{
                            
copy (color9"TERRORIST")
                            
format (strText191"^x03%s"message)
                        }
                }
        }
    
    else     
// Player is not admin. Team-color name : Yellow message
        
{
            
get_user_team (idcolor9)
            
            
format (strName191"^x04%s %s^x03%s"rankNames[currentPlayerRank], alivename)
            
            
format (strText191"%s"message)
        }

    
format (message191"%s^x01 :  %s"strNamestrText)
            
    
sendMessage (colorisAlive)    // Sends the colored message
    
    
return PLUGIN_CONTINUE
}


public 
hook_teamsay(id)
{
    new 
playerTeam get_user_team(id)
    new 
playerTeamName[19]
    
    switch (
playerTeam// Team names which appear on team-only messages
        
{
            case 
1:
                
copy (playerTeamName11"TEROR")
                
            case 
2:
                
copy (playerTeamName18"POLIS")
                
            default:
                
copy (playerTeamName9"IZLEYICI")
        }
        
    
read_args (message191)
    
remove_quotes (message)
    
    if (
message[0] == '@' || message[0] == '/' || message[0] == '!' || equal (message"")) // Ignores Admin Hud Messages, Admin Slash commands, 
                                                   // Gungame commands and empty messages
        
return PLUGIN_CONTINUE

        
    
new name[32]
    
get_user_name (idname31)
    
    new 
bool:admin false
    
    
if (get_user_flags(id) & ACCESS_LEVEL)
        
admin true
        
    
    
new isAlive
    
    
if (is_user_alive (id))
        {
            
isAlive 1
            alive 
"^x01"
        
}
    else
        {
            
isAlive 0
            alive 
"^x01*OLU* "
        
}
    
    static 
color[10]
    
    static 
stats[8], hits[8]
    
get_user_stats(idstatshits)
 
    new 
currentPlayerRank 0;
    while(
currentPlayerRank < (MAXRANKS 1))
    {
        if(
stats[0] >= rankXP[currentPlayerRank 1])
            ++
currentPlayerRank;
        else
            break;
    }
 
 
    
PlayerRank[id] = currentPlayerRank;
    
    if (
admin)
        {
            
// Name
            
switch (get_pcvar_num (g_NameColor))
                {
                    case 
1:
                        
format (strName191"^x04%s %s(%s)  %s"rankNames[currentPlayerRank], aliveplayerTeamNamename)

                    case 
2:
                        
format (strName191"^x04%s %s(%s)  ^x04%s"rankNames[currentPlayerRank], aliveplayerTeamNamename)
                        
                    case 
3:
                        {
                            
color "SPECTATOR"
                            
format (strName191"^x04%s %s(%s)  ^x03%s"rankNames[currentPlayerRank], aliveplayerTeamNamename)
                        }
                        
                    case 
4:
                        {
                            
color "CT"
                            
format (strName191"^x04%s %s(%s)  ^x03%s"rankNames[currentPlayerRank], aliveplayerTeamNamename)
                        }

                    case 
5:
                        {
                            
color "TERRORIST"
                            
format (strName191"^x04%s %s(%s)  ^x03%s"rankNames[currentPlayerRank], aliveplayerTeamNamename)
                        }
                    
                    case 
6:
                        {
                            
get_user_team (idcolor9)
                                
                            
format (strName191"^x04%s %s(%s)  ^x03%s"rankNames[currentPlayerRank], aliveplayerTeamNamename)
                        }
                }
            
            
            
// Message
            
switch (get_pcvar_num (g_MessageColor))
                {
                    case 
1:    // Yellow
                        
format (strText191"%s"message)
                        
                    case 
2:    // Green
                        
format (strText191"^x04%s"message)
                        
                    case 
3:    // White
                        
{
                            
copy (color9"SPECTATOR")
                            
format (strText191"^x03%s"message)
                        }

                    case 
4:    // Blue
                        
{
                            
copy (color9"CT")
                            
format (strText191"^x03%s"message)
                        }
                        
                    case 
5:    // Red
                        
{
                            
copy (color9"TERRORIST")
                            
format (strText191"^x03%s"message)
                        }
                }
        }
    
    else     
// Player is not admin. Team-color name : Yellow message
        
{
            
get_user_team (idcolor9)
            
            
format (strName191"^x04%s %s(%s)  ^x03%s"rankNames[currentPlayerRank], aliveplayerTeamNamename)
            
            
format (strText191"%s"message)
        }
    
    
format (message191"%s ^x01:  %s"strNamestrText)
    
    
sendTeamMessage (colorisAliveplayerTeam)    // Sends the colored message
    
    
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_cvar_num ("amx_color"newColor)
            
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_cvar_num ("amx_namecolor"2)
                    
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_cvar_num ("amx_namecolor"newColor)
            
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_cvar_num ("amx_color"2)
                    
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_cvar_num ("amx_listen"newListen)
    
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(
is_user_alive(player))
                {
                    
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
                
}
            else
                {
                    
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

            if (
get_user_team(player) == playerTeam)
                {
                    if (
is_user_alive(player))
                        {
                            
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
                        
}
                    else
                        {
                            
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

Tyler2211 is offline
Tyler2211
Junior Member
Join Date: May 2017
Old 05-29-2017 , 18:21   Re: A small edit
Reply With Quote #2

Hello, count when you rank
Skip rank.
Tyler2211 is offline
OciXCrom
Veteran Member
Join Date: Oct 2013
Location: Macedonia
Old 05-29-2017 , 18:32   Re: A small edit
Reply With Quote #3

???
__________________
OciXCrom is offline
Send a message via Skype™ to OciXCrom
Natsheh
Veteran Member
Join Date: Sep 2012
Old 05-29-2017 , 23:28   Re: A small edit
Reply With Quote #4

You mean how many kills until raise up?
__________________
@Jailbreak Main Mod v2.7.0 100%
@User Tag Prefix 100% done !
@Mystery Box 100% done !
@VIP System 100% done !


Last edited by Natsheh; 05-29-2017 at 23:29.
Natsheh is offline
Send a message via MSN to Natsheh Send a message via Skype™ to Natsheh
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 20:58.


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