quiero que me de HP
#1
este plugin yo lo uso para el modo zombie y por level me da armor pero yo quiero que tambien me de hp al igual que me da el amor me entienden?
gracias de antemano

Código PHP:
#include <amxmodx>
#include <amxmisc>
#include <nvault>
#include <fun>
#include <cstrike>
#include <fakemeta>
#include <fakemeta_util>
#include <hamsandwich>
#include <xs>

#define PLUGIN "[Driss] LevelUp System"
#define VERSION "3.2"
#define AUTHOR "Driss"
#define ACCES ADMIN_LEVEL_C
#pragma tabsize 0

new g_playername[33][32// player's name
new SayTextg_player_name
new g_level[32], g_level_datag_frags_levelg_ScreenFadeg_level_del[33], g_level_bonus
new g_level_maxg_level_numg_level_infog_levels[32], g_h_armorg_h_health
new level_exp[32]
new 
g_level_exp[32], g_exp_datag_Playersnameid[32], h_armor[32], h_health[32]
new 
bool:g_bonus[32], g_trime[32]
new 
sound_level_up[] = { "Level-Exp/level_up.wav"}

const 
PEV_SPEC_TARGET pev_iuser2

enum 
(+= 100)
{
        
TASK_SHOWHUD
}

#define ID_SHOWHUD (taskid - TASK_SHOWHUD)

public plugin_precache()
{
        
precache_soundsound_level_up )
}

public 
plugin_init()
{
    
g_frags_level =         register_cvar("level_frags""2")        // ??????? ????????? ????? ??? ????????? ????. ??????
    
g_level_max  =         register_cvar("level_max""1000000")            // ???????????? ?????
    
    
g_h_armor =         register_cvar("level_h_armor""5")// ??????????? ? ?????? ??????? ???? ?? ? ? ?????
    
g_level_info =         register_cvar("level_info""1")                // ?????????? ???? ? ??????, ????? ?? ??????? ? ??? info <nick>
    
g_level_bonus =         register_cvar("level_bonus_on""0")        // ????? ?? ????? ??????? ?????????? (?? ????????? ???. ?????)
    
g_level_num =         register_cvar("level_number""1")    // ?????? ? ?????? ????? ??????????? ?????  ????????? (???? ???? 1)
    
g_player_name =     register_cvar("player_name""1")        // ?????????? ????, ??? ????????? ???????? ?? ???????

    
    
g_level_data nvault_open("Leveling_Save")
    
g_exp_data nvault_open("Exp_Save")
    
register_clcmd("say","say_info");
    
register_clcmd("say_team","say_info");
    
register_clcmd("levelexp","expa_give"ADMIN_LEVEL_C"use to give Exp")
    
register_clcmd("level_is","level_give"ADMIN_LEVEL_C"use to give Level")
    
SayText get_user_msgid("SayText")
    
g_Players get_maxplayers();
    
register_event("HLTV""Round_Start""a""1=0""2=0")
    
register_event("DeathMsg""Frags_Manager""a""1>0")     
    
register_dictionary("level_system_xp.txt")
    
g_ScreenFade get_user_msgid"ScreenFade" )
    
register_plugin(PLUGINVERSIONAUTHOR)
    
register_event("StatusValue","hide_status","be","1=1","2=0")
          
register_event("StatusValue","show_status","be","1=2","2!0")

}

public 
plugin_natives()
{
    
register_native("level_1""native_level_1"1)
    
register_native("level_exp""native_level_exp"1)
    
register_native("level_exp1""native_level_exp1"1)
}

public 
Round_Start()
{
    for(new 
id=1;id<=g_Players;id++)
    
set_task(3.0"Level"id)
}

public 
Level(id)
{
    if( 
is_user_alive(id) )
    {
        
g_trime[id] = false;
        new 
1;
        while( 
g_level[id] )
        {
            
h_armor[id] = get_pcvar_num(g_h_armor);
            
1
            
        
}
                  
fm_set_user_armoridget_user_armor(id) + h_armor[id])
    }
}

public 
expa_give(idlevelcid)
{
    if (!
cmd_access(idlevelcid2))
    {                
        
console_print(id"? ??? ??? ??????? ? ???????")
        return 
PLUGIN_HANDLED
    
}
    new 
target[32]
    new 
count[32]    
    
    
read_argv(1,target,31)
    
read_argv(2,count,31)
    new 
target_idname[32], nameid[32]
    
target_id find_player("bl"target)
    
get_user_name(target_idnamesizeof name 1
    
get_user_name(idnameidsizeof nameid 1)
    if(!
target_id
    {
        
console_print(id"Can't find that player")
        return 
PLUGIN_HANDLED
    
}
    if(
read_argc() != 3)
    return 
PLUGIN_HANDLED    

    
if(str_to_num(count) < (g_level_exp[target_id] - level_exp[target_id]) )
    {
        if(
str_to_num(count) == 0)
        
console_print(id"Exp Player %s in %i / %i"namelevel_exp[target_id], g_level_exp[target_id])
        else
        {
            
console_print(id"Player %s gives for %i exp, Her Maximum %i"namestr_to_num(count), g_level_exp[target_id])
            
level_exp[target_id] = level_exp[target_id] + str_to_num(count);
        }
        
    }
    else
    {
        
console_print(id"Maximum Exp in player %i"g_level_exp[target_id])
    }
    return 
PLUGIN_HANDLED
}

public 
level_give(idlevelcid)
{
    if (!
cmd_access(idlevelcid2))
    {                
        
console_print(id"? ??? ??? ??????? ? ???????")
        return 
PLUGIN_HANDLED
    
}
    new 
target[32]
    new 
count[32]    
    
    
read_argv(1,target,31)
    
read_argv(2,count,31)
    new 
target_idname[32], level_id
    level_id 
str_to_num(count);
    
target_id find_player("bl"target)
    
get_user_name(target_idnamesizeof name 1
    if(!
target_id
    {
        
console_print(id"Can't find that player")
        return 
PLUGIN_HANDLED
    
}
    if(
read_argc() != 3)
    return 
PLUGIN_HANDLED    

    
if( ((g_level[target_id] + level_id) <=get_pcvar_num(g_level_max)) && (level_id != 0) && ((g_level[target_id] + level_id) > ) )
    {
        if(
level_id 0)
        {
            
g_level[target_id] = g_level[target_id] + level_id;
            
level_exp[target_id] = 0;
            
message_begin(MSG_ONE_UNRELIABLEg_ScreenFade_target_id)
                   
write_short(1<<12// duration
                
write_short(1// hold time
            
write_short(0x0000// fade type
            
write_byte(1// red
            
write_byte(200// green
            
write_byte(0// blue
            
write_byte(205// alpha
            
message_end()
            
emit_sound(target_idCHAN_STREAMsound_level_up1.0ATTN_NORM0PITCH_HIGH )
        }
        else
        {
            
g_level[target_id] = g_level[target_id] + level_id;
            
level_exp[target_id] = 0;
            
message_begin(MSG_ONE_UNRELIABLEg_ScreenFade_target_id)
                   
write_short(1<<12// duration
                
write_short(1// hold time
            
write_short(0x0000// fade type
            
write_byte(200// red
            
write_byte(40// green
            
write_byte(0// blue
            
write_byte(205// alpha
            
message_end()
        }
            
console_print(id"Player %s gives add %i level"namelevel_id)
    }
    else
        
console_print(id"Operation Invalid")
    return 
PLUGIN_HANDLED
}

public 
client_putinserver(id)
{
    
Level_Load(id)
    new 
name[32]
    
g_trime[id] = false;
    
g_bonus[id] = true;
    
nameid[id] = get_user_name(idnamesizeof name 1)
    
get_user_name(idg_playername[id], charsmax(g_playername[]))
    if (!
is_user_bot(id))
    {
        
// Set the custom HUD display task
        
set_task(1.0"ShowHUD"id+TASK_SHOWHUD__"b")
    }
    if(
is_user_alive(id))
    {
        
g_trime[id] = false;
        new 
1;
        while( 
!= g_level[id] )
        {
                  
h_armor[id] = set_user_armor(id,get_pcvar_num(g_h_armor))
            
1;
        }
    }
    if( 
g_level[id] == 0g_level[id] = 1;
    if( 
level_exp[id] == g_level[id] ) level_exp[id] = 0;
    if(
g_level[id] < get_pcvar_num(g_level_num))
    
g_levels[id] = get_pcvar_num(g_level_num);
    else
    {
        if(
g_level[id] != g_levels[id])
        {
            new 
1;
            while( 
g_level[id] > ( get_pcvar_num(g_level_num)) )
            {
                
1;
                
g_levels[id] = get_pcvar_num(g_level_num);
            }
        }
    }
    new 
0;
    while( 
g_level[id] != )
    {
    
1;
    
g_level_exp[id] = get_pcvar_num(g_frags_level);
    }
}

public 
client_disconnect(id)
{
    new 
name[32], player_nick[32]
    
player_nick[id] = get_user_name(idnamesizeof name 1)
    if(
player_nick[id] == nameid[id])
    
Level_Save(id)
    
    
g_trime[id] = false;
}

public 
hide_status(id)
{
        
set_hudmessage(0,0,0,0.0,0.0,00.00.010.00.04)
        
show_hudmessage(id,"")
}
public 
say_info(id)
{
    new 
text[70], arg1[32], target[32], count[32]
    
read_args(textsizeof(text)-1);
    
remove_quotes(text);
    
arg1[0] = '^0';
    
target[0] = '^0';
    
count[0] = '^0';
    
parse(textarg1sizeof(arg1)-1targetsizeof(target)-1countsizeof(count)-1);
    if ( 
equali(arg1"info"4) )
    {
    }
    if ( 
equali(arg1"bonusme"7) && (get_pcvar_num(g_level_info) == 1))
    {
        
bonus_player(id);
    }
    if ( 
equali(arg1"levelexp"7) && (get_pcvar_num(g_level_info) == 1))
    {
        
expa_player(id);
    }
    return 
PLUGIN_CONTINUE;
}

public 
bonus_player(id)
{
    if( (
g_level[id] >= g_levels[id]) && g_bonus[id] && get_pcvar_num(g_level_bonus))
    {
        
g_levels[id] = g_levels[id] * 2;
        
g_level_del[id] = g_level[id];
        
g_bonus[id] = false;
        
ChatColor(id"!g[New-Generation] !tyou have New !g%i !tLevel Good"g_level[id])
        
Level_Save(id)
    }
    else
    {
        if(
g_level[id] < g_levels[id])
        {
            
g_levels[id] = get_pcvar_num(g_level_num);
            
ChatColor(id"!g[New-Generation] !y to Remove a bonus it will be possible only on! g%i Level!t. The bonus makes"g_levels[id])
        }
        else
        {
            new 
1;
            while( 
g_level[id] > ( get_pcvar_num(g_level_num)) )
            {
                
g_levels[id] = get_pcvar_num(g_level_num);
                
1;
            }
            
ChatColor(id"!g[New-Generation] !y to Remove a bonus it will be possible only on! g%i Level!t. The bonus makes"g_levels[id])
        }

        
Level_Save(id)
    }
    return 
PLUGIN_HANDLED
}

public 
expa_player(id)
{
    
ChatColor(id"!g[Master-Serv] %L""LEVEL_EXP"level_exp[id], g_level_exp[id])
    return 
PLUGIN_HANDLED
}

public 
show_status(id)
{
        new 
name[32],pid read_data(2)
        
get_user_name(pid,name,31)
    new 
idAimingiBodyPart
    
static healthstring16 ];
    
AddCommasget_user_healthpid ), healthstring15 );
         
get_user_aiming(ididAimingiBodyPart)
    if(
is_user_alive(idAiming)) 
         {
         if(
cs_get_user_team(id) == cs_get_user_team(idAiming))
         {
       if ((
get_pcvar_num(g_player_name) == 1) )
    {
           
set_hudmessage(153,50,204, -1.00.6020.050.10.0101.0, -1)
           
show_hudmessage(id"%s ^n^n[ Health: %d | Armor: %d ]^n[ Level: %d | Exp: %d/%d ]"name,healthstring,get_user_armor(pid),g_level[pid],level_exp[pid],g_level_exp[pid])
    }
    if(
cs_get_user_team(id) == CS_TEAM_T && cs_get_user_team(idAiming) == CS_TEAM_CT)
     if((
get_pcvar_num(g_player_name) == 1))
    {
         
set_hudmessage(255,0,0,-1.0,0.60,10.013.00.010.01, -1)
         
show_hudmessage(id"%s ^n^n[ Health : %d | Armor: %d ]^n[ Level: %d | Exp: %d/%d ]"name,healthstringget_user_armor(pid), g_level[pid],level_exp[pid],g_level_exp[pid])
    }
}
}
}

public 
ShowHUD(taskid)
{
    static 
id
    id 
ID_SHOWHUD;
              
// Player died?
              
if (!is_user_alive(id))
              {
              
// Get spectating target
             
id pev(idPEV_SPEC_TARGET)
        
             
// Target not alive
             
if (!is_user_alive(id)) return;
             }
             if (
id != ID_SHOWHUD)
             {
        static 
healthstring16 ];
        
AddCommasget_user_healthid ), healthstring15 );
        
set_hudmessage(25510255, -1.00.8000.01.1)
        
show_hudmessage(ID_SHOWHUD,"Spectating: %s^n[ Health: %s | Armor: %d ]^n[ Level : %d | Exp : %d/%d ]",g_playername[id],healthstring,get_user_armor(id), g_level[id], level_exp[id], g_level_exp[id])
             }
             else
             {
        static 
healthstring16 ];
        
AddCommasget_user_healthID_SHOWHUD ), healthstring15 );
        
set_hudmessage(02550, -1.00.9100.01.1)
        
show_hudmessage(ID_SHOWHUD,"[ Health: %s | Armor: %d ]^n[ Level : %d | Exp : %d/%d ]",healthstring,get_user_armor(ID_SHOWHUD),g_level[ID_SHOWHUD], level_exp[ID_SHOWHUD], g_level_exp[ID_SHOWHUD])
        }
}

AddCommasiNum szOutput[] , iLen ){
static 
szTmp15 ] , iOutputPos iNumPos iNumLen;
szTmp[0]='^0',iOutputPos=iNumPos=iNumLen=0;
if ( 
iNum ){
szOutputiOutputPos++ ] = '-';
iNum absiNum );}
iNumLen num_to_striNum szTmp charsmaxszTmp ) );
if ( 
iNumLen <= )iOutputPos += copyszOutputiOutputPos ] , iLen szTmp );
else{
while ( ( 
iNumPos iNumLen ) && ( iOutputPos iLen ) ){
szOutputiOutputPos++ ] = szTmpiNumPos++ ];
if( ( 
iNumLen iNumPos ) && !( ( iNumLen iNumPos ) % ) )szOutputiOutputPos++ ] = ',';
}
szOutputiOutputPos ] = EOS;
}return 
iOutputPos;}

public 
Level_Save(id)
{
    new 
key[64], data[256], data_exp[256], key_exp[64]
    new 
name[33];
    
get_user_name(id,name,32)

    
format(key63"%s-/"name)
    
format(data255"%i#"g_level[id])

    
format(key_exp63"%s-/"name)
    
format(data_exp255"%i#"level_exp[id])

    
nvault_set(g_level_datakeydata)
    
nvault_set(g_exp_datakey_expdata_exp)
    return 
PLUGIN_CONTINUE;
}

public 
Level_Load(id)
{
    new 
key[64], data[256], data_exp[256], key_exp[64]
    new 
name[33];
    
get_user_name(id,name,32)

    
format(key63"%s-/"name)
    
format(data255"%i#"g_level[id])

    
format(key_exp63"%s-/"name)
    
format(data_exp255"%i#"level_exp[id])

    
nvault_get(g_level_datakeydata255)
    
nvault_get(g_exp_datakey_expdata_exp255)
    
replace_all(data255"#"" ")
    
replace_all(data_exp255"#"" ")

    new 
givelevel[32], give_exp[32]
    
parse(datagivelevel31)
    
parse(data_expgive_exp31)
    
g_level[id] = str_to_num(givelevel)
    
level_exp[id] = str_to_num(give_exp)

    return 
PLUGIN_CONTINUE;
}

public 
Frags_Manager()
{
    new 
aname[32], attackerattacker read_data(1)
    new 
y1;
    
get_user_name(attackeranamesizeof aname 1)
    if( ( 
level_exp[attacker] >= (g_level_exp[attacker] - 1) ) && (g_level[attacker] <= get_pcvar_num(g_level_max)) && is_user_alive(attacker) )
    {
        
g_bonus[attacker] = true;
        
g_level[attacker] = g_level[attacker] + 1;
        
level_exp[attacker] = 0;
        while( 
g_level[attacker] != )
        {
            
1;
            
g_level_exp[attacker] = get_pcvar_num(g_frags_level);
        }
        
message_begin(MSG_ONE_UNRELIABLEg_ScreenFade_attacker)
             
write_short(1<<12// duration
             
write_short(1// hold time
        
write_short(0x0000// fade type
        
write_byte(1// red
        
write_byte(200// green
        
write_byte(0// blue
        
write_byte(205// alpha
        
message_end()
        
emit_sound(attackerCHAN_STREAMsound_level_up1.0ATTN_NORM0PITCH_HIGH )
        
set_hudmessage(020000.650.500.03.02.01.0, -1)
        
show_hudmessage(0"%L""LEVEL_UP"anameg_level[attacker])

        
Level_Save(attacker);
    }
    else
    {

        if(
g_level[attacker] == get_pcvar_num(g_level_max))
        
ChatColor(attacker"!g[Master-Serv]!y %L""LEVEL_MAX"g_level[attacker] )
        
level_exp[attacker] = level_exp[attacker] + 1;
        
Level_Save(attacker);
    }
}
stock ChatColor(const id, const input[], any:...)
{
    new 
count 1players[32]
    static 
msg[191]
    
vformat(msg190input3)

    
replace_all(msg190"!g""^4"// Green Color
    
replace_all(msg190"!y""^1"// Default Color
    
replace_all(msg190"!t""^3"// Team Color
    
replace_all(msg190"!t2""^0"// Team2 Color

    
if (idplayers[0] = id; else get_players(playerscount"ch")
    {
        for (new 
0counti++)
        {
            if (
is_user_connected(players[i]))
            {
                
message_begin(MSG_ONE_UNRELIABLESayText_players[i])
                
write_byte(players[i]);
                
write_string(msg);
                
message_end();
            }
        }
    }
}
public 
native_level_1(id)
{
    return 
g_level[id];
}
public 
native_level_exp(id)
{
    return 
level_exp[id];
}
public 
native_level_exp1(id)
{
    return 
g_level_exp[id];

Responder
#2
Osea quieres que si Matas te coloque el mismo porcentaje que la armadura?
Cita: Kikizon2 Dijo :
Lo que deberian de aprender es a escribir, parece que escriben con el escroto en la mano.
Responder
#3
(09/11/2018, 04:47 PM)KevinJesus escribió: Osea quieres que si Matas te coloque el mismo porcentaje que la armadura?

Sip
Responder
#4
Prueba y me avisas Guiño
Código PHP:
#include <amxmodx>
#include <amxmisc>
#include <nvault>
#include <fun>
#include <cstrike>
#include <fakemeta>
#include <fakemeta_util>
#include <hamsandwich>
#include <xs>

#define PLUGIN "[Driss] LevelUp System"
#define VERSION "3.2"
#define AUTHOR "Driss"
#define ACCES ADMIN_LEVEL_C
#pragma tabsize 0

new g_playername[33][32// player's name
new SayTextg_player_name
new g_level[32], g_level_datag_frags_levelg_ScreenFadeg_level_del[33], g_level_bonus
new g_level_maxg_level_numg_level_infog_levels[32], g_h_armorg_h_health
new level_exp[32]
new 
g_level_exp[32], g_exp_datag_Playersnameid[32], h_armor[32], h_health[32]
new 
bool:g_bonus[32], g_trime[32]
new 
sound_level_up[] = { "Level-Exp/level_up.wav"}

const 
PEV_SPEC_TARGET pev_iuser2

enum 
(+= 100)
{
        
TASK_SHOWHUD
}

#define ID_SHOWHUD (taskid - TASK_SHOWHUD)

public plugin_precache()
{
        
precache_soundsound_level_up )
}

public 
plugin_init()
{
    
g_frags_level =         register_cvar("level_frags""2")        // ??????? ????????? ????? ??? ????????? ????. ??????
    
g_level_max  =         register_cvar("level_max""1000000")            // ???????????? ?????
    
    
g_h_armor =         register_cvar("level_h_armor""5")// ??????????? ? ?????? ??????? ???? ?? ? ? ?????
    
g_h_health =         register_cvar("level_h_healh""5")// ??????????? ? ?????? ??????? ???? ?? ? ? ?????
    
g_level_info =         register_cvar("level_info""1")                // ?????????? ???? ? ??????, ????? ?? ??????? ? ??? info <nick>
    
g_level_bonus =         register_cvar("level_bonus_on""0")        // ????? ?? ????? ??????? ?????????? (?? ????????? ???. ?????)
    
g_level_num =         register_cvar("level_number""1")    // ?????? ? ?????? ????? ??????????? ?????  ????????? (???? ???? 1)
    
g_player_name =     register_cvar("player_name""1")        // ?????????? ????, ??? ????????? ???????? ?? ???????

    
    
g_level_data nvault_open("Leveling_Save")
    
g_exp_data nvault_open("Exp_Save")
    
register_clcmd("say","say_info");
    
register_clcmd("say_team","say_info");
    
register_clcmd("levelexp","expa_give"ADMIN_LEVEL_C"use to give Exp")
    
register_clcmd("level_is","level_give"ADMIN_LEVEL_C"use to give Level")
    
SayText get_user_msgid("SayText")
    
g_Players get_maxplayers();
    
register_event("HLTV""Round_Start""a""1=0""2=0")
    
register_event("DeathMsg""Frags_Manager""a""1>0")     
    
register_dictionary("level_system_xp.txt")
    
g_ScreenFade get_user_msgid"ScreenFade" )
    
register_plugin(PLUGINVERSIONAUTHOR)
    
register_event("StatusValue","hide_status","be","1=1","2=0")
          
register_event("StatusValue","show_status","be","1=2","2!0")

}

public 
plugin_natives()
{
    
register_native("level_1""native_level_1"1)
    
register_native("level_exp""native_level_exp"1)
    
register_native("level_exp1""native_level_exp1"1)
}

public 
Round_Start()
{
    for(new 
id=1;id<=g_Players;id++)
    
set_task(3.0"Level"id)
}

public 
Level(id)
{
    if( 
is_user_alive(id) )
    {
        
g_trime[id] = false;
        new 
1;
        while( 
g_level[id] )
        {
            
h_armor[id] = get_pcvar_num(g_h_armor);
            
1
            h_health
[id] = get_pcvar_num(g_h_health);
            
1
            
        
}
                
fm_set_user_armoridget_user_armor(id) + h_armor[id])
                
set_user_health(idget_user_armor(id) + h_health[id])

    }
}

public 
expa_give(idlevelcid)
{
    if (!
cmd_access(idlevelcid2))
    {                
        
console_print(id"? ??? ??? ??????? ? ???????")
        return 
PLUGIN_HANDLED
    
}
    new 
target[32]
    new 
count[32]    
    
    
read_argv(1,target,31)
    
read_argv(2,count,31)
    new 
target_idname[32], nameid[32]
    
target_id find_player("bl"target)
    
get_user_name(target_idnamesizeof name 1
    
get_user_name(idnameidsizeof nameid 1)
    if(!
target_id
    {
        
console_print(id"Can't find that player")
        return 
PLUGIN_HANDLED
    
}
    if(
read_argc() != 3)
    return 
PLUGIN_HANDLED    

    
if(str_to_num(count) < (g_level_exp[target_id] - level_exp[target_id]) )
    {
        if(
str_to_num(count) == 0)
        
console_print(id"Exp Player %s in %i / %i"namelevel_exp[target_id], g_level_exp[target_id])
        else
        {
            
console_print(id"Player %s gives for %i exp, Her Maximum %i"namestr_to_num(count), g_level_exp[target_id])
            
level_exp[target_id] = level_exp[target_id] + str_to_num(count);
        }
        
    }
    else
    {
        
console_print(id"Maximum Exp in player %i"g_level_exp[target_id])
    }
    return 
PLUGIN_HANDLED
}

public 
level_give(idlevelcid)
{
    if (!
cmd_access(idlevelcid2))
    {                
        
console_print(id"? ??? ??? ??????? ? ???????")
        return 
PLUGIN_HANDLED
    
}
    new 
target[32]
    new 
count[32]    
    
    
read_argv(1,target,31)
    
read_argv(2,count,31)
    new 
target_idname[32], level_id
    level_id 
str_to_num(count);
    
target_id find_player("bl"target)
    
get_user_name(target_idnamesizeof name 1
    if(!
target_id
    {
        
console_print(id"Can't find that player")
        return 
PLUGIN_HANDLED
    
}
    if(
read_argc() != 3)
    return 
PLUGIN_HANDLED    

    
if( ((g_level[target_id] + level_id) <=get_pcvar_num(g_level_max)) && (level_id != 0) && ((g_level[target_id] + level_id) > ) )
    {
        if(
level_id 0)
        {
            
g_level[target_id] = g_level[target_id] + level_id;
            
level_exp[target_id] = 0;
            
message_begin(MSG_ONE_UNRELIABLEg_ScreenFade_target_id)
                   
write_short(1<<12// duration
                
write_short(1// hold time
            
write_short(0x0000// fade type
            
write_byte(1// red
            
write_byte(200// green
            
write_byte(0// blue
            
write_byte(205// alpha
            
message_end()
            
emit_sound(target_idCHAN_STREAMsound_level_up1.0ATTN_NORM0PITCH_HIGH )
        }
        else
        {
            
g_level[target_id] = g_level[target_id] + level_id;
            
level_exp[target_id] = 0;
            
message_begin(MSG_ONE_UNRELIABLEg_ScreenFade_target_id)
                   
write_short(1<<12// duration
                
write_short(1// hold time
            
write_short(0x0000// fade type
            
write_byte(200// red
            
write_byte(40// green
            
write_byte(0// blue
            
write_byte(205// alpha
            
message_end()
        }
            
console_print(id"Player %s gives add %i level"namelevel_id)
    }
    else
        
console_print(id"Operation Invalid")
    return 
PLUGIN_HANDLED
}

public 
client_putinserver(id)
{
    
Level_Load(id)
    new 
name[32]
    
g_trime[id] = false;
    
g_bonus[id] = true;
    
nameid[id] = get_user_name(idnamesizeof name 1)
    
get_user_name(idg_playername[id], charsmax(g_playername[]))
    if (!
is_user_bot(id))
    {
        
// Set the custom HUD display task
        
set_task(1.0"ShowHUD"id+TASK_SHOWHUD__"b")
    }
    if(
is_user_alive(id))
    {
        
g_trime[id] = false;
        new 
1;
        while( 
!= g_level[id] )
        {
                  
h_armor[id] = set_user_armor(id,get_pcvar_num(g_h_armor))
            
1;
        }
    }
    if( 
g_level[id] == 0g_level[id] = 1;
    if( 
level_exp[id] == g_level[id] ) level_exp[id] = 0;
    if(
g_level[id] < get_pcvar_num(g_level_num))
    
g_levels[id] = get_pcvar_num(g_level_num);
    else
    {
        if(
g_level[id] != g_levels[id])
        {
            new 
1;
            while( 
g_level[id] > ( get_pcvar_num(g_level_num)) )
            {
                
1;
                
g_levels[id] = get_pcvar_num(g_level_num);
            }
        }
    }
    new 
0;
    while( 
g_level[id] != )
    {
    
1;
    
g_level_exp[id] = get_pcvar_num(g_frags_level);
    }
}

public 
client_disconnect(id)
{
    new 
name[32], player_nick[32]
    
player_nick[id] = get_user_name(idnamesizeof name 1)
    if(
player_nick[id] == nameid[id])
    
Level_Save(id)
    
    
g_trime[id] = false;
}

public 
hide_status(id)
{
        
set_hudmessage(0,0,0,0.0,0.0,00.00.010.00.04)
        
show_hudmessage(id,"")
}
public 
say_info(id)
{
    new 
text[70], arg1[32], target[32], count[32]
    
read_args(textsizeof(text)-1);
    
remove_quotes(text);
    
arg1[0] = '^0';
    
target[0] = '^0';
    
count[0] = '^0';
    
parse(textarg1sizeof(arg1)-1targetsizeof(target)-1countsizeof(count)-1);
    if ( 
equali(arg1"info"4) )
    {
    }
    if ( 
equali(arg1"bonusme"7) && (get_pcvar_num(g_level_info) == 1))
    {
        
bonus_player(id);
    }
    if ( 
equali(arg1"levelexp"7) && (get_pcvar_num(g_level_info) == 1))
    {
        
expa_player(id);
    }
    return 
PLUGIN_CONTINUE;
}

public 
bonus_player(id)
{
    if( (
g_level[id] >= g_levels[id]) && g_bonus[id] && get_pcvar_num(g_level_bonus))
    {
        
g_levels[id] = g_levels[id] * 2;
        
g_level_del[id] = g_level[id];
        
g_bonus[id] = false;
        
ChatColor(id"!g[New-Generation] !tyou have New !g%i !tLevel Good"g_level[id])
        
Level_Save(id)
    }
    else
    {
        if(
g_level[id] < g_levels[id])
        {
            
g_levels[id] = get_pcvar_num(g_level_num);
            
ChatColor(id"!g[New-Generation] !y to Remove a bonus it will be possible only on! g%i Level!t. The bonus makes"g_levels[id])
        }
        else
        {
            new 
1;
            while( 
g_level[id] > ( get_pcvar_num(g_level_num)) )
            {
                
g_levels[id] = get_pcvar_num(g_level_num);
                
1;
            }
            
ChatColor(id"!g[New-Generation] !y to Remove a bonus it will be possible only on! g%i Level!t. The bonus makes"g_levels[id])
        }

        
Level_Save(id)
    }
    return 
PLUGIN_HANDLED
}

public 
expa_player(id)
{
    
ChatColor(id"!g[Master-Serv] %L""LEVEL_EXP"level_exp[id], g_level_exp[id])
    return 
PLUGIN_HANDLED
}

public 
show_status(id)
{
        new 
name[32],pid read_data(2)
        
get_user_name(pid,name,31)
    new 
idAimingiBodyPart
    
static healthstring16 ];
    
AddCommasget_user_healthpid ), healthstring15 );
         
get_user_aiming(ididAimingiBodyPart)
    if(
is_user_alive(idAiming)) 
         {
         if(
cs_get_user_team(id) == cs_get_user_team(idAiming))
         {
       if ((
get_pcvar_num(g_player_name) == 1) )
    {
           
set_hudmessage(153,50,204, -1.00.6020.050.10.0101.0, -1)
           
show_hudmessage(id"%s ^n^n[ Health: %d | Armor: %d ]^n[ Level: %d | Exp: %d/%d ]"name,healthstring,get_user_armor(pid),g_level[pid],level_exp[pid],g_level_exp[pid])
    }
    if(
cs_get_user_team(id) == CS_TEAM_T && cs_get_user_team(idAiming) == CS_TEAM_CT)
     if((
get_pcvar_num(g_player_name) == 1))
    {
         
set_hudmessage(255,0,0,-1.0,0.60,10.013.00.010.01, -1)
         
show_hudmessage(id"%s ^n^n[ Health : %d | Armor: %d ]^n[ Level: %d | Exp: %d/%d ]"name,healthstringget_user_armor(pid), g_level[pid],level_exp[pid],g_level_exp[pid])
    }
}
}
}

public 
ShowHUD(taskid)
{
    static 
id
    id 
ID_SHOWHUD;
              
// Player died?
              
if (!is_user_alive(id))
              {
              
// Get spectating target
             
id pev(idPEV_SPEC_TARGET)
        
             
// Target not alive
             
if (!is_user_alive(id)) return;
             }
             if (
id != ID_SHOWHUD)
             {
        static 
healthstring16 ];
        
AddCommasget_user_healthid ), healthstring15 );
        
set_hudmessage(25510255, -1.00.8000.01.1)
        
show_hudmessage(ID_SHOWHUD,"Spectating: %s^n[ Health: %s | Armor: %d ]^n[ Level : %d | Exp : %d/%d ]",g_playername[id],healthstring,get_user_armor(id), g_level[id], level_exp[id], g_level_exp[id])
             }
             else
             {
        static 
healthstring16 ];
        
AddCommasget_user_healthID_SHOWHUD ), healthstring15 );
        
set_hudmessage(02550, -1.00.9100.01.1)
        
show_hudmessage(ID_SHOWHUD,"[ Health: %s | Armor: %d ]^n[ Level : %d | Exp : %d/%d ]",healthstring,get_user_armor(ID_SHOWHUD),g_level[ID_SHOWHUD], level_exp[ID_SHOWHUD], g_level_exp[ID_SHOWHUD])
        }
}

AddCommasiNum szOutput[] , iLen ){
static 
szTmp15 ] , iOutputPos iNumPos iNumLen;
szTmp[0]='^0',iOutputPos=iNumPos=iNumLen=0;
if ( 
iNum ){
szOutputiOutputPos++ ] = '-';
iNum absiNum );}
iNumLen num_to_striNum szTmp charsmaxszTmp ) );
if ( 
iNumLen <= )iOutputPos += copyszOutputiOutputPos ] , iLen szTmp );
else{
while ( ( 
iNumPos iNumLen ) && ( iOutputPos iLen ) ){
szOutputiOutputPos++ ] = szTmpiNumPos++ ];
if( ( 
iNumLen iNumPos ) && !( ( iNumLen iNumPos ) % ) )szOutputiOutputPos++ ] = ',';
}
szOutputiOutputPos ] = EOS;
}return 
iOutputPos;}

public 
Level_Save(id)
{
    new 
key[64], data[256], data_exp[256], key_exp[64]
    new 
name[33];
    
get_user_name(id,name,32)

    
format(key63"%s-/"name)
    
format(data255"%i#"g_level[id])

    
format(key_exp63"%s-/"name)
    
format(data_exp255"%i#"level_exp[id])

    
nvault_set(g_level_datakeydata)
    
nvault_set(g_exp_datakey_expdata_exp)
    return 
PLUGIN_CONTINUE;
}

public 
Level_Load(id)
{
    new 
key[64], data[256], data_exp[256], key_exp[64]
    new 
name[33];
    
get_user_name(id,name,32)

    
format(key63"%s-/"name)
    
format(data255"%i#"g_level[id])

    
format(key_exp63"%s-/"name)
    
format(data_exp255"%i#"level_exp[id])

    
nvault_get(g_level_datakeydata255)
    
nvault_get(g_exp_datakey_expdata_exp255)
    
replace_all(data255"#"" ")
    
replace_all(data_exp255"#"" ")

    new 
givelevel[32], give_exp[32]
    
parse(datagivelevel31)
    
parse(data_expgive_exp31)
    
g_level[id] = str_to_num(givelevel)
    
level_exp[id] = str_to_num(give_exp)

    return 
PLUGIN_CONTINUE;
}

public 
Frags_Manager()
{
    new 
aname[32], attackerattacker read_data(1)
    new 
y1;
    
get_user_name(attackeranamesizeof aname 1)
    if( ( 
level_exp[attacker] >= (g_level_exp[attacker] - 1) ) && (g_level[attacker] <= get_pcvar_num(g_level_max)) && is_user_alive(attacker) )
    {
        
g_bonus[attacker] = true;
        
g_level[attacker] = g_level[attacker] + 1;
        
level_exp[attacker] = 0;
        while( 
g_level[attacker] != )
        {
            
1;
            
g_level_exp[attacker] = get_pcvar_num(g_frags_level);
        }
        
message_begin(MSG_ONE_UNRELIABLEg_ScreenFade_attacker)
             
write_short(1<<12// duration
             
write_short(1// hold time
        
write_short(0x0000// fade type
        
write_byte(1// red
        
write_byte(200// green
        
write_byte(0// blue
        
write_byte(205// alpha
        
message_end()
        
emit_sound(attackerCHAN_STREAMsound_level_up1.0ATTN_NORM0PITCH_HIGH )
        
set_hudmessage(020000.650.500.03.02.01.0, -1)
        
show_hudmessage(0"%L""LEVEL_UP"anameg_level[attacker])

        
Level_Save(attacker);
    }
    else
    {

        if(
g_level[attacker] == get_pcvar_num(g_level_max))
        
ChatColor(attacker"!g[Master-Serv]!y %L""LEVEL_MAX"g_level[attacker] )
        
level_exp[attacker] = level_exp[attacker] + 1;
        
Level_Save(attacker);
    }
}
stock ChatColor(const id, const input[], any:...)
{
    new 
count 1players[32]
    static 
msg[191]
    
vformat(msg190input3)

    
replace_all(msg190"!g""^4"// Green Color
    
replace_all(msg190"!y""^1"// Default Color
    
replace_all(msg190"!t""^3"// Team Color
    
replace_all(msg190"!t2""^0"// Team2 Color

    
if (idplayers[0] = id; else get_players(playerscount"ch")
    {
        for (new 
0counti++)
        {
            if (
is_user_connected(players[i]))
            {
                
message_begin(MSG_ONE_UNRELIABLESayText_players[i])
                
write_byte(players[i]);
                
write_string(msg);
                
message_end();
            }
        }
    }
}
public 
native_level_1(id)
{
    return 
g_level[id];
}
public 
native_level_exp(id)
{
    return 
level_exp[id];
}
public 
native_level_exp1(id)
{
    return 
g_level_exp[id];

Responder
#5
(11/11/2018, 12:09 AM)Alejandro escribió: Prueba y me avisas Guiño
Código PHP:
#include <amxmodx>
#include <amxmisc>
#include <nvault>
#include <fun>
#include <cstrike>
#include <fakemeta>
#include <fakemeta_util>
#include <hamsandwich>
#include <xs>

#define PLUGIN "[Driss] LevelUp System"
#define VERSION "3.2"
#define AUTHOR "Driss"
#define ACCES ADMIN_LEVEL_C
#pragma tabsize 0

new g_playername[33][32// player's name
new SayTextg_player_name
new g_level[32], g_level_datag_frags_levelg_ScreenFadeg_level_del[33], g_level_bonus
new g_level_maxg_level_numg_level_infog_levels[32], g_h_armorg_h_health
new level_exp[32]
new 
g_level_exp[32], g_exp_datag_Playersnameid[32], h_armor[32], h_health[32]
new 
bool:g_bonus[32], g_trime[32]
new 
sound_level_up[] = { "Level-Exp/level_up.wav"}

const 
PEV_SPEC_TARGET pev_iuser2

enum 
(+= 100)
{
        
TASK_SHOWHUD
}

#define ID_SHOWHUD (taskid - TASK_SHOWHUD)

public plugin_precache()
{
        
precache_soundsound_level_up )
}

public 
plugin_init()
{
    
g_frags_level =         register_cvar("level_frags""2")        // ??????? ????????? ????? ??? ????????? ????. ??????
    
g_level_max  =         register_cvar("level_max""1000000")            // ???????????? ?????
    
    
g_h_armor =         register_cvar("level_h_armor""5")// ??????????? ? ?????? ??????? ???? ?? ? ? ?????
    
g_h_health =         register_cvar("level_h_healh""5")// ??????????? ? ?????? ??????? ???? ?? ? ? ?????
    
g_level_info =         register_cvar("level_info""1")                // ?????????? ???? ? ??????, ????? ?? ??????? ? ??? info <nick>
    
g_level_bonus =         register_cvar("level_bonus_on""0")        // ????? ?? ????? ??????? ?????????? (?? ????????? ???. ?????)
    
g_level_num =         register_cvar("level_number""1")    // ?????? ? ?????? ????? ??????????? ?????  ????????? (???? ???? 1)
    
g_player_name =     register_cvar("player_name""1")        // ?????????? ????, ??? ????????? ???????? ?? ???????

    
    
g_level_data nvault_open("Leveling_Save")
    
g_exp_data nvault_open("Exp_Save")
    
register_clcmd("say","say_info");
    
register_clcmd("say_team","say_info");
    
register_clcmd("levelexp","expa_give"ADMIN_LEVEL_C"use to give Exp")
    
register_clcmd("level_is","level_give"ADMIN_LEVEL_C"use to give Level")
    
SayText get_user_msgid("SayText")
    
g_Players get_maxplayers();
    
register_event("HLTV""Round_Start""a""1=0""2=0")
    
register_event("DeathMsg""Frags_Manager""a""1>0")     
    
register_dictionary("level_system_xp.txt")
    
g_ScreenFade get_user_msgid"ScreenFade" )
    
register_plugin(PLUGINVERSIONAUTHOR)
    
register_event("StatusValue","hide_status","be","1=1","2=0")
          
register_event("StatusValue","show_status","be","1=2","2!0")

}

public 
plugin_natives()
{
    
register_native("level_1""native_level_1"1)
    
register_native("level_exp""native_level_exp"1)
    
register_native("level_exp1""native_level_exp1"1)
}

public 
Round_Start()
{
    for(new 
id=1;id<=g_Players;id++)
    
set_task(3.0"Level"id)
}

public 
Level(id)
{
    if( 
is_user_alive(id) )
    {
        
g_trime[id] = false;
        new 
1;
        while( 
g_level[id] )
        {
            
h_armor[id] = get_pcvar_num(g_h_armor);
            
1
            h_health
[id] = get_pcvar_num(g_h_health);
            
1
            
        
}
                
fm_set_user_armoridget_user_armor(id) + h_armor[id])
                
set_user_health(idget_user_armor(id) + h_health[id])

    }
}

public 
expa_give(idlevelcid)
{
    if (!
cmd_access(idlevelcid2))
    {                
        
console_print(id"? ??? ??? ??????? ? ???????")
        return 
PLUGIN_HANDLED
    
}
    new 
target[32]
    new 
count[32]    
    
    
read_argv(1,target,31)
    
read_argv(2,count,31)
    new 
target_idname[32], nameid[32]
    
target_id find_player("bl"target)
    
get_user_name(target_idnamesizeof name 1
    
get_user_name(idnameidsizeof nameid 1)
    if(!
target_id
    {
        
console_print(id"Can't find that player")
        return 
PLUGIN_HANDLED
    
}
    if(
read_argc() != 3)
    return 
PLUGIN_HANDLED    

    
if(str_to_num(count) < (g_level_exp[target_id] - level_exp[target_id]) )
    {
        if(
str_to_num(count) == 0)
        
console_print(id"Exp Player %s in %i / %i"namelevel_exp[target_id], g_level_exp[target_id])
        else
        {
            
console_print(id"Player %s gives for %i exp, Her Maximum %i"namestr_to_num(count), g_level_exp[target_id])
            
level_exp[target_id] = level_exp[target_id] + str_to_num(count);
        }
        
    }
    else
    {
        
console_print(id"Maximum Exp in player %i"g_level_exp[target_id])
    }
    return 
PLUGIN_HANDLED
}

public 
level_give(idlevelcid)
{
    if (!
cmd_access(idlevelcid2))
    {                
        
console_print(id"? ??? ??? ??????? ? ???????")
        return 
PLUGIN_HANDLED
    
}
    new 
target[32]
    new 
count[32]    
    
    
read_argv(1,target,31)
    
read_argv(2,count,31)
    new 
target_idname[32], level_id
    level_id 
str_to_num(count);
    
target_id find_player("bl"target)
    
get_user_name(target_idnamesizeof name 1
    if(!
target_id
    {
        
console_print(id"Can't find that player")
        return 
PLUGIN_HANDLED
    
}
    if(
read_argc() != 3)
    return 
PLUGIN_HANDLED    

    
if( ((g_level[target_id] + level_id) <=get_pcvar_num(g_level_max)) && (level_id != 0) && ((g_level[target_id] + level_id) > ) )
    {
        if(
level_id 0)
        {
            
g_level[target_id] = g_level[target_id] + level_id;
            
level_exp[target_id] = 0;
            
message_begin(MSG_ONE_UNRELIABLEg_ScreenFade_target_id)
                   
write_short(1<<12// duration
                
write_short(1// hold time
            
write_short(0x0000// fade type
            
write_byte(1// red
            
write_byte(200// green
            
write_byte(0// blue
            
write_byte(205// alpha
            
message_end()
            
emit_sound(target_idCHAN_STREAMsound_level_up1.0ATTN_NORM0PITCH_HIGH )
        }
        else
        {
            
g_level[target_id] = g_level[target_id] + level_id;
            
level_exp[target_id] = 0;
            
message_begin(MSG_ONE_UNRELIABLEg_ScreenFade_target_id)
                   
write_short(1<<12// duration
                
write_short(1// hold time
            
write_short(0x0000// fade type
            
write_byte(200// red
            
write_byte(40// green
            
write_byte(0// blue
            
write_byte(205// alpha
            
message_end()
        }
            
console_print(id"Player %s gives add %i level"namelevel_id)
    }
    else
        
console_print(id"Operation Invalid")
    return 
PLUGIN_HANDLED
}

public 
client_putinserver(id)
{
    
Level_Load(id)
    new 
name[32]
    
g_trime[id] = false;
    
g_bonus[id] = true;
    
nameid[id] = get_user_name(idnamesizeof name 1)
    
get_user_name(idg_playername[id], charsmax(g_playername[]))
    if (!
is_user_bot(id))
    {
        
// Set the custom HUD display task
        
set_task(1.0"ShowHUD"id+TASK_SHOWHUD__"b")
    }
    if(
is_user_alive(id))
    {
        
g_trime[id] = false;
        new 
1;
        while( 
!= g_level[id] )
        {
                  
h_armor[id] = set_user_armor(id,get_pcvar_num(g_h_armor))
            
1;
        }
    }
    if( 
g_level[id] == 0g_level[id] = 1;
    if( 
level_exp[id] == g_level[id] ) level_exp[id] = 0;
    if(
g_level[id] < get_pcvar_num(g_level_num))
    
g_levels[id] = get_pcvar_num(g_level_num);
    else
    {
        if(
g_level[id] != g_levels[id])
        {
            new 
1;
            while( 
g_level[id] > ( get_pcvar_num(g_level_num)) )
            {
                
1;
                
g_levels[id] = get_pcvar_num(g_level_num);
            }
        }
    }
    new 
0;
    while( 
g_level[id] != )
    {
    
1;
    
g_level_exp[id] = get_pcvar_num(g_frags_level);
    }
}

public 
client_disconnect(id)
{
    new 
name[32], player_nick[32]
    
player_nick[id] = get_user_name(idnamesizeof name 1)
    if(
player_nick[id] == nameid[id])
    
Level_Save(id)
    
    
g_trime[id] = false;
}

public 
hide_status(id)
{
        
set_hudmessage(0,0,0,0.0,0.0,00.00.010.00.04)
        
show_hudmessage(id,"")
}
public 
say_info(id)
{
    new 
text[70], arg1[32], target[32], count[32]
    
read_args(textsizeof(text)-1);
    
remove_quotes(text);
    
arg1[0] = '^0';
    
target[0] = '^0';
    
count[0] = '^0';
    
parse(textarg1sizeof(arg1)-1targetsizeof(target)-1countsizeof(count)-1);
    if ( 
equali(arg1"info"4) )
    {
    }
    if ( 
equali(arg1"bonusme"7) && (get_pcvar_num(g_level_info) == 1))
    {
        
bonus_player(id);
    }
    if ( 
equali(arg1"levelexp"7) && (get_pcvar_num(g_level_info) == 1))
    {
        
expa_player(id);
    }
    return 
PLUGIN_CONTINUE;
}

public 
bonus_player(id)
{
    if( (
g_level[id] >= g_levels[id]) && g_bonus[id] && get_pcvar_num(g_level_bonus))
    {
        
g_levels[id] = g_levels[id] * 2;
        
g_level_del[id] = g_level[id];
        
g_bonus[id] = false;
        
ChatColor(id"!g[New-Generation] !tyou have New !g%i !tLevel Good"g_level[id])
        
Level_Save(id)
    }
    else
    {
        if(
g_level[id] < g_levels[id])
        {
            
g_levels[id] = get_pcvar_num(g_level_num);
            
ChatColor(id"!g[New-Generation] !y to Remove a bonus it will be possible only on! g%i Level!t. The bonus makes"g_levels[id])
        }
        else
        {
            new 
1;
            while( 
g_level[id] > ( get_pcvar_num(g_level_num)) )
            {
                
g_levels[id] = get_pcvar_num(g_level_num);
                
1;
            }
            
ChatColor(id"!g[New-Generation] !y to Remove a bonus it will be possible only on! g%i Level!t. The bonus makes"g_levels[id])
        }

        
Level_Save(id)
    }
    return 
PLUGIN_HANDLED
}

public 
expa_player(id)
{
    
ChatColor(id"!g[Master-Serv] %L""LEVEL_EXP"level_exp[id], g_level_exp[id])
    return 
PLUGIN_HANDLED
}

public 
show_status(id)
{
        new 
name[32],pid read_data(2)
        
get_user_name(pid,name,31)
    new 
idAimingiBodyPart
    
static healthstring16 ];
    
AddCommasget_user_healthpid ), healthstring15 );
         
get_user_aiming(ididAimingiBodyPart)
    if(
is_user_alive(idAiming)) 
         {
         if(
cs_get_user_team(id) == cs_get_user_team(idAiming))
         {
       if ((
get_pcvar_num(g_player_name) == 1) )
    {
           
set_hudmessage(153,50,204, -1.00.6020.050.10.0101.0, -1)
           
show_hudmessage(id"%s ^n^n[ Health: %d | Armor: %d ]^n[ Level: %d | Exp: %d/%d ]"name,healthstring,get_user_armor(pid),g_level[pid],level_exp[pid],g_level_exp[pid])
    }
    if(
cs_get_user_team(id) == CS_TEAM_T && cs_get_user_team(idAiming) == CS_TEAM_CT)
     if((
get_pcvar_num(g_player_name) == 1))
    {
         
set_hudmessage(255,0,0,-1.0,0.60,10.013.00.010.01, -1)
         
show_hudmessage(id"%s ^n^n[ Health : %d | Armor: %d ]^n[ Level: %d | Exp: %d/%d ]"name,healthstringget_user_armor(pid), g_level[pid],level_exp[pid],g_level_exp[pid])
    }
}
}
}

public 
ShowHUD(taskid)
{
    static 
id
    id 
ID_SHOWHUD;
              
// Player died?
              
if (!is_user_alive(id))
              {
              
// Get spectating target
             
id pev(idPEV_SPEC_TARGET)
        
             
// Target not alive
             
if (!is_user_alive(id)) return;
             }
             if (
id != ID_SHOWHUD)
             {
        static 
healthstring16 ];
        
AddCommasget_user_healthid ), healthstring15 );
        
set_hudmessage(25510255, -1.00.8000.01.1)
        
show_hudmessage(ID_SHOWHUD,"Spectating: %s^n[ Health: %s | Armor: %d ]^n[ Level : %d | Exp : %d/%d ]",g_playername[id],healthstring,get_user_armor(id), g_level[id], level_exp[id], g_level_exp[id])
             }
             else
             {
        static 
healthstring16 ];
        
AddCommasget_user_healthID_SHOWHUD ), healthstring15 );
        
set_hudmessage(02550, -1.00.9100.01.1)
        
show_hudmessage(ID_SHOWHUD,"[ Health: %s | Armor: %d ]^n[ Level : %d | Exp : %d/%d ]",healthstring,get_user_armor(ID_SHOWHUD),g_level[ID_SHOWHUD], level_exp[ID_SHOWHUD], g_level_exp[ID_SHOWHUD])
        }
}

AddCommasiNum szOutput[] , iLen ){
static 
szTmp15 ] , iOutputPos iNumPos iNumLen;
szTmp[0]='^0',iOutputPos=iNumPos=iNumLen=0;
if ( 
iNum ){
szOutputiOutputPos++ ] = '-';
iNum absiNum );}
iNumLen num_to_striNum szTmp charsmaxszTmp ) );
if ( 
iNumLen <= )iOutputPos += copyszOutputiOutputPos ] , iLen szTmp );
else{
while ( ( 
iNumPos iNumLen ) && ( iOutputPos iLen ) ){
szOutputiOutputPos++ ] = szTmpiNumPos++ ];
if( ( 
iNumLen iNumPos ) && !( ( iNumLen iNumPos ) % ) )szOutputiOutputPos++ ] = ',';
}
szOutputiOutputPos ] = EOS;
}return 
iOutputPos;}

public 
Level_Save(id)
{
    new 
key[64], data[256], data_exp[256], key_exp[64]
    new 
name[33];
    
get_user_name(id,name,32)

    
format(key63"%s-/"name)
    
format(data255"%i#"g_level[id])

    
format(key_exp63"%s-/"name)
    
format(data_exp255"%i#"level_exp[id])

    
nvault_set(g_level_datakeydata)
    
nvault_set(g_exp_datakey_expdata_exp)
    return 
PLUGIN_CONTINUE;
}

public 
Level_Load(id)
{
    new 
key[64], data[256], data_exp[256], key_exp[64]
    new 
name[33];
    
get_user_name(id,name,32)

    
format(key63"%s-/"name)
    
format(data255"%i#"g_level[id])

    
format(key_exp63"%s-/"name)
    
format(data_exp255"%i#"level_exp[id])

    
nvault_get(g_level_datakeydata255)
    
nvault_get(g_exp_datakey_expdata_exp255)
    
replace_all(data255"#"" ")
    
replace_all(data_exp255"#"" ")

    new 
givelevel[32], give_exp[32]
    
parse(datagivelevel31)
    
parse(data_expgive_exp31)
    
g_level[id] = str_to_num(givelevel)
    
level_exp[id] = str_to_num(give_exp)

    return 
PLUGIN_CONTINUE;
}

public 
Frags_Manager()
{
    new 
aname[32], attackerattacker read_data(1)
    new 
y1;
    
get_user_name(attackeranamesizeof aname 1)
    if( ( 
level_exp[attacker] >= (g_level_exp[attacker] - 1) ) && (g_level[attacker] <= get_pcvar_num(g_level_max)) && is_user_alive(attacker) )
    {
        
g_bonus[attacker] = true;
        
g_level[attacker] = g_level[attacker] + 1;
        
level_exp[attacker] = 0;
        while( 
g_level[attacker] != )
        {
            
1;
            
g_level_exp[attacker] = get_pcvar_num(g_frags_level);
        }
        
message_begin(MSG_ONE_UNRELIABLEg_ScreenFade_attacker)
             
write_short(1<<12// duration
             
write_short(1// hold time
        
write_short(0x0000// fade type
        
write_byte(1// red
        
write_byte(200// green
        
write_byte(0// blue
        
write_byte(205// alpha
        
message_end()
        
emit_sound(attackerCHAN_STREAMsound_level_up1.0ATTN_NORM0PITCH_HIGH )
        
set_hudmessage(020000.650.500.03.02.01.0, -1)
        
show_hudmessage(0"%L""LEVEL_UP"anameg_level[attacker])

        
Level_Save(attacker);
    }
    else
    {

        if(
g_level[attacker] == get_pcvar_num(g_level_max))
        
ChatColor(attacker"!g[Master-Serv]!y %L""LEVEL_MAX"g_level[attacker] )
        
level_exp[attacker] = level_exp[attacker] + 1;
        
Level_Save(attacker);
    }
}
stock ChatColor(const id, const input[], any:...)
{
    new 
count 1players[32]
    static 
msg[191]
    
vformat(msg190input3)

    
replace_all(msg190"!g""^4"// Green Color
    
replace_all(msg190"!y""^1"// Default Color
    
replace_all(msg190"!t""^3"// Team Color
    
replace_all(msg190"!t2""^0"// Team2 Color

    
if (idplayers[0] = id; else get_players(playerscount"ch")
    {
        for (new 
0counti++)
        {
            if (
is_user_connected(players[i]))
            {
                
message_begin(MSG_ONE_UNRELIABLESayText_players[i])
                
write_byte(players[i]);
                
write_string(msg);
                
message_end();
            }
        }
    }
}
public 
native_level_1(id)
{
    return 
g_level[id];
}
public 
native_level_exp(id)
{
    return 
level_exp[id];
}
public 
native_level_exp1(id)
{
    return 
g_level_exp[id];

Gracias si me sirvio Excitedeyes

(11/11/2018, 12:09 AM)Alejandro escribió: Prueba y me avisas Guiño
Código PHP:
#include <amxmodx>
#include <amxmisc>
#include <nvault>
#include <fun>
#include <cstrike>
#include <fakemeta>
#include <fakemeta_util>
#include <hamsandwich>
#include <xs>

#define PLUGIN "[Driss] LevelUp System"
#define VERSION "3.2"
#define AUTHOR "Driss"
#define ACCES ADMIN_LEVEL_C
#pragma tabsize 0

new g_playername[33][32// player's name
new SayTextg_player_name
new g_level[32], g_level_datag_frags_levelg_ScreenFadeg_level_del[33], g_level_bonus
new g_level_maxg_level_numg_level_infog_levels[32], g_h_armorg_h_health
new level_exp[32]
new 
g_level_exp[32], g_exp_datag_Playersnameid[32], h_armor[32], h_health[32]
new 
bool:g_bonus[32], g_trime[32]
new 
sound_level_up[] = { "Level-Exp/level_up.wav"}

const 
PEV_SPEC_TARGET pev_iuser2

enum 
(+= 100)
{
        
TASK_SHOWHUD
}

#define ID_SHOWHUD (taskid - TASK_SHOWHUD)

public plugin_precache()
{
        
precache_soundsound_level_up )
}

public 
plugin_init()
{
    
g_frags_level =         register_cvar("level_frags""2")        // ??????? ????????? ????? ??? ????????? ????. ??????
    
g_level_max  =         register_cvar("level_max""1000000")            // ???????????? ?????
    
    
g_h_armor =         register_cvar("level_h_armor""5")// ??????????? ? ?????? ??????? ???? ?? ? ? ?????
    
g_h_health =         register_cvar("level_h_healh""5")// ??????????? ? ?????? ??????? ???? ?? ? ? ?????
    
g_level_info =         register_cvar("level_info""1")                // ?????????? ???? ? ??????, ????? ?? ??????? ? ??? info <nick>
    
g_level_bonus =         register_cvar("level_bonus_on""0")        // ????? ?? ????? ??????? ?????????? (?? ????????? ???. ?????)
    
g_level_num =         register_cvar("level_number""1")    // ?????? ? ?????? ????? ??????????? ?????  ????????? (???? ???? 1)
    
g_player_name =     register_cvar("player_name""1")        // ?????????? ????, ??? ????????? ???????? ?? ???????

    
    
g_level_data nvault_open("Leveling_Save")
    
g_exp_data nvault_open("Exp_Save")
    
register_clcmd("say","say_info");
    
register_clcmd("say_team","say_info");
    
register_clcmd("levelexp","expa_give"ADMIN_LEVEL_C"use to give Exp")
    
register_clcmd("level_is","level_give"ADMIN_LEVEL_C"use to give Level")
    
SayText get_user_msgid("SayText")
    
g_Players get_maxplayers();
    
register_event("HLTV""Round_Start""a""1=0""2=0")
    
register_event("DeathMsg""Frags_Manager""a""1>0")     
    
register_dictionary("level_system_xp.txt")
    
g_ScreenFade get_user_msgid"ScreenFade" )
    
register_plugin(PLUGINVERSIONAUTHOR)
    
register_event("StatusValue","hide_status","be","1=1","2=0")
          
register_event("StatusValue","show_status","be","1=2","2!0")

}

public 
plugin_natives()
{
    
register_native("level_1""native_level_1"1)
    
register_native("level_exp""native_level_exp"1)
    
register_native("level_exp1""native_level_exp1"1)
}

public 
Round_Start()
{
    for(new 
id=1;id<=g_Players;id++)
    
set_task(3.0"Level"id)
}

public 
Level(id)
{
    if( 
is_user_alive(id) )
    {
        
g_trime[id] = false;
        new 
1;
        while( 
g_level[id] )
        {
            
h_armor[id] = get_pcvar_num(g_h_armor);
            
1
            h_health
[id] = get_pcvar_num(g_h_health);
            
1
            
        
}
                
fm_set_user_armoridget_user_armor(id) + h_armor[id])
                
set_user_health(idget_user_armor(id) + h_health[id])

    }
}

public 
expa_give(idlevelcid)
{
    if (!
cmd_access(idlevelcid2))
    {                
        
console_print(id"? ??? ??? ??????? ? ???????")
        return 
PLUGIN_HANDLED
    
}
    new 
target[32]
    new 
count[32]    
    
    
read_argv(1,target,31)
    
read_argv(2,count,31)
    new 
target_idname[32], nameid[32]
    
target_id find_player("bl"target)
    
get_user_name(target_idnamesizeof name 1
    
get_user_name(idnameidsizeof nameid 1)
    if(!
target_id
    {
        
console_print(id"Can't find that player")
        return 
PLUGIN_HANDLED
    
}
    if(
read_argc() != 3)
    return 
PLUGIN_HANDLED    

    
if(str_to_num(count) < (g_level_exp[target_id] - level_exp[target_id]) )
    {
        if(
str_to_num(count) == 0)
        
console_print(id"Exp Player %s in %i / %i"namelevel_exp[target_id], g_level_exp[target_id])
        else
        {
            
console_print(id"Player %s gives for %i exp, Her Maximum %i"namestr_to_num(count), g_level_exp[target_id])
            
level_exp[target_id] = level_exp[target_id] + str_to_num(count);
        }
        
    }
    else
    {
        
console_print(id"Maximum Exp in player %i"g_level_exp[target_id])
    }
    return 
PLUGIN_HANDLED
}

public 
level_give(idlevelcid)
{
    if (!
cmd_access(idlevelcid2))
    {                
        
console_print(id"? ??? ??? ??????? ? ???????")
        return 
PLUGIN_HANDLED
    
}
    new 
target[32]
    new 
count[32]    
    
    
read_argv(1,target,31)
    
read_argv(2,count,31)
    new 
target_idname[32], level_id
    level_id 
str_to_num(count);
    
target_id find_player("bl"target)
    
get_user_name(target_idnamesizeof name 1
    if(!
target_id
    {
        
console_print(id"Can't find that player")
        return 
PLUGIN_HANDLED
    
}
    if(
read_argc() != 3)
    return 
PLUGIN_HANDLED    

    
if( ((g_level[target_id] + level_id) <=get_pcvar_num(g_level_max)) && (level_id != 0) && ((g_level[target_id] + level_id) > ) )
    {
        if(
level_id 0)
        {
            
g_level[target_id] = g_level[target_id] + level_id;
            
level_exp[target_id] = 0;
            
message_begin(MSG_ONE_UNRELIABLEg_ScreenFade_target_id)
                   
write_short(1<<12// duration
                
write_short(1// hold time
            
write_short(0x0000// fade type
            
write_byte(1// red
            
write_byte(200// green
            
write_byte(0// blue
            
write_byte(205// alpha
            
message_end()
            
emit_sound(target_idCHAN_STREAMsound_level_up1.0ATTN_NORM0PITCH_HIGH )
        }
        else
        {
            
g_level[target_id] = g_level[target_id] + level_id;
            
level_exp[target_id] = 0;
            
message_begin(MSG_ONE_UNRELIABLEg_ScreenFade_target_id)
                   
write_short(1<<12// duration
                
write_short(1// hold time
            
write_short(0x0000// fade type
            
write_byte(200// red
            
write_byte(40// green
            
write_byte(0// blue
            
write_byte(205// alpha
            
message_end()
        }
            
console_print(id"Player %s gives add %i level"namelevel_id)
    }
    else
        
console_print(id"Operation Invalid")
    return 
PLUGIN_HANDLED
}

public 
client_putinserver(id)
{
    
Level_Load(id)
    new 
name[32]
    
g_trime[id] = false;
    
g_bonus[id] = true;
    
nameid[id] = get_user_name(idnamesizeof name 1)
    
get_user_name(idg_playername[id], charsmax(g_playername[]))
    if (!
is_user_bot(id))
    {
        
// Set the custom HUD display task
        
set_task(1.0"ShowHUD"id+TASK_SHOWHUD__"b")
    }
    if(
is_user_alive(id))
    {
        
g_trime[id] = false;
        new 
1;
        while( 
!= g_level[id] )
        {
                  
h_armor[id] = set_user_armor(id,get_pcvar_num(g_h_armor))
            
1;
        }
    }
    if( 
g_level[id] == 0g_level[id] = 1;
    if( 
level_exp[id] == g_level[id] ) level_exp[id] = 0;
    if(
g_level[id] < get_pcvar_num(g_level_num))
    
g_levels[id] = get_pcvar_num(g_level_num);
    else
    {
        if(
g_level[id] != g_levels[id])
        {
            new 
1;
            while( 
g_level[id] > ( get_pcvar_num(g_level_num)) )
            {
                
1;
                
g_levels[id] = get_pcvar_num(g_level_num);
            }
        }
    }
    new 
0;
    while( 
g_level[id] != )
    {
    
1;
    
g_level_exp[id] = get_pcvar_num(g_frags_level);
    }
}

public 
client_disconnect(id)
{
    new 
name[32], player_nick[32]
    
player_nick[id] = get_user_name(idnamesizeof name 1)
    if(
player_nick[id] == nameid[id])
    
Level_Save(id)
    
    
g_trime[id] = false;
}

public 
hide_status(id)
{
        
set_hudmessage(0,0,0,0.0,0.0,00.00.010.00.04)
        
show_hudmessage(id,"")
}
public 
say_info(id)
{
    new 
text[70], arg1[32], target[32], count[32]
    
read_args(textsizeof(text)-1);
    
remove_quotes(text);
    
arg1[0] = '^0';
    
target[0] = '^0';
    
count[0] = '^0';
    
parse(textarg1sizeof(arg1)-1targetsizeof(target)-1countsizeof(count)-1);
    if ( 
equali(arg1"info"4) )
    {
    }
    if ( 
equali(arg1"bonusme"7) && (get_pcvar_num(g_level_info) == 1))
    {
        
bonus_player(id);
    }
    if ( 
equali(arg1"levelexp"7) && (get_pcvar_num(g_level_info) == 1))
    {
        
expa_player(id);
    }
    return 
PLUGIN_CONTINUE;
}

public 
bonus_player(id)
{
    if( (
g_level[id] >= g_levels[id]) && g_bonus[id] && get_pcvar_num(g_level_bonus))
    {
        
g_levels[id] = g_levels[id] * 2;
        
g_level_del[id] = g_level[id];
        
g_bonus[id] = false;
        
ChatColor(id"!g[New-Generation] !tyou have New !g%i !tLevel Good"g_level[id])
        
Level_Save(id)
    }
    else
    {
        if(
g_level[id] < g_levels[id])
        {
            
g_levels[id] = get_pcvar_num(g_level_num);
            
ChatColor(id"!g[New-Generation] !y to Remove a bonus it will be possible only on! g%i Level!t. The bonus makes"g_levels[id])
        }
        else
        {
            new 
1;
            while( 
g_level[id] > ( get_pcvar_num(g_level_num)) )
            {
                
g_levels[id] = get_pcvar_num(g_level_num);
                
1;
            }
            
ChatColor(id"!g[New-Generation] !y to Remove a bonus it will be possible only on! g%i Level!t. The bonus makes"g_levels[id])
        }

        
Level_Save(id)
    }
    return 
PLUGIN_HANDLED
}

public 
expa_player(id)
{
    
ChatColor(id"!g[Master-Serv] %L""LEVEL_EXP"level_exp[id], g_level_exp[id])
    return 
PLUGIN_HANDLED
}

public 
show_status(id)
{
        new 
name[32],pid read_data(2)
        
get_user_name(pid,name,31)
    new 
idAimingiBodyPart
    
static healthstring16 ];
    
AddCommasget_user_healthpid ), healthstring15 );
         
get_user_aiming(ididAimingiBodyPart)
    if(
is_user_alive(idAiming)) 
         {
         if(
cs_get_user_team(id) == cs_get_user_team(idAiming))
         {
       if ((
get_pcvar_num(g_player_name) == 1) )
    {
           
set_hudmessage(153,50,204, -1.00.6020.050.10.0101.0, -1)
           
show_hudmessage(id"%s ^n^n[ Health: %d | Armor: %d ]^n[ Level: %d | Exp: %d/%d ]"name,healthstring,get_user_armor(pid),g_level[pid],level_exp[pid],g_level_exp[pid])
    }
    if(
cs_get_user_team(id) == CS_TEAM_T && cs_get_user_team(idAiming) == CS_TEAM_CT)
     if((
get_pcvar_num(g_player_name) == 1))
    {
         
set_hudmessage(255,0,0,-1.0,0.60,10.013.00.010.01, -1)
         
show_hudmessage(id"%s ^n^n[ Health : %d | Armor: %d ]^n[ Level: %d | Exp: %d/%d ]"name,healthstringget_user_armor(pid), g_level[pid],level_exp[pid],g_level_exp[pid])
    }
}
}
}

public 
ShowHUD(taskid)
{
    static 
id
    id 
ID_SHOWHUD;
              
// Player died?
              
if (!is_user_alive(id))
              {
              
// Get spectating target
             
id pev(idPEV_SPEC_TARGET)
        
             
// Target not alive
             
if (!is_user_alive(id)) return;
             }
             if (
id != ID_SHOWHUD)
             {
        static 
healthstring16 ];
        
AddCommasget_user_healthid ), healthstring15 );
        
set_hudmessage(25510255, -1.00.8000.01.1)
        
show_hudmessage(ID_SHOWHUD,"Spectating: %s^n[ Health: %s | Armor: %d ]^n[ Level : %d | Exp : %d/%d ]",g_playername[id],healthstring,get_user_armor(id), g_level[id], level_exp[id], g_level_exp[id])
             }
             else
             {
        static 
healthstring16 ];
        
AddCommasget_user_healthID_SHOWHUD ), healthstring15 );
        
set_hudmessage(02550, -1.00.9100.01.1)
        
show_hudmessage(ID_SHOWHUD,"[ Health: %s | Armor: %d ]^n[ Level : %d | Exp : %d/%d ]",healthstring,get_user_armor(ID_SHOWHUD),g_level[ID_SHOWHUD], level_exp[ID_SHOWHUD], g_level_exp[ID_SHOWHUD])
        }
}

AddCommasiNum szOutput[] , iLen ){
static 
szTmp15 ] , iOutputPos iNumPos iNumLen;
szTmp[0]='^0',iOutputPos=iNumPos=iNumLen=0;
if ( 
iNum ){
szOutputiOutputPos++ ] = '-';
iNum absiNum );}
iNumLen num_to_striNum szTmp charsmaxszTmp ) );
if ( 
iNumLen <= )iOutputPos += copyszOutputiOutputPos ] , iLen szTmp );
else{
while ( ( 
iNumPos iNumLen ) && ( iOutputPos iLen ) ){
szOutputiOutputPos++ ] = szTmpiNumPos++ ];
if( ( 
iNumLen iNumPos ) && !( ( iNumLen iNumPos ) % ) )szOutputiOutputPos++ ] = ',';
}
szOutputiOutputPos ] = EOS;
}return 
iOutputPos;}

public 
Level_Save(id)
{
    new 
key[64], data[256], data_exp[256], key_exp[64]
    new 
name[33];
    
get_user_name(id,name,32)

    
format(key63"%s-/"name)
    
format(data255"%i#"g_level[id])

    
format(key_exp63"%s-/"name)
    
format(data_exp255"%i#"level_exp[id])

    
nvault_set(g_level_datakeydata)
    
nvault_set(g_exp_datakey_expdata_exp)
    return 
PLUGIN_CONTINUE;
}

public 
Level_Load(id)
{
    new 
key[64], data[256], data_exp[256], key_exp[64]
    new 
name[33];
    
get_user_name(id,name,32)

    
format(key63"%s-/"name)
    
format(data255"%i#"g_level[id])

    
format(key_exp63"%s-/"name)
    
format(data_exp255"%i#"level_exp[id])

    
nvault_get(g_level_datakeydata255)
    
nvault_get(g_exp_datakey_expdata_exp255)
    
replace_all(data255"#"" ")
    
replace_all(data_exp255"#"" ")

    new 
givelevel[32], give_exp[32]
    
parse(datagivelevel31)
    
parse(data_expgive_exp31)
    
g_level[id] = str_to_num(givelevel)
    
level_exp[id] = str_to_num(give_exp)

    return 
PLUGIN_CONTINUE;
}

public 
Frags_Manager()
{
    new 
aname[32], attackerattacker read_data(1)
    new 
y1;
    
get_user_name(attackeranamesizeof aname 1)
    if( ( 
level_exp[attacker] >= (g_level_exp[attacker] - 1) ) && (g_level[attacker] <= get_pcvar_num(g_level_max)) && is_user_alive(attacker) )
    {
        
g_bonus[attacker] = true;
        
g_level[attacker] = g_level[attacker] + 1;
        
level_exp[attacker] = 0;
        while( 
g_level[attacker] != )
        {
            
1;
            
g_level_exp[attacker] = get_pcvar_num(g_frags_level);
        }
        
message_begin(MSG_ONE_UNRELIABLEg_ScreenFade_attacker)
             
write_short(1<<12// duration
             
write_short(1// hold time
        
write_short(0x0000// fade type
        
write_byte(1// red
        
write_byte(200// green
        
write_byte(0// blue
        
write_byte(205// alpha
        
message_end()
        
emit_sound(attackerCHAN_STREAMsound_level_up1.0ATTN_NORM0PITCH_HIGH )
        
set_hudmessage(020000.650.500.03.02.01.0, -1)
        
show_hudmessage(0"%L""LEVEL_UP"anameg_level[attacker])

        
Level_Save(attacker);
    }
    else
    {

        if(
g_level[attacker] == get_pcvar_num(g_level_max))
        
ChatColor(attacker"!g[Master-Serv]!y %L""LEVEL_MAX"g_level[attacker] )
        
level_exp[attacker] = level_exp[attacker] + 1;
        
Level_Save(attacker);
    }
}
stock ChatColor(const id, const input[], any:...)
{
    new 
count 1players[32]
    static 
msg[191]
    
vformat(msg190input3)

    
replace_all(msg190"!g""^4"// Green Color
    
replace_all(msg190"!y""^1"// Default Color
    
replace_all(msg190"!t""^3"// Team Color
    
replace_all(msg190"!t2""^0"// Team2 Color

    
if (idplayers[0] = id; else get_players(playerscount"ch")
    {
        for (new 
0counti++)
        {
            if (
is_user_connected(players[i]))
            {
                
message_begin(MSG_ONE_UNRELIABLESayText_players[i])
                
write_byte(players[i]);
                
write_string(msg);
                
message_end();
            }
        }
    }
}
public 
native_level_1(id)
{
    return 
g_level[id];
}
public 
native_level_exp(id)
{
    return 
level_exp[id];
}
public 
native_level_exp1(id)
{
    return 
g_level_exp[id];

Gracias si me sirvio Excitedeyes
Responder


Salto de foro:


Usuarios navegando en este tema: 1 invitado(s)