Enviar respuesta 
Sistema De Rangos CTF (Solucionado)
Autor Mensaje
IKARI Sin conexión
Miembro Junior


Mensajes: 26
Registro en: May 2019
Reputación: 0
Mensaje: #1
Sistema De Rangos CTF (Solucionado)
Buenas noches chicos quisiera saber si alguien me puede decir cuanto me cobran por hacer unos rangos a si como estos solo que la diferencia es que el HUD Del mensaje este abajo en el centro donde esta el tiempo y no hay donde esta quisiera que tenga todo lo que sale en la imagen Gracias y buenas noches. Rainbow

Image

El tiempo es eterno pero la vida no ! Whatever
(Este mensaje fue modificado por última vez en: 22/05/2019 12:44 PM por IKARI.)
21/05/2019 10:53 PM
Encuentra todos sus mensajes Cita este mensaje en tu respuesta
Nelo Sin conexión
Miembro Destacado


Mensajes: 829
Registro en: May 2015
Reputación: 7
Mensaje: #2
RE: Sistema De Rangos CTF
no creo que te cobren por cambiar el hud de lugar, que sistema de rangos usas ? asi veo si te puedo ayudar

21/05/2019 11:44 PM
Encuentra todos sus mensajes Cita este mensaje en tu respuesta
Alejandro Sin conexión
Miembro Sr.


Trebol purpura
Mensajes: 502
Registro en: Feb 2016
Reputación: 8
Mensaje: #3
RE: Sistema De Rangos CTF
Si quieres un sistema de rangos completo, puedes venir al mp.

22/05/2019 12:16 AM
Visita su sitio web Encuentra todos sus mensajes Cita este mensaje en tu respuesta
IKARI Sin conexión
Miembro Junior


Mensajes: 26
Registro en: May 2019
Reputación: 0
Mensaje: #4
RE: Sistema De Rangos CTF
(21/05/2019 10:53 PM)IKARI escribió:  Buenas noches chicos quisiera saber si alguien me puede decir cuanto me cobran por hacer unos rangos a si como estos solo que la diferencia es que el HUD Del mensaje este abajo en el centro donde esta el tiempo y no hay donde esta quisiera que tenga todo lo que sale en la imagen Gracias y buenas noches. Rainbow

Image


Yo uso estos rangos lo que quiero es que esten como los de la foto y agg lo que dice adrenalina para que tambien salga y colocarlos abajo en el medio donde sale el tiempo

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[] = "Rangos CS:GO"
#define VERSION "1.0"
new const AUTHOR[] = "AlberthXD"

/* =============================================
|= [EMPIEZA SECCION MODIFICABLE] =|
==============================================*/
/* ====================================
*[CONSTANTES]*
=====================================*/ 
new const Web[] = "AMXMODX-ES.COM"  // Se Muestra en HUD
new const Prefijo[] = "!g[RANGOS]!y" // Prefijo en say
new const Sonido[] = "rango/up.wav" // Sonido Rango UP
/* ====================================
*[CONST NOMBRES DE RANGOS]*
=====================================*/
enum _:DATA
{
    
NOMBRE[30],
    
FRAGS
}
new const 
Rangos[][DATA] = {
    { 
"Sin Rango"100 },
    { 
"Silver I"200 },
    { 
"Silver II"300 },
    { 
"Silver III"500 },
    { 
"Silver IV"700 },
    { 
"Silver Elite"800 },
    { 
"Silver Elite Master"900 },
    { 
"Gold Nova I"1000 },
    { 
"Gold Nova II"1200 },
    { 
"Gold Nova III"1300 },
    { 
"Gold Nova Master"1400 },
    { 
"Master Guardian I",1500 },
    { 
"Master Guardian II"1700 },
    { 
"Master Guardian Elite"1800 },
    { 
"Distinguished Master Guardian"1900 },
    { 
"Legendary Eagle"2000 },
    { 
"Legendary Eagle Master"2100 },
    { 
"Supreme Master First Class"2200 },
    { 
"The Global Elite"2500 }
}

/* =============================================
|= [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_knifex2cvar_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(2552552550.600.6716.01.0)
        
ShowSyncHudMsg(ID_HUDSyncHUD"Frags: %d  ||  Rango: %s"g_frags[id], Rangos[g_rango[id]][NOMBRE])
    } else {
        
set_hudmessage(025500.00.2016.01.0)
        
ShowSyncHudMsg(ID_HUDSyncHUD"=======================^nFrags: %d^nRango: %s^n=======================^nSig. Rango: %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)
    new 
weaponid get_user_weapon(attacker)
    
    if(
victim == attacker) return;
    
    if(
is_user_alive(attacker)) {
        
g_frags[attacker]++
        
        if(
get_pcvar_num(cvar_knifex2)) {
            if(
weaponid == CSW_KNIFE
                
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 Felicidades subiste al rango: !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 "[Muerto]"
    
}

    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), "^x01%s [ %s ] ^x04%s ^x03%s ^x04: %s"aliveplayerTeamRangos[g_rango[id]], namesaid)
    } else {
        
format(saidcharsmax(said), "^x01%s [ %s ] ^04%s ^x03%s ^x01: %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;


(21/05/2019 11:44 PM)Nelo escribió:  no creo que te cobren por cambiar el hud de lugar, que sistema de rangos usas ? asi veo si te puedo ayudar

Yo uso estos rangos lo que quiero es que esten como los de la foto y agg lo que dice adrenalina para que tambien salga y colocarlos abajo en el medio donde sale el tiempo

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[] = "Rangos CS:GO"
#define VERSION "1.0"
new const AUTHOR[] = "AlberthXD"

/* =============================================
|= [EMPIEZA SECCION MODIFICABLE] =|
==============================================*/
/* ====================================
*[CONSTANTES]*
=====================================*/ 
new const Web[] = "AMXMODX-ES.COM"  // Se Muestra en HUD
new const Prefijo[] = "!g[RANGOS]!y" // Prefijo en say
new const Sonido[] = "rango/up.wav" // Sonido Rango UP
/* ====================================
*[CONST NOMBRES DE RANGOS]*
=====================================*/
enum _:DATA
{
    
NOMBRE[30],
    
FRAGS
}
new const 
Rangos[][DATA] = {
    { 
"Sin Rango"100 },
    { 
"Silver I"200 },
    { 
"Silver II"300 },
    { 
"Silver III"500 },
    { 
"Silver IV"700 },
    { 
"Silver Elite"800 },
    { 
"Silver Elite Master"900 },
    { 
"Gold Nova I"1000 },
    { 
"Gold Nova II"1200 },
    { 
"Gold Nova III"1300 },
    { 
"Gold Nova Master"1400 },
    { 
"Master Guardian I",1500 },
    { 
"Master Guardian II"1700 },
    { 
"Master Guardian Elite"1800 },
    { 
"Distinguished Master Guardian"1900 },
    { 
"Legendary Eagle"2000 },
    { 
"Legendary Eagle Master"2100 },
    { 
"Supreme Master First Class"2200 },
    { 
"The Global Elite"2500 }
}

/* =============================================
|= [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_knifex2cvar_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(2552552550.600.6716.01.0)
        
ShowSyncHudMsg(ID_HUDSyncHUD"Frags: %d  ||  Rango: %s"g_frags[id], Rangos[g_rango[id]][NOMBRE])
    } else {
        
set_hudmessage(025500.00.2016.01.0)
        
ShowSyncHudMsg(ID_HUDSyncHUD"=======================^nFrags: %d^nRango: %s^n=======================^nSig. Rango: %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)
    new 
weaponid get_user_weapon(attacker)
    
    if(
victim == attacker) return;
    
    if(
is_user_alive(attacker)) {
        
g_frags[attacker]++
        
        if(
get_pcvar_num(cvar_knifex2)) {
            if(
weaponid == CSW_KNIFE
                
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 Felicidades subiste al rango: !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 "[Muerto]"
    
}

    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), "^x01%s [ %s ] ^x04%s ^x03%s ^x04: %s"aliveplayerTeamRangos[g_rango[id]], namesaid)
    } else {
        
format(saidcharsmax(said), "^x01%s [ %s ] ^04%s ^x03%s ^x01: %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;


El tiempo es eterno pero la vida no ! Whatever
(Este mensaje fue modificado por última vez en: 22/05/2019 03:53 AM por IKARI.)
22/05/2019 03:46 AM
Encuentra todos sus mensajes Cita este mensaje en tu respuesta
kikizon2 Sin conexión
Miembro Héroe


Plugin developer Donador Regalo Beta Tester Trebol purpura 1k Plugin popular
Mensajes: 3,800
Registro en: Jan 2014
Reputación: 64
Mensaje: #5
RE: Sistema De Rangos CTF
Usa la nueva versión de mis rangos, es solo cambiar un par de números para cambiar la pocision


NO DOY AYUDA VIA MENSAJE PRIVADO

* Si requieres algún servicio de pago puedes contactarme vía MP o en mi facebook

(23/09/2019 05:39 PM)Santax escribió:  Jjkajkjkaajk Nesecito Aiuda,Pinches Niños Ratas De Hoy En Dia Ya Ni Respetan.
22/05/2019 04:38 AM
Encuentra todos sus mensajes Cita este mensaje en tu respuesta
IKARI Sin conexión
Miembro Junior


Mensajes: 26
Registro en: May 2019
Reputación: 0
Mensaje: #6
RE: Sistema De Rangos CTF
(22/05/2019 04:38 AM)kikizon2 escribió:  Usa la nueva versión de mis rangos, es solo cambiar un par de números para cambiar la pocision

Me caes mal Insecure Deja de ser tan malo, osea yo no se nada de programación como tu como dices que es solo de cambiar un par de numero es fácil para ti tu eres programador de mucho tiempo en esto yo no de cosa y se instalar un plugin ademas quiero agg la adrenalina como sale hay en la foto y es algo que menos se hacer pero bueno intentare echando a perder se aprende Whatdone

El tiempo es eterno pero la vida no ! Whatever
22/05/2019 05:06 AM
Encuentra todos sus mensajes Cita este mensaje en tu respuesta
totopizza Sin conexión
http://www.MexicanServers.com


Donador Forum supporter Trebol verde Trebol de oro 1k
Mensajes: 2,101
Registro en: Mar 2014
Reputación: 40
Mensaje: #7
RE: Sistema De Rangos CTF
(22/05/2019 05:06 AM)IKARI escribió:  
(22/05/2019 04:38 AM)kikizon2 escribió:  Usa la nueva versión de mis rangos, es solo cambiar un par de números para cambiar la pocision

Me caes mal Insecure Deja de ser tan malo, osea yo no se nada de programación como tu como dices que es solo de cambiar un par de numero es fácil para ti tu eres programador de mucho tiempo en esto yo no de cosa y se instalar un plugin ademas quiero agg la adrenalina como sale hay en la foto y es algo que menos se hacer pero bueno intentare echando a perder se aprende Whatdone

https://amxmodx-es.com/Thread-Rangos-CS-GO Oh god why

Image

Estudia siempre; el tiempo es oro, lo material se puede recuperar pero el tiempo no se puede recuperar.
(02/10/2016 05:05 PM)meTaLiCroSS escribió:  Siempre me gusta ayudar cuando alguien esta interesado realmente en ver que esta programando.
(08/08/2019 05:32 PM)meTaLiCroSS escribió:  grax x el dato cr4ck


Mis aportes

PLUGINS
MAPAS
Menú LANG [SF] Sistema de Frags
Say System (Admin Prefix)
22/05/2019 05:47 AM
Visita su sitio web Encuentra todos sus mensajes Cita este mensaje en tu respuesta
IKARI Sin conexión
Miembro Junior


Mensajes: 26
Registro en: May 2019
Reputación: 0
Mensaje: #8
RE: Sistema De Rangos CTF
(22/05/2019 05:47 AM)totopizza escribió:  
(22/05/2019 05:06 AM)IKARI escribió:  
(22/05/2019 04:38 AM)kikizon2 escribió:  Usa la nueva versión de mis rangos, es solo cambiar un par de números para cambiar la pocision

Me caes mal Insecure Deja de ser tan malo, osea yo no se nada de programación como tu como dices que es solo de cambiar un par de numero es fácil para ti tu eres programador de mucho tiempo en esto yo no de cosa y se instalar un plugin ademas quiero agg la adrenalina como sale hay en la foto y es algo que menos se hacer pero bueno intentare echando a perder se aprende Whatdone

https://amxmodx-es.com/Thread-Rangos-CS-GO Oh god why

Listo ya logre lo que queria lo que falta es como ago que salga en esos rangos la adrenalina y el top ?

Código PHP:
/*

ChangeLog:

1.0 = Version inicial
2.0 = 
    * Correccion de errores
    * Cambio deathmsg por ham killed
    * Reescritura parcial de codigo
    * Soporte AMX 1.8.2 hasta 1.9.0
    * Cvar para activar/desactivar la modificacion del chat

*/

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


#if AMXX_VERSION_NUM < 183
    #define client_disconnected client_disconnect

    #define print_team_default 0

    
stock client_print_color(indexfakevar, const input[], any:...)
    {
        
#pragma unused fakevar
        
static szMsg[191], g_iMsgSayText;
        if(!
g_iMsgSayTextg_iMsgSayText get_user_msgid("SayText");

        
vformat(szMsg190input3);

        
message_begin(index MSG_ONE_UNRELIABLE MSG_BROADCASTg_iMsgSayText, .player index);
        
write_byte(index index 33);
        
write_string(szMsg);
        
message_end();
    }
#endif


#define VERSION "2.0"

new const Web[] = "Kikizon";      // Se Muestra en HUD
new const Prefijo[] = "^4[CS:GO] ^1";     // Prefijo en say
new const Sonido[] = "rango/up.wav";    // Sonido Rango UP
new const DataBase[] = "csgoranks";        // Nombre de la base de datos
new const DB_key[] = "data_rangos";        // Llave de acceso db
new const CHAT_FLAG ADMIN_KICK;        // Acceso requerido para el chat de admins

enum _:DATA
{
    
NOMBRE[30],
    
FRAGS
}

new const 
Rangos[][DATA] =
{
    { 
"Sin Rango"100 },
    { 
"Silver I"200 },
    { 
"Silver II"300 },
    { 
"Silver III"500 },
    { 
"Silver IV"700 },
    { 
"Silver Elite"800 },
    { 
"Silver Elite Master"900 },
    { 
"Gold Nova I"1000 },
    { 
"Gold Nova II"1200 },
    { 
"Gold Nova III"1300 },
    { 
"Gold Nova Master"1400 },
    { 
"Master Guardian I",1500 },
    { 
"Master Guardian II"1700 },
    { 
"Master Guardian Elite"1800 },
    { 
"Distinguished Master Guardian"1900 },
    { 
"Legendary Eagle"2000 },
    { 
"Legendary Eagle Master"2100 },
    { 
"Supreme Master First Class"2200 },
    { 
"The Global Elite"2500 }
}

new 
g_rango[33], g_frags[33];
new 
SyncHUDg_maxplayersg_playername[33][32];

#define TASK_HUD 67521
#define ID_HUD (taskid - TASK_HUD)
#define is_valid_player(%0) is_user_connected(%0) || !is_user_bot(%0) || !is_user_hltv(%0)

new VaultRango[128], szRangos[180];
new 
cvar_Hudcvar_knifex2cvar_hsx2cvar_hooksay;

public 
plugin_init()
{
    
register_plugin("Rangos CS:GO"VERSION"Gustavo Castillo");
    
    
RegisterHam(Ham_Killed"player""ham_PlayerKilledPost"true);
    
register_logevent("logevent_round_end"2"1=Round_End");
    
    
register_clcmd("say""message_saytext");
    
register_clcmd("say_team""message_sayteam");
    
    
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
    
cvar_hooksay register_cvar("rangos_hooksay""1");    // 1 - Modifica el say | 0 ÑO :v
    
    
SyncHUD CreateHudSyncObj();
    
g_maxplayers get_maxplayers();
    
    
nfv_file(DataBaseVaultRangocharsmax(VaultRango));    
}

public 
plugin_precache() 
{
    
precache_sound(Sonido);
}

public 
HUD(taskid)
{
    new 
id ID_HUD;
    
    if (!
is_user_alive(id))    
        
id pev(idpev_iuser2);
   
    if(
id != ID_HUD)
    {
        
set_hudmessage(2552552550.600.6716.01.0);
        
ShowSyncHudMsg(ID_HUDSyncHUD"Frags: %d  ||  Rango: %s"g_frags[id], Rangos[g_rango[id]][NOMBRE])
    }
    else
    {
        
set_hudmessage(random(100), random(0), random(255), -1.00.8021.05.0);

        if(
g_rango[id] == charsmax(Rangos))
        {
            
ShowSyncHudMsg(
            
ID_HUD,
            
SyncHUD,
            
"=======================^n\
            Frags: %d^n\
            Rango: %s^n\
            =======================^n\
            TIENES EL RANGO MAXIMO!!!^n\
            =======================^n\
            %s"
,
            
g_frags[id],
            
Rangos[g_rango[id]][NOMBRE],            
            
Web
            
);
        }
        else 
        {
            
ShowSyncHudMsg(
            
ID_HUD,
            
SyncHUD,
            
":::: Frags: %d || Rango:[lvl. %s ] :::: ^n\
            :::: Sig. Rango:[lvl. %s ] || Frags Restantes:::: %d^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
            
);
        }
    }
    
}

public 
client_putinserver(id)
{
    
get_user_name(idg_playername[id], 31);
    
g_rango[id] = g_frags[id] = 0;
    
    
Cargar(id);
    
    if(
get_pcvar_num(cvar_Hud)) 
        
set_task(1.0"HUD"id+TASK_HUD__"b");
}

public 
client_disconnected(id)
{
    if(
is_valid_player(id))
        
Guardar(id);
        
    
remove_task(id+TASK_HUD)
}

public 
logevent_round_end()
{
    static 
id;
    for(
id 1id <= g_maxplayers; ++id)
    {
        if(
is_valid_player(id))
            
Guardar(id);
    }
}

public 
ham_PlayerKilledPost(victimattackersg)
{
    if(!
is_user_connected(victim) || !is_user_connected(attacker) || !attacker || attacker == victim)
        return 
HAM_IGNORED;

    
SetFrags(attacker1);

    if(
get_pcvar_num(cvar_knifex2) == && get_user_weapon(attacker) == CSW_KNIFE)
        
SetFrags(attacker1);

    if(
get_pcvar_num(cvar_hsx2) == && get_pdata_int(victim755) == HIT_HEAD)
        
SetFrags(attacker1);

    return 
HAM_IGNORED;
}

SetFrags(indexfrags)
{
    
g_frags[index] += frags;

    static 
iRankiRank g_rango[index];
    while( 
g_frags[index] >= Rangos[g_rango[index]][FRAGS] && g_rango[index] < charsmax(Rangos))
        ++
g_rango[index];

    if(
iRank g_rango[index])
    {
        
client_print_color(indexprint_team_default"%s Felicidades subiste al rango: ^4%s"PrefijoRangos[g_rango[index]][NOMBRE]);
        
client_cmd(index"spk ^"%s^""Sonido);
    }
}

public 
message_saytext(id)
{
    if(!
get_pcvar_num(cvar_hooksay))    
        return 
PLUGIN_CONTINUE;

    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], iteam[11];
    
get_user_team(id,color,charsmax(color));
    
    if(
get_user_flags(id) & CHAT_FLAG)
    {
        
format(saidcharsmax(said), "^x01%s^x04%s ^x03%s ^x01: ^x04%s",
        
is_user_alive(id) ? "" "[MUERTO]",
        
Rangos[g_rango[id]][NOMBRE],
        
g_playername[id],
        
said);
    }
    else
    {
        
format(saidcharsmax(said), "^x01%s^04%s ^x03%s ^x01: %s",
        
is_user_alive(id) ? "" "[MUERTO]",
        
Rangos[g_rango[id]][NOMBRE],
        
g_playername[id],
        
said);
    }
    
    for (
1<= g_maxplayersi++)
    {
        if (!
is_user_connected(i)) continue;
        
        if(
get_user_flags(i) & CHAT_FLAG || 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)
{
    if(!
get_pcvar_num(cvar_hooksay))    
        return 
PLUGIN_CONTINUE;

    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], iteam[11];
    
get_user_team(id,color,charsmax(color));

    if (
get_user_flags(id) & CHAT_FLAG)
    {
        
format(saidcharsmax(said), "^x01%s [ %s ] ^x04%s ^x03%s ^x01: ^x04%s",
        
is_user_alive(id) ? "" "[MUERTO]",
        
playerTeam,
        
Rangos[g_rango[id]],
        
g_playername[id],
        
said);
    }
    else
    {
        
format(saidcharsmax(said), "^x01%s [ %s ] ^04%s ^x03%s ^x01: %s",
        
is_user_alive(id) ? "" "[MUERTO]",
        
playerTeam,
        
Rangos[g_rango[id]],
        
g_playername[id],
        
said);
    }

    for (
1<= g_maxplayersi++)
    {
        if (!
is_user_connected(i)) continue;
        
        if (
get_user_team(i) == playerTeam || get_user_flags(i) & CHAT_FLAG)
        {
            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[])
{
    static 
g_msgTeamInfo;
    if(!
g_msgTeamInfog_msgTeamInfo get_user_msgid("TeamInfo");

    
message_begin(MSG_ONEg_msgTeamInfo_player);
    
write_byte(player);
    
write_string(team);
    
message_end();
}

public 
writeMessage(playermessage[])
{
    static 
g_msgSayText;
    if(!
g_msgSayTextg_msgSayText get_user_msgid("SayText");
    
    
message_begin(MSG_ONEg_msgSayText, {000}, player);
    
write_byte(player);
    
write_string(message);
    
message_end();
}

Guardar(id)
{    
    
formatex(szRangoscharsmax(szRangos), "%d %d"g_frags[id], g_rango[id]);
    
nfv_set_data(VaultRangoDB_keyg_playername[id], szRangos);
}

Cargar(id)
{
    new 
g_load_c1[25], g_load_c2[25];
    if(!
nfv_get_data(VaultRangoDB_keyg_playername[id], szRangoscharsmax(szRangos))) 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);


stock ValidMessage(text[], maxcount)
{
    static 
lenicountlen strlen(text);count 0;
    if (!
len) return false;
    
    for (
0leni++)
    {
        if (
text[i] != ' ')
        {
            
count++;
            if (
count >= maxcount) return true;
        }
    }
    return 
false;


El tiempo es eterno pero la vida no ! Whatever
22/05/2019 12:40 PM
Encuentra todos sus mensajes Cita este mensaje en tu respuesta
kikizon2 Sin conexión
Miembro Héroe


Plugin developer Donador Regalo Beta Tester Trebol purpura 1k Plugin popular
Mensajes: 3,800
Registro en: Jan 2014
Reputación: 64
Mensaje: #9
RE: Sistema De Rangos CTF (Solucionado)
No saben programar pero si saben cambiar el autor hijos de la vergaRoflmao


NO DOY AYUDA VIA MENSAJE PRIVADO

* Si requieres algún servicio de pago puedes contactarme vía MP o en mi facebook

(23/09/2019 05:39 PM)Santax escribió:  Jjkajkjkaajk Nesecito Aiuda,Pinches Niños Ratas De Hoy En Dia Ya Ni Respetan.
22/05/2019 02:59 PM
Encuentra todos sus mensajes Cita este mensaje en tu respuesta
Skylar Sin conexión
Suspendido


Trebol de oro 1k
Mensajes: 1,852
Registro en: Feb 2015
Mensaje: #10
RE: Sistema De Rangos CTF (Solucionado)
(22/05/2019 02:59 PM)kikizon2 escribió:  No saben programar pero si saben cambiar el autor hijos de la vergaRoflmao

RoflmaoRoflmaoRoflmaoRoflmaoRoflmaoRoflmaoRoflmao
22/05/2019 05:27 PM
Encuentra todos sus mensajes Cita este mensaje en tu respuesta
Enviar respuesta 


Salto de foro:


Usuario(s) navegando en este tema: 1 invitado(s)

Contáctanos | Allied Modders en español | Volver arriba | Volver al contenido | Archivo (Modo simple) | Sindicación RSS