me ayuda a poner el prefijo en la sma.
#1
me ayuda a poner el prefijo en la sma. para admin Flag no rango csgo

Código PHP:
"" "y" "[DONO]"
"" "r" "[SUPREMO]"
"" "q" "[ADM]"
"" "p" "[VIP GIRLS]"
"" "o" "[VIP]"
"" "w" "[RECRUTA]" 

o pone sma AdminPrefixes.amxx junto

las sma rango csgo com prefijo del foum tan todo con error porfavor edita mi sma ella no tiene error


mi sma

Código PHP:
/*    -----------------------------------------
Creditos: Solo para Raulitop, por el hook say :3

Version Con Guardado NFVAULT
-------------------------------            */

#include <amxmisc>
#include <fakemeta>
#include <nfvault>

new const PLUGIN[] = "Patent clan brasilia"
#define VERSION "1.0"
new const AUTHOR[] = "kikizon"

/* =============================================
|= [EMPIEZA SECCION MODIFICABLE] =|
==============================================*/
/* ====================================
*[CONSTANTES]*
=====================================*/ 
new const Web[] = " _\|/_ BEM VINDOS_\|/_"  // Se Muestra en HUD
new const Prefijo[] = "!g[rank]!y" // Prefijo en say
new const Sonido[] = "clan_brasilia/up.wav" // Sonido Rango UP
/* ====================================
*[CONST NOMBRES DE RANGOS]*
=====================================*/
enum _:DATA
{
    
NOMBRE[30],
    
FRAGS
}
new const 
Rangos[][DATA] = {
    { 
"Sem Patentes"100 },
    { 
"Prata I"250 },
    { 
"Prata II"750 },
    { 
"Prata III"1000 },
    { 
"Prata IV"1500 },
    { 
"Prata Elite"2000 },
    { 
"Prata Elite Master"2500 },
    { 
"Gold Nova I"3000 },
    { 
"Gold Nova II"3500 },
    { 
"Gold Nova III"4000 },
    { 
"Gold Nova Master"4500 },
    { 
"Master Guardian I",5000 },
    { 
"Master Guardian II"5500 },
    { 
"Master Guardian Elite"6000 },
    { 
"Distinguished Master Guardian"6500 },
    { 
"Legendary Eagle"7000 },
    { 
"Legendary Eagle Master"7500 },
    { 
"Supreme Master First Class"8000 },
    { 
"The Global Elite"9000 }
}

/* =============================================
|= [TERMINA SECCION MODIFICABLE] =|
==============================================*/

/* ====================================
*[VARIABLES]*
=====================================*/
new g_rango[33], g_frags[33]
new 
SyncHUDg_maxplayersg_msgTeamInfog_msgSayTextg_playername[33][32];
#define TASK_HUD 2100
#define ID_HUD (taskid - TASK_HUD)
#define XD is_user_connected(id) || !is_user_bot(id) || !is_user_hltv(id)
new VaultRango[128], szRangos[180], szKey[30]

/* ====================================
*[Cvars]*
=====================================*/
new cvar_Hudcvar_hsx2
/* ====================================
*[INIT]*
=====================================*/
public plugin_init() {
    
register_plugin(PLUGINVERSIONAUTHOR)
    
    
register_event("DeathMsg""Event_DeathMsg""a")
    
register_logevent("logevent_round_end"2"1=Round_End")
    
    
register_clcmd("say""message_saytext"
    
register_clcmd("say_team""message_sayteam")
    
    
    
/* =============================================
    |= [EMPIEZA SECCION MODIFICABLE] =|
    ==============================================*/
    
cvar_Hud register_cvar("rangos_hud""1")          // 1 - Mostrar HUD | 0 - No Mostrar
 //   cvar_knifex2 = register_cvar("rangos_knifex2", "1")    // 1 - x2 frags con knife | 0 - ÑO :v
    
cvar_hsx2 register_cvar("rangos_hsx2""1")        // 1 - x2 frags de HeadShot | 0 - ÑO :v
    /* =============================================
    |= [TERMINA SECCION MODIFICABLE] =|
    ==============================================*/
    
    
    
SyncHUD CreateHudSyncObj()
    
g_maxplayers get_maxplayers()
    
g_msgTeamInfo get_user_msgid("TeamInfo")
    
g_msgSayText get_user_msgid("SayText")
    
    
nfv_file("Ranguitos"VaultRangocharsmax(VaultRango))
}
/* ====================================
*[PRECACHE]*
=====================================*/
public plugin_precache() 
    
precache_sound(Sonido)
/* ===================================
*[HUD]*
=====================================*/
public HUD(taskid) {
    new 
id ID_HUD
    
    
if (!is_user_alive(id)) {
        
id pev(idpev_iuser2)
        if (!
is_user_alive(id)) return;
    }
   
    if(
id != ID_HUD) {
        
set_hudmessage(1272552550.600.6716.01.0)
        
ShowSyncHudMsg(ID_HUDSyncHUD"Frags: %d  ||  OBS: %s"g_frags[id], Rangos[g_rango[id]][NOMBRE])
    } else {
        
set_hudmessage(025500.00.2016.01.0)
        
ShowSyncHudMsg(ID_HUDSyncHUD"_\|/_ ClaN=Brasilia _\|/_^nFrags: %d^nOBS: %s^n=======================^nProx. Patente: %s^nFrags Restantes: %d^n=======================^n%s"
        
g_frags[id], Rangos[g_rango[id]][NOMBRE], Rangos[g_rango[id]+1][NOMBRE], Rangos[g_rango[id]][FRAGS] -  g_frags[id], Web)
    }
    

/* ==================================
    [PUTINSERVER]
===================================*/
public client_putinserver(id) {
    
get_user_nameidg_playernameid ], charsmaxg_playername[ ] ) );
    
g_rango[id] = 0
    g_frags
[id] = 0
    
    Cargar
(id)
    
    if(
get_pcvar_num(cvar_Hud)) 
        
set_task(1.0"HUD"id+TASK_HUD__"b")
}
/* ==================================
    [DISCONNECT]
===================================*/
public client_disconnect(id) {
    if(
XDGuardar(id);
        
    
remove_task(id+TASK_HUD)
}

/* ==================================
    [ROUND END]
===================================*/
public logevent_round_end() {
    for(new 
id 1id <= g_maxplayersid++) {
        if(
XD
            
Guardar(id); 
    }
}
/* ==================================
    [DEATHMSG]
===================================*/
public Event_DeathMsg() {
    new 
attacker read_data(1)
    new 
victim read_data(2)
    new 
hs read_data(3)
    
    if(
victim == attacker) return;
    
    if(
is_user_alive(attacker)) {
        
g_frags[attacker]++
        
        if(
get_pcvar_num(cvar_hsx2)) {
            if(
hsg_frags[attacker]++
        }
        
AumentarRango(attacker)
    }
}
/* ================================
    [UPDATE RANGO]
=================================*/
AumentarRango(id) {    
    new 
Aumento false
    
    
while(g_frags[id] >= Rangos[g_rango[id]][FRAGS]) {
        
Aumento true
        g_rango
[id]++
    }
        
    if(
Aumento) {
        
chatcolor(id"%s Felicidade subiu de rank: !g[ %s ]"PrefijoRangos[g_rango[id]][NOMBRE])
        
client_cmd(id"spk %s"Sonido)
        
Aumento false
    
}

/*=====================================
*[SAY]*
=====================================*/
public message_saytext(id) { 
    static 
said[192
    
read_args(saidcharsmax(said)) 
    
remove_quotes(said
    
    if (
said[0] == '@' || said[0] == '%' || said[0] == '/' || said[0] == '.' || said[0] == '!' || equal (said""))
        return 
PLUGIN_HANDLED

    
if (!ValidMessage(said1)) return PLUGIN_CONTINUE;
    
    static 
color[11], name[32], alive[11]
    
get_user_team(id,color,charsmax(color))
    
get_user_name(id,name,charsmax(name))

    if (
is_user_alive (id)) {
        
alive ""
    
} else {
        
alive "[Morto]"
    
}

    if (
is_user_admin(id)) {
        if (
get_user_flags(id) & ADMIN_KICK
            
format(saidcharsmax(said), "^x01%s^x04%s ^x03%s ^x04: %s"aliveRangos[g_rango[id]][NOMBRE], namesaid)
    } else {
        
format(saidcharsmax(said), "^x01%s^04%s ^x03%s ^x01: %s"aliveRangos[g_rango[id]][NOMBRE], namesaid)
    }
    
    static 
iteam[11
    for (
1<= g_maxplayersi++) {
        if (!
is_user_connected(i)) continue
        
get_user_name(id,name,charsmax(name))
        
        if (
is_user_admin(i) || is_user_alive(id) && is_user_alive(i) || !is_user_alive(id) && !is_user_alive(i)) {
            
get_user_team(iteamcharsmax(team))
            
changeTeamInfo(icolor)
            
writeMessage(isaid)
            
changeTeamInfo(iteam)
        }
    }
    return 
PLUGIN_HANDLED_MAIN;
}

public 
message_sayteam(id)
{    
    static 
said[192
    
read_args(saidcharsmax(said)) 
    
remove_quotes(said
    
    if (
said[0] == '@' || said[0] == '%' || said[0] == '/' || said[0] == '.' || said[0] == '!' || equal (said""))
        return 
PLUGIN_HANDLED

    
if (!ValidMessage(said1)) return PLUGIN_CONTINUE
    
    static 
playerTeamplayerTeamName[19]
    
playerTeam get_user_team(id)
    
    switch (
playerTeam) {
        case 
1copy (playerTeamName6"TE")
        case 
2copy (playerTeamName8"CT"
        default: 
copy (playerTeamName11"SPEC"
    }

    static 
color[11], name[32], alive[11]
    
get_user_team(id,color,charsmax(color))
    
get_user_name(id,name,charsmax(name))

    if (
is_user_alive (id)) {
        
alive ""
    
} else {
        
alive "[MUERTO]"
    
}

    if (
is_user_admin(id)) {
        if (
get_user_flags(id) & ADMIN_RCON)
            
format(saidcharsmax(said), "^4%s^4[^4%s^4]  ^4%s^3 %s^1 :^4 %s"aliveplayerTeamRangos[g_rango[id]], namesaid)
    } else {
        
format(saidcharsmax(said), "^1%s^4[^4%s^4]^3 %s^1 : %s"aliveplayerTeamRangos[g_rango[id]],namesaid)
    }

    static 
iteam[11
    for (
1<= g_maxplayersi++) {
        if (!
is_user_connected(i)) continue;
        
get_user_name(id,name,charsmax(name))
        
        if (
get_user_team(i) == playerTeam || is_user_admin(i)) {
            if (
is_user_alive(id) && is_user_alive(i) || !is_user_alive(id) && !is_user_alive(i)) {
                
get_user_team(iteamcharsmax(team))
                
changeTeamInfo(icolor)
                
writeMessage(isaid)
                
changeTeamInfo(iteam)
            }
        }
    }
    return 
PLUGIN_HANDLED_MAIN;
}
public 
changeTeamInfo(playerteam[]) {
    
message_begin(MSG_ONEg_msgTeamInfo_player)
    
write_byte(player)
    
write_string(team)
    
message_end()
}




public 
writeMessage(playermessage[]) {
    
message_begin(MSG_ONEg_msgSayText, {000}, player)
    
write_byte(player)
    
write_string(message)
    
message_end()
}
/* ===================================
*[GUARDADO]*
=====================================*/
Guardar(id) {
    
formatex(szKeycharsmax(szKey), "data_rangos"
    
formatex(szRangoscharsmax(szRangos), "%d %d"g_frags[id], g_rango[id])
    
    
nfv_set_data(VaultRangoszKeyg_playername[id], szRangos)
}

Cargar(id) {
    new 
g_load_c1[25], g_load_c2[25]
    
formatex(szKeycharsmax(szKey), "data_rangos"
    
    if(!
nfv_get_data(VaultRangoszKeyg_playername[id], szRangossizeof(szRangos) - 1)) return; 
   
    
parse(szRangosg_load_c1charsmax(g_load_c1), g_load_c2charsmax(g_load_c2))
    
    
g_frags[id] = str_to_num(g_load_c1)
    
g_rango[id] = str_to_num(g_load_c2)

/* ===================================
*[STOCKS]*
=====================================*/
// stock de chatcolor
stock chatcolor(id, const input[], any:...) {
    new 
count 1players[32]; 
    static 
msg[191]; 
    
vformat(msg190input3); 
     
    
replace_all(msg190"!g""^4"); // Verde
    
replace_all(msg190"!y""^1"); // Default
    
replace_all(msg190"!t""^3"); // Color del Equipo 
     
    
if (idplayers[0] = id; else get_players(playerscount"ch"); { 
        for (new 
0counti++)  { 
            if (
is_user_connected(players[i])) { 
                
message_begin(MSG_ONE_UNRELIABLEget_user_msgid("SayText"), _players[i]); 
                
write_byte(players[i]); 
                
write_string(msg); 
                
message_end(); 
            } 
        } 
    } 

// Stock para Saber Si el mensaje es valido
stock ValidMessage(text[], maxcount) {
    static 
lenicount
    len 
strlen(text)
    
count 0
    
    
if (!len)
        return 
false;
    
    for (
0leni++) {
        if (
text[i] != ' ') {
            
count++
            if (
count >= maxcount)
                return 
true;
        }
    }
    return 
false;



sma AdminPrefixes.amxx
Código PHP:
#include <amxmodx>
#include <amxmisc>
#include <celltrie>
#include <cstrike>

#define VERSION "4.0"
#define FLAG_LOAD ADMIN_CFG
#define MAX_PREFIXES 33
#define MAX_BAD_PREFIXES 100

new g_bad_prefixg_listeng_listen_flagg_customg_custom_flagg_say_charactersg_prefix_characters;
new 
pre_ips_count 0pre_names_count 0pre_steamids_countpre_flags_count 0bad_prefix_count 0itemp_cvar[2];
new 
configs_dir[64], file_prefixes[128], file_bad_prefixes[128], text[128], prefix[32], type[2], key[32], lengthline 0error[256];
new 
g_saytxtg_maxplayersCsTeams:g_team;
new 
g_typed[192], g_message[192], g_name[32];
new 
Trie:pre_ips_collectTrie:pre_names_collectTrie:pre_steamids_collectTrie:pre_flags_collectTrie:bad_prefixes_collectTrie:client_prefix;
new 
str_id[16], temp_key[35], temp_prefix[32], temp_value;
new 
bool:g_toggle[33];

new const 
say_team_info[2][CsTeams][] =
{
    {
"*SPEC* ""*DEAD* ""*DEAD* ""*SPEC* "},
    {
""""""""}
}

new const 
sayteam_team_info[2][CsTeams][] =
{
    {
"(Spectator) ""*DEAD*(Terrorist) ""*DEAD*(Counter-Terrorist) ""(Spectator) "},
    {
"(Spectator) ""(Terrorist) ""(Counter-Terrorist) ""(Spectator) "}
}

new const 
forbidden_say_symbols[] = {
    
"/",
    
"!",
    
"%",
    
"$"
}

new const 
forbidden_prefixes_symbols[] = {
    
"/",
    
"\",
    "
%",
    "
$",
    "
.",
    "
:",
    "
?",
    "
!",
    "
@",
    "
#",
    
"%"
}

new const 
separator[] = "************************************************"
new const in_prefix[] = "[AdminPrefixes]"

public plugin_init()
{
    
register_plugin("Admin Prefixes"VERSION"m0skVi4a ;]")

    
g_bad_prefix register_cvar("ap_bad_prefixes""1")
    
g_listen register_cvar("ap_listen""1")
    
g_listen_flag register_cvar("ap_listen_flag""a")
    
g_custom register_cvar("ap_custom_current""1")
    
g_custom_flag register_cvar("ap_custom_current_flag""b")
    
g_say_characters register_cvar("ap_say_characters""1")
    
g_prefix_characters register_cvar("ap_prefix_characters""1")

    
g_saytxt get_user_msgid ("SayText")
    
g_maxplayers get_maxplayers()

    
register_concmd("ap_reload_prefixes""LoadPrefixes")
    
register_concmd("ap_reload_badprefixes""LoadBadPrefixes")
    
register_concmd("ap_put""SetPlayerPrefix")
    
register_clcmd("say""HookSay")
    
register_clcmd("say_team""HookSayTeam")

    
pre_ips_collect TrieCreate()
    
pre_names_collect TrieCreate()
    
pre_steamids_collect TrieCreate()
    
pre_flags_collect TrieCreate()
    
bad_prefixes_collect TrieCreate()
    
client_prefix TrieCreate()

    
register_dictionary("admin_prefixes.txt")

    
get_configsdir(configs_dircharsmax(configs_dir))
    
formatex(file_prefixescharsmax(file_prefixes), "%s/ap_prefixes.ini"configs_dir)
    
formatex(file_bad_prefixescharsmax(file_bad_prefixes), "%s/ap_bad_prefixes.ini"configs_dir)

    
LoadPrefixes(0)
    
LoadBadPrefixes(0)
}
    
public 
LoadPrefixes(id)
{
    if(!(
get_user_flags(id) & FLAG_LOAD))
    {
        
console_print(id"%L"LANG_SERVER"PREFIX_PERMISSION"in_prefix)
        return 
PLUGIN_HANDLED
    
}

    
TrieClear(pre_ips_collect)
    
TrieClear(pre_names_collect)
    
TrieClear(pre_steamids_collect)
    
TrieClear(pre_flags_collect)

    
line 0length 0pre_flags_count 0pre_ips_count 0pre_names_count 0;

    if(!
file_exists(file_prefixes)) 
    {
        
formatex(errorcharsmax(error), "%L"LANG_SERVER"PREFIX_NOT_FOUND"in_prefixfile_prefixes)
        
set_fail_state(error)
    }

    
server_print(separator)

    while(
read_file(file_prefixesline++ , textcharsmax(text), length) && (pre_ips_count pre_names_count pre_steamids_count pre_flags_count) <= MAX_PREFIXES)
    {
        if(!
text[0] || text[0] == '^n' || text[0] == ';' || (text[0] == '/' && text[1] == '/'))
            continue

        
parse(texttypecharsmax(type), keycharsmax(key), prefixcharsmax(prefix))
        
trim(prefix)

        if(!
type[0] || !prefix[0] || !key[0])
            continue

        
replace_all(prefixcharsmax(prefix), "!g""^x04")
        
replace_all(prefixcharsmax(prefix), "!t""^x03")
        
replace_all(prefixcharsmax(prefix), "!n""^x01")

        switch(
type[0])
        {
            case 
'f':
            {
                
pre_flags_count++
                
TrieSetString(pre_flags_collectkeyprefix)
                
server_print("%L"LANG_SERVER"PREFIX_LOAD_FLAG"in_prefixprefixkey[0])
            }
            case 
'i':
            {
                
pre_ips_count++
                
TrieSetString(pre_ips_collectkeyprefix)
                
server_print("%L"LANG_SERVER"PREFIX_LOAD_IP"in_prefixprefixkey)
            }
            case 
's':
            {
                
pre_steamids_count++
                
TrieSetString(pre_steamids_collectkeyprefix)
                
server_print("%L"LANG_SERVER"PREFIX_LOAD_STEAMID"in_prefixprefixkey)
            }
            case 
'n':
            {
                
pre_names_count++
                
TrieSetString(pre_names_collectkeyprefix)
                
server_print("%L"LANG_SERVER"PREFIX_LOAD_NAME"in_prefixprefixkey)
            }
            default:
            {
                continue
            }
        }
    }

    if(
pre_flags_count <= && pre_ips_count <= && pre_steamids_count <= && pre_names_count <= 0)
    {
        
server_print("%L"LANG_SERVER"PREFIX_NO"in_prefix)
    }

    
get_user_name(idg_namecharsmax(g_name))
    
server_print("%L"LANG_SERVER"PREFIX_LOADED_BY"in_prefixg_name)
    
console_print(id"%L"LANG_SERVER"PREFIX_LOADED"in_prefix)

    
server_print(separator)

    for(new 
1<= g_maxplayersi++)
    {
        
num_to_str(istr_idcharsmax(str_id))
        
TrieDeleteKey(client_prefixstr_id)
        
PutPrefix(i)
    }

    return 
PLUGIN_HANDLED
}

public 
LoadBadPrefixes(id)
{
    if(!
get_pcvar_num(g_bad_prefix))
    {
        
console_print(id"%L"LANG_SERVER"BADP_OFF"in_prefix)
        return 
PLUGIN_HANDLED
    
}

    if(!(
get_user_flags(id) & FLAG_LOAD))
    {
        
console_print(id"%L"LANG_SERVER"BADP_PERMISSION"in_prefix)
        return 
PLUGIN_HANDLED
    
}

    
TrieClear(bad_prefixes_collect)

    
line 0length 0bad_prefix_count 0;

    if(!
file_exists(file_bad_prefixes)) 
    {
        
console_print(id"%L"LANG_SERVER"BADP_NOT_FOUND"in_prefixfile_bad_prefixes)
        return 
PLUGIN_HANDLED        
    
}

    
server_print(separator)

    while(
read_file(file_bad_prefixesline++ , textcharsmax(text), length) && bad_prefix_count <= MAX_BAD_PREFIXES)
    {
        if(!
text[0] || text[0] == '^n' || text[0] == ';' || (text[0] == '/' && text[1] == '/'))
            continue

        
parse(textprefixcharsmax(prefix))

        if(!
prefix[0])
            continue

        
bad_prefix_count++
        
TrieSetCell(bad_prefixes_collectprefix1)
        
server_print("%L"LANG_SERVER"BADP_LOAD"in_prefixprefix)
    }

    if(
bad_prefix_count <= 0)
    {
        
server_print("%L"LANG_SERVER"BADP_NO"in_prefix)
    }

    
get_user_name(idg_namecharsmax(g_name))
    
server_print("%L"LANG_SERVER"BADP_LOADED_BY"in_prefixg_name)
    
console_print(id"%L"LANG_SERVER"BADP_LOADED"in_prefix)

    
server_print(separator)

    return 
PLUGIN_HANDLED
}

public 
client_putinserver(id)
{
    
g_toggle[id] = true
    num_to_str
(idstr_idcharsmax(str_id))
    
TrieSetString(client_prefixstr_id"")
    
PutPrefix(id)
}

public 
HookSay(id)
{
    
read_args(g_typedcharsmax(g_typed))
    
remove_quotes(g_typed)

    
trim(g_typed)

    if(
equal(g_typed"") || !is_user_connected(id))
        return 
PLUGIN_HANDLED_MAIN

    
if(equal(g_typed"/prefix"))
    {
        if(
g_toggle[id])
        {
            
g_toggle[id] = false
            client_print
(idprint_chat"%L"LANG_SERVER"PREFIX_OFF"in_prefix)
        }
        else
        {
            
g_toggle[id] = true
            client_print
(idprint_chat"%L"LANG_SERVER"PREFIX_ON"in_prefix)
        }

        return 
PLUGIN_HANDLED_MAIN
    
}

    if(!
g_toggle[id])
        return 
PLUGIN_CONTINUE

    num_to_str
(idstr_idcharsmax(str_id))

    if((
TrieGetString(client_prefixstr_idtemp_prefixcharsmax(temp_prefix)) && get_pcvar_num(g_say_characters) == 1) || (!TrieGetString(client_prefixstr_idtemp_prefixcharsmax(temp_prefix)) && get_pcvar_num(g_say_characters) == 2) || get_pcvar_num(g_say_characters) == 3)
    {
        if(
check_say_characters(g_typed))
            return 
PLUGIN_HANDLED_MAIN
    
}

    
get_user_name(idg_namecharsmax(g_name))

    
g_team cs_get_user_team(id)

    if(
temp_prefix[0])
    {
        
formatex(g_messagecharsmax(g_message), "^1%s^4%s^3 %s :^4 %s"say_team_info[is_user_alive(id)][g_team], temp_prefixg_nameg_typed)
    }
    else
    {
        
formatex(g_messagecharsmax(g_message), "^1%s^3%s :^1 %s"say_team_info[is_user_alive(id)][g_team], g_nameg_typed)
    }

    
get_pcvar_string(g_listen_flagtemp_cvarcharsmax(temp_cvar))

    for(new 
1<= g_maxplayersi++)
    {
        if(!
is_user_connected(i))
            continue

        if(
is_user_alive(id) && is_user_alive(i) || !is_user_alive(id) && !is_user_alive(i) || get_pcvar_num(g_listen) && get_user_flags(i) & read_flags(temp_cvar))
        {
            
send_message(g_messageidi)
        }
    }

    return 
PLUGIN_HANDLED_MAIN
}

public 
HookSayTeam(id)
{
    
read_args(g_typedcharsmax(g_typed))
    
remove_quotes(g_typed)

    
trim(g_typed)

    if(
equal(g_typed"") || !is_user_connected(id))
        return 
PLUGIN_HANDLED_MAIN

    
if(equal(g_typed"/prefix"))
    {
        if(
g_toggle[id])
        {
            
g_toggle[id] = false
            client_print
(idprint_chat"%L"LANG_SERVER"PREFIX_OFF"in_prefix)
        }
        else
        {
            
g_toggle[id] = true
            client_print
(idprint_chat"%L"LANG_SERVER"PREFIX_ON"in_prefix)
        }

        return 
PLUGIN_HANDLED_MAIN
    
}

    if(!
g_toggle[id])
        return 
PLUGIN_CONTINUE

    num_to_str
(idstr_idcharsmax(str_id))

    if((
TrieGetString(client_prefixstr_idtemp_prefixcharsmax(temp_prefix)) && get_pcvar_num(g_say_characters) == 1) || (!TrieGetString(client_prefixstr_idtemp_prefixcharsmax(temp_prefix)) && get_pcvar_num(g_say_characters) == 2) || get_pcvar_num(g_say_characters) == 3)
    {
        if(
check_say_characters(g_typed))
            return 
PLUGIN_HANDLED_MAIN
    
}

    
get_user_name(idg_namecharsmax(g_name))

    
g_team cs_get_user_team(id)

    if(
temp_prefix[0])
    {
        
formatex(g_messagecharsmax(g_message), "^1%s^4%s^3 %s :^4 %s"sayteam_team_info[is_user_alive(id)][g_team], temp_prefixg_nameg_typed)
    }
    else
    {
        
formatex(g_messagecharsmax(g_message), "^1%s^3%s :^1 %s"sayteam_team_info[is_user_alive(id)][g_team], g_nameg_typed)
    }

    
get_pcvar_string(g_listen_flagtemp_cvarcharsmax(temp_cvar))

    for(new 
1<= g_maxplayersi++)
    {
        if(!
is_user_connected(i))
            continue

        if(
get_user_team(id) == get_user_team(i) || get_pcvar_num(g_listen) && get_user_flags(i) & read_flags(temp_cvar))
        {
            if(
is_user_alive(id) && is_user_alive(i) || !is_user_alive(id) && !is_user_alive(i) || get_pcvar_num(g_listen) && get_user_flags(i) & read_flags(temp_cvar))
            {
                
send_message(g_messageidi)
            }
        }
    }

    return 
PLUGIN_HANDLED_MAIN
}

public 
SetPlayerPrefix(id)
{
    if(!
get_pcvar_num(g_custom) || !get_pcvar_string(g_custom_flagtemp_cvarcharsmax(temp_cvar)))
    {
        
console_print(id"%L"LANG_SERVER"CUSTOM_OFF"in_prefix)
        return 
PLUGIN_HANDLED
    
}

    if(!(
get_user_flags(id) & read_flags(temp_cvar)))
    {
        
console_print(id"%L"LANG_SERVER"CUSTOM_PERMISSION"in_prefix)
        return 
PLUGIN_HANDLED
    
}

    new 
input[128], target;
    new 
arg_type[2], arg_prefix[32], arg_key[35];
    new 
temp_str[16];

    
read_args(inputcharsmax(input))
    
remove_quotes(input)
    
parse(inputarg_typecharsmax(arg_type), arg_keycharsmax(arg_key), arg_prefixcharsmax(arg_prefix))
    
trim(arg_prefix)

    if(
get_pcvar_num(g_bad_prefix) && is_bad_prefix(arg_prefix) && !equali(arg_prefix""))
    {
        
console_print(id"%L"LANG_SERVER"CUSTOM_FORBIDDEN"in_prefixarg_prefix)
        return 
PLUGIN_HANDLED
    
}

    if(
get_pcvar_num(g_prefix_characters) && check_prefix_characters(arg_prefix))
    {
        
console_print(id"%L"LANG_SERVER"CUSTOM_SYMBOL"in_prefixarg_prefixforbidden_prefixes_symbols[i])
        return 
PLUGIN_HANDLED
    
}

    switch(
arg_type[0])
    {
        case 
'f':
        {
            
target 0
            temp_str 
"Flag"
        
}
        case 
'i':
        {
            
target find_player("d"arg_key)
            
temp_str "IP"
        
}
        case 
's':
        {
            
target find_player("c"arg_key)
            
temp_str "SteamID"
        
}
        case 
'n':
        {
            
target find_player("a"arg_key)
            
temp_str "Name"
        
}
        default:
        {
            
console_print(id"%L"LANG_SERVER"CUSTOM_INVALID"in_prefixarg_type)
            return 
PLUGIN_HANDLED
        
}
    }

    
get_user_name(idg_namecharsmax(g_name))

    if(
equali(arg_prefix""))
    {
        
find_and_delete(arg_typearg_key)

        if(
target)
        {
            
PutPrefix(target)
        }
        
        
console_print(id"%L"LANG_SERVER"CUSTOM_REMOVE"in_prefixtemp_strarg_key)
        
server_print("%L"LANG_SERVER"CUSTOM_REMOVE_INFO"in_prefixg_nametemp_strarg_key)
        return 
PLUGIN_HANDLED
    
}

    
find_and_delete(arg_typearg_key)

    
formatex(textcharsmax(text), "^"%s^" ^"%s^" ^"%s^""arg_typearg_keyarg_prefix)
    
write_file(file_prefixestext, -1)

    switch(
arg_type[0])
    {
        case 
'f':
        {
            
TrieSetString(pre_flags_collectarg_keyarg_prefix)
        }
        case 
'i':
        {
            
TrieSetString(pre_ips_collectarg_keyarg_prefix)
        }
        case 
's':
        {
            
TrieSetString(pre_steamids_collectarg_keyarg_prefix)
        }
        case 
'n':
        {
            
TrieSetString(pre_names_collectarg_keyarg_prefix)
        }
    }

    if(
target)
    {
        
num_to_str(targetstr_idcharsmax(str_id))
        
TrieSetString(client_prefixstr_idarg_prefix)
    }

    
console_print(id"%L"LANG_SERVER"CUSTOM_CHANGE"in_prefixtemp_strarg_keyarg_prefix)
    
server_print("%L"LANG_SERVER"CUSTOM_CHANGE_INFO"in_prefixg_nametemp_strarg_keyarg_prefix

    return 
PLUGIN_HANDLED
}

public 
client_infochanged(id)
{
    if(!
is_user_connected(id))
        return 
PLUGIN_CONTINUE

    
new g_old_name[32];

    
get_user_info(id"name"g_namecharsmax(g_name))
    
get_user_name(idg_old_namecharsmax(g_old_name))

    if(!
equal(g_nameg_old_name))
    {
        
num_to_str(idstr_idcharsmax(str_id))
        
TrieSetString(client_prefixstr_id"")
        
set_task(0.5"PutPrefix"id)
        return 
PLUGIN_HANDLED
    
}

    return 
PLUGIN_CONTINUE
}

public 
PutPrefix(id)
{
    
num_to_str(idstr_idcharsmax(str_id))
    
TrieSetString(client_prefixstr_id"")

    new 
sflags[32], temp_flag[2];
    
get_flags(get_user_flags(id), sflagscharsmax(sflags))

    for(new 
0<= charsmax(sflags); i++)
    {
        
formatex(temp_flagcharsmax(temp_flag), "%c"sflags[i])

        if(
TrieGetString(pre_flags_collecttemp_flagtemp_prefixcharsmax(temp_prefix)))
        {
            
TrieSetString(client_prefixstr_idtemp_prefix)
        }
    }

    
get_user_ip(idtemp_keycharsmax(temp_key), 1)

    if(
TrieGetString(pre_ips_collecttemp_keytemp_prefixcharsmax(temp_prefix)))
    {
        
TrieSetString(client_prefixstr_idtemp_prefix)
    }

    
get_user_authid(idtemp_keycharsmax(temp_key))

    if(
TrieGetString(pre_steamids_collecttemp_keytemp_prefixcharsmax(temp_prefix)))
    {
        
TrieSetString(client_prefixstr_idtemp_prefix)
    }

    
get_user_name(idtemp_keycharsmax(temp_key))

    if(
TrieGetString(pre_names_collecttemp_keytemp_prefixcharsmax(temp_prefix)))
    {
        
TrieSetString(client_prefixstr_idtemp_prefix)
    }

    return 
PLUGIN_HANDLED
}

send_message(const message[], const id, const i)
{
    
message_begin(MSG_ONEg_saytxt, {000}, i)
    
write_byte(id)
    
write_string(message)
    
message_end()
}

bool:check_say_characters(const check_message[])
{
    for(new 
0charsmax(forbidden_say_symbols); i++)
    {
        if(
check_message[0] == forbidden_say_symbols[i])
        {
            return 
true
        
}
    }
    return 
false
}

bool:check_prefix_characters(const check_prefix[])
{
    for(
0charsmax(forbidden_prefixes_symbols); i++)
    {
        if(
containi(check_prefixforbidden_prefixes_symbols[i]) != -1)
        {
            return 
true
        
}
    }
    return 
false
}

bool:is_bad_prefix(const check_prefix[])
{
    if(
TrieGetCell(bad_prefixes_collectcheck_prefixtemp_value))
    {
        return 
true
    
}
    return 
false
}

find_and_delete(const arg_type[], const arg_key[])
{
    
line 0length 0;

    while(
read_file(file_prefixesline++ , textcharsmax(text), length))
    {
        if(!
text[0] || text[0] == '^n' || text[0] == ';' || (text[0] == '/' && text[1] == '/'))
            continue

        
parse(texttypecharsmax(type), keycharsmax(key), prefixcharsmax(prefix))
        
trim(prefix)

        if(!
type[0] || !prefix[0] || !key[0])
            continue
            
        if(!
equal(arg_typetype) || !equal(arg_keykey))
            continue
            
        
write_file(file_prefixes""line 1)
    }
    
    switch(
arg_type[0])
    {
        case 
'f':
        {
            
TrieDeleteKey(pre_flags_collectarg_key)
        }
        case 
'i':
        {
            
TrieDeleteKey(pre_ips_collectarg_key)
        }
        case 
's':
        {
            
TrieDeleteKey(pre_steamids_collectarg_key)
        }
        case 
'n':
        {
            
TrieDeleteKey(pre_names_collectarg_key)
        }
    }



por favor no envía sma del foro de rango csgo con AdminPrefixes todas las con error e bugs edita esta mi SMA
Responder
#2
Código PHP:
/*    -----------------------------------------
Creditos: Solo para Raulitop, por el hook say :3

Version Con Guardado NFVAULT
-------------------------------            */

/*  Prefijos By Frnc */

#include <amxmodx>
#include <amxmisc>
#include <fakemeta>
#include <nfvault>

new const PLUGIN[] = "Patent clan brasilia"
#define VERSION "1.0"
new const AUTHOR[] = "kikizon"

/* =============================================
|= [EMPIEZA SECCION MODIFICABLE] =|
==============================================*/
/* ====================================
*[CONSTANTES]*
=====================================*/ 
new const Web[] = " _\|/_ BEM VINDOS_\|/_"  // Se Muestra en HUD
new const Prefijo[] = "!g[rank]!y" // Prefijo en say
new const Sonido[] = "clan_brasilia/up.wav" // Sonido Rango UP
/* ====================================
*[CONST NOMBRES DE RANGOS]*
=====================================*/
enum _:DATA
{
    
NOMBRE[30],
    
FRAGS
}
new const 
Rangos[][DATA] = {
    { 
"Sem Patentes"100 },
    { 
"Prata I"250 },
    { 
"Prata II"750 },
    { 
"Prata III"1000 },
    { 
"Prata IV"1500 },
    { 
"Prata Elite"2000 },
    { 
"Prata Elite Master"2500 },
    { 
"Gold Nova I"3000 },
    { 
"Gold Nova II"3500 },
    { 
"Gold Nova III"4000 },
    { 
"Gold Nova Master"4500 },
    { 
"Master Guardian I",5000 },
    { 
"Master Guardian II"5500 },
    { 
"Master Guardian Elite"6000 },
    { 
"Distinguished Master Guardian"6500 },
    { 
"Legendary Eagle"7000 },
    { 
"Legendary Eagle Master"7500 },
    { 
"Supreme Master First Class"8000 },
    { 
"The Global Elite"9000 }
}


/* PREFIJOS POR TIPO DE ADMINISTRADOR */

new g_AdminTag[33][16]

enum _:Data2 {
    
TAG[20],
    
FLAG
}

new const 
AdminsTags[][Data2] = {
    { 
"[VIP]"ADMIN_LEVEL_C },      // LETRA "o"
    
"[VIP GIRLS]"ADMIN_LEVEL_D },     // LETRA "p"
    
"[ADM]"ADMIN_LEVEL_E },         // LETRA "q"
    
"[SUPREMO]"ADMIN_LEVEL_F },    // LETRA "r"
    
"[DONO]"ADMIN_LEVEL_G },        // LETRA "s"
    
"[RECLUTA]"ADMIN_LEVEL_H }    // LETRA "t"
}

/* =============================================
|= [TERMINA SECCION MODIFICABLE] =|
==============================================*/

/* ====================================
*[VARIABLES]*
=====================================*/
new g_rango[33], g_frags[33]
new 
SyncHUDg_maxplayersg_msgTeamInfog_msgSayTextg_playername[33][32];
#define TASK_HUD 2100
#define ID_HUD (taskid - TASK_HUD)
#define XD is_user_connected(id) || !is_user_bot(id) || !is_user_hltv(id)
new VaultRango[128], szRangos[180], szKey[30]

/* ====================================
*[Cvars]*
=====================================*/
new cvar_Hudcvar_hsx2
/* ====================================
*[INIT]*
=====================================*/
public plugin_init() {
    
register_plugin(PLUGINVERSIONAUTHOR)
    
    
register_event("DeathMsg""Event_DeathMsg""a")
    
register_logevent("logevent_round_end"2"1=Round_End")
    
    
register_clcmd("say""message_saytext"
    
register_clcmd("say_team""message_sayteam")
    
    
    
/* =============================================
    |= [EMPIEZA SECCION MODIFICABLE] =|
    ==============================================*/
    
cvar_Hud register_cvar("rangos_hud""1")          // 1 - Mostrar HUD | 0 - No Mostrar
 //   cvar_knifex2 = register_cvar("rangos_knifex2", "1")    // 1 - x2 frags con knife | 0 - ÑO :v
    
cvar_hsx2 register_cvar("rangos_hsx2""1")        // 1 - x2 frags de HeadShot | 0 - ÑO :v
    /* =============================================
    |= [TERMINA SECCION MODIFICABLE] =|
    ==============================================*/
    
    
    
SyncHUD CreateHudSyncObj()
    
g_maxplayers get_maxplayers()
    
g_msgTeamInfo get_user_msgid("TeamInfo")
    
g_msgSayText get_user_msgid("SayText")
    
    
nfv_file("Ranguitos"VaultRangocharsmax(VaultRango))
}
/* ====================================
*[PRECACHE]*
=====================================*/
public plugin_precache() 
    
precache_sound(Sonido)
/* ===================================
*[HUD]*
=====================================*/
public HUD(taskid) {
    new 
id ID_HUD
    
    
if (!is_user_alive(id)) {
        
id pev(idpev_iuser2)
        if (!
is_user_alive(id)) return;
    }
   
    if(
id != ID_HUD) {
        
set_hudmessage(1272552550.600.6716.01.0)
        
ShowSyncHudMsg(ID_HUDSyncHUD"Frags: %d  ||  OBS: %s"g_frags[id], Rangos[g_rango[id]][NOMBRE])
    } else {
        
set_hudmessage(025500.00.2016.01.0)
        
ShowSyncHudMsg(ID_HUDSyncHUD"_\|/_ ClaN=Brasilia _\|/_^nFrags: %d^nOBS: %s^n=======================^nProx. Patente: %s^nFrags Restantes: %d^n=======================^n%s"
        
g_frags[id], Rangos[g_rango[id]][NOMBRE], Rangos[g_rango[id]+1][NOMBRE], Rangos[g_rango[id]][FRAGS] -  g_frags[id], Web)
    }
    

/* ==================================
    [PUTINSERVER]
===================================*/
public client_putinserver(id) {
    
get_user_nameidg_playernameid ], charsmaxg_playername[ ] ) );
    
g_rango[id] = 0
    g_frags
[id] = 0
    
    Cargar
(id)
    
    if(
get_pcvar_num(cvar_Hud)) 
        
set_task(1.0"HUD"id+TASK_HUD__"b")
    
    
/* Determinar el prefijo del admin */   
    
if(!is_user_admin(id)) {
        
copy(g_AdminTag[id], charsmax(g_AdminTag[]), "")
        return
    }
        
    new 
Flags get_user_flags(id)
    
    for(new 
isizeof AdminsTagsi++) {
        if(
Flags AdminsTags[i][FLAG]) {
            
copy(g_AdminTag[id], charsmax(g_AdminTag[]), AdminsTags[i][TAG])
            break;
        }
    }
}
/* ==================================
    [DISCONNECT]
===================================*/
public client_disconnect(id) {
    if(
XDGuardar(id);
        
    
remove_task(id+TASK_HUD)
}

/* ==================================
    [ROUND END]
===================================*/
public logevent_round_end() {
    for(new 
id 1id <= g_maxplayersid++) {
        if(
XD
            
Guardar(id); 
    }
}
/* ==================================
    [DEATHMSG]
===================================*/
public Event_DeathMsg() {
    new 
attacker read_data(1)
    new 
victim read_data(2)
    new 
hs read_data(3)
    
    if(
victim == attacker) return;
    
    if(
is_user_alive(attacker)) {
        
g_frags[attacker]++
        
        if(
get_pcvar_num(cvar_hsx2)) {
            if(
hsg_frags[attacker]++
        }
        
AumentarRango(attacker)
    }
}
/* ================================
    [UPDATE RANGO]
=================================*/
AumentarRango(id) {    
    new 
Aumento false
    
    
while(g_frags[id] >= Rangos[g_rango[id]][FRAGS]) {
        
Aumento true
        g_rango
[id]++
    }
        
    if(
Aumento) {
        
chatcolor(id"%s Felicidade subiu de rank: !g[ %s ]"PrefijoRangos[g_rango[id]][NOMBRE])
        
client_cmd(id"spk %s"Sonido)
        
Aumento false
    
}

/*=====================================
*[SAY]*
=====================================*/
public message_saytext(id) { 
    static 
said[192
    
read_args(saidcharsmax(said)) 
    
remove_quotes(said
    
    if (
said[0] == '@' || said[0] == '%' || said[0] == '/' || said[0] == '.' || said[0] == '!' || equal (said""))
        return 
PLUGIN_HANDLED

    
if (!ValidMessage(said1)) return PLUGIN_CONTINUE;
    
    static 
color[11], name[32], alive[11]
    
get_user_team(id,color,charsmax(color))
    
get_user_name(id,name,charsmax(name))

    if (
is_user_alive (id)) {
        
alive ""
    
} else {
        
alive "[Morto]"
    
}

    if (
is_user_admin(id)) {
      
//  if (get_user_flags(id) & ADMIN_KICK)  << ya esto no se usar
        
format(saidcharsmax(said), "^x01%s^x04%s ^x03%s ^x04: %s"aliveRangos[g_rango[id]][NOMBRE],g_AdminTag[id], namesaid)
    } else {
        
format(saidcharsmax(said), "^x01%s^04%s ^x03%s ^x01: %s"aliveRangos[g_rango[id]][NOMBRE], namesaid)
    }
    
    static 
iteam[11
    for (
1<= g_maxplayersi++) {
        if (!
is_user_connected(i)) continue
        
get_user_name(id,name,charsmax(name))
        
        if (
is_user_admin(i) || is_user_alive(id) && is_user_alive(i) || !is_user_alive(id) && !is_user_alive(i)) {
            
get_user_team(iteamcharsmax(team))
            
changeTeamInfo(icolor)
            
writeMessage(isaid)
            
changeTeamInfo(iteam)
        }
    }
    return 
PLUGIN_HANDLED_MAIN;
}

public 
message_sayteam(id)
{    
    static 
said[192
    
read_args(saidcharsmax(said)) 
    
remove_quotes(said
    
    if (
said[0] == '@' || said[0] == '%' || said[0] == '/' || said[0] == '.' || said[0] == '!' || equal (said""))
        return 
PLUGIN_HANDLED

    
if (!ValidMessage(said1)) return PLUGIN_CONTINUE
    
    static 
playerTeamplayerTeamName[19]
    
playerTeam get_user_team(id)
    
    switch (
playerTeam) {
        case 
1copy (playerTeamName6"TE")
        case 
2copy (playerTeamName8"CT"
        default: 
copy (playerTeamName11"SPEC"
    }

    static 
color[11], name[32], alive[11]
    
get_user_team(id,color,charsmax(color))
    
get_user_name(id,name,charsmax(name))

    if (
is_user_alive (id)) {
        
alive ""
    
} else {
        
alive "[MUERTO]"
    
}

    if (
is_user_admin(id)) {
        if (
get_user_flags(id) & ADMIN_RCON)
            
format(saidcharsmax(said), "^4%s^4[^4%s^4]  ^4%s^3 %s^1 :^4 %s"aliveplayerTeamRangos[g_rango[id]], namesaid)
    } else {
        
format(saidcharsmax(said), "^1%s^4[^4%s^4]^3 %s^1 : %s"aliveplayerTeamRangos[g_rango[id]],namesaid)
    }

    static 
iteam[11
    for (
1<= g_maxplayersi++) {
        if (!
is_user_connected(i)) continue;
        
get_user_name(id,name,charsmax(name))
        
        if (
get_user_team(i) == playerTeam || is_user_admin(i)) {
            if (
is_user_alive(id) && is_user_alive(i) || !is_user_alive(id) && !is_user_alive(i)) {
                
get_user_team(iteamcharsmax(team))
                
changeTeamInfo(icolor)
                
writeMessage(isaid)
                
changeTeamInfo(iteam)
            }
        }
    }
    return 
PLUGIN_HANDLED_MAIN;
}
public 
changeTeamInfo(playerteam[]) {
    
message_begin(MSG_ONEg_msgTeamInfo_player)
    
write_byte(player)
    
write_string(team)
    
message_end()
}




public 
writeMessage(playermessage[]) {
    
message_begin(MSG_ONEg_msgSayText, {000}, player)
    
write_byte(player)
    
write_string(message)
    
message_end()
}
/* ===================================
*[GUARDADO]*
=====================================*/
Guardar(id) {
    
formatex(szKeycharsmax(szKey), "data_rangos"
    
formatex(szRangoscharsmax(szRangos), "%d %d"g_frags[id], g_rango[id])
    
    
nfv_set_data(VaultRangoszKeyg_playername[id], szRangos)
}

Cargar(id) {
    new 
g_load_c1[25], g_load_c2[25]
    
formatex(szKeycharsmax(szKey), "data_rangos"
    
    if(!
nfv_get_data(VaultRangoszKeyg_playername[id], szRangossizeof(szRangos) - 1)) return; 
   
    
parse(szRangosg_load_c1charsmax(g_load_c1), g_load_c2charsmax(g_load_c2))
    
    
g_frags[id] = str_to_num(g_load_c1)
    
g_rango[id] = str_to_num(g_load_c2)

/* ===================================
*[STOCKS]*
=====================================*/
// stock de chatcolor
stock chatcolor(id, const input[], any:...) {
    new 
count 1players[32]; 
    static 
msg[191]; 
    
vformat(msg190input3); 
     
    
replace_all(msg190"!g""^4"); // Verde
    
replace_all(msg190"!y""^1"); // Default
    
replace_all(msg190"!t""^3"); // Color del Equipo 
     
    
if (idplayers[0] = id; else get_players(playerscount"ch"); { 
        for (new 
0counti++)  { 
            if (
is_user_connected(players[i])) { 
                
message_begin(MSG_ONE_UNRELIABLEget_user_msgid("SayText"), _players[i]); 
                
write_byte(players[i]); 
                
write_string(msg); 
                
message_end(); 
            } 
        } 
    } 

// Stock para Saber Si el mensaje es valido
stock ValidMessage(text[], maxcount) {
    static 
lenicount
    len 
strlen(text)
    
count 0
    
    
if (!len)
        return 
false;
    
    for (
0leni++) {
        if (
text[i] != ' ') {
            
count++
            if (
count >= maxcount)
                return 
true;
        }
    }
    return 
false;

asi los uso yo!! pruebalo a ver

aqui una chuleta de los niveles de admin y sus letras

Código:
; Access flags:
a - ADMIN_IMMUNITY
b - ADMIN_RESERVATION
c - ADMIN_KICK
d - ADMIN_BAN
e - ADMIN_SLAY
f - ADMIN_MAP
g - ADMIN_CVAR
h - ADMIN_CFG
i - ADMIN_CHAT
j - ADMIN_VOTE
k - ADMIN_PASSWORD
l - ADMIN_RCON
m - ADMIN_LEVEL_A
n - ADMIN_LEVEL_B
o - ADMIN_LEVEL_C
p - ADMIN_LEVEL_D
q - ADMIN_LEVEL_E
r - ADMIN_LEVEL_F
s - ADMIN_LEVEL_G
t - ADMIN_LEVEL_H
u - ADMIN_MENU
z - ADMIN_USER < NO ADMIN
Mi 250 :3
[Imagen: anigif2.gif]
Responder
#3
muchas gracias amigo dios te bendiga hoy y siempre! ♡
Responder


Salto de foro:


Usuarios navegando en este tema: 1 invitado(s)