VISUALIZACION DE SELECCION
#1
Mi problema es el siguiente:

Código PHP:
public Event_PlayerStatus(id)
{
    static 
typeplayerCsTeams:teamname[32], healthg_iRango[32], g_iRazonesEn[32];
    
type read_data(1);
    
player read_data(2);
    
    switch (
type)
    {
        case 
1ClearSyncHud(idg_HudSync[1][HUD_MSGSYNC]);
        case 
2:
        {
            
team cs_get_user_team(player)
            if ((
team != CS_TEAM_T) && (team != CS_TEAM_CT))
                return 
PLUGIN_HANDLED
                
            health 
get_user_health(player)
            
get_user_name(playernamecharsmax(name))
            
            static 
szText[124];
            if (
team == CS_TEAM_T)
                
formatex(szTextcharsmax(szText), "Prisionero: %s^nVida: %i%^nRango: %s^nCondena: %s"namehealthg_szRangos[g_iRango[id]], g_szRazones[g_iRazonesEn[id]]);
            else
                
formatex(szTextcharsmax(szText), "Guardia: %s - %i%^nRango: %s"namehealthg_szRangos[g_iRango[id]]);
            
            
set_hudmessage(2025520, -1.00.600.02.00.00.0);
            
ShowSyncHudMsg(idg_HudSync[4][HUD_MSGSYNC], szText);
        }
    }
    
    return 
PLUGIN_HANDLED


En esta parte al seleccionar con el mouse a un prisionero/guardia aparece el Primer rango que hay en la lista (Novato) y la primera Condena, ej:

Prisionero: Pepito
Vida: 100%
Rango: Novato
Razón: Disturbio

Y yo quiero que me aparezca su respectivo rango y condena. Les agradecería mucho si me ayudan con esto.

Código PHP:
                formatex(szTextcharsmax(szText), "Prisionero: %s^nVida: %i%^nRango: %s^nCondena: %s"namehealthg_szRangos[g_iRango[id]], g_szRazones[g_iRazonesEn[id]]);
            else
                
formatex(szTextcharsmax(szText), "Guardia: %s - %i%^nRango: %s"namehealthg_szRangos[g_iRango[id]]); 
Responder
#2
Muestra como tienes g_szRangos
Responder
#3
(10/12/2019, 05:03 AM)Chema escribió: Muestra como tienes g_szRangos

Como puse anteriormente aparecería así:
Prisionero: Pepito (esto está bien)
Vida: 100% (esto también)
Rango: Novato (aquí se visualiza el primer rango de g_szRangos nomas)
Condena: Ser fan de Wanda (aquí se visualiza la primera razón solamente de g_szRazones)

PD: son rangos y razones viejas jaja
Código PHP:
new const g_szRazones[][] =
{
    
"Ser fan de Wanda",
    
"Robo a mano armada",
    
"Fraude",
    
"Matar a un nigga",
    
"Matar a un policia",
    
"Vicio",
    
"Incendiar un estadio",
    
"Secuestro",
    
"Violacion",
    
"Vestirte como turro",
    
"Fumar faso"
};

new const 
g_szRangos[][] =
{
    
"Novato",
         
"Iniciando",
    
"Practicante",
    
"Aficionado",
    
"Espia",
    
"Fasolita",
    
"Chimenea",
    
"Falopero",
    
"Maliante",
    
"Negro Gato",
    
"Inmigrante",
    
"Gangster",
    
"Pandillero",
    
"Cheto",
    
"Ricardo Fort",
    
"Ricky",
    
"Fan de Emiliano",
    
"Fan de Mariano",
    
"Violador",
    
"Asesino",
    
"Traficante",
    
"Bandolero",
    
"Estafador",
    
"Careta",
    
"The Rock",
    
"Chuck Norris",
    
"Rapero",
    
"Revelero",
    
"Jasom Statham",
    
"Scott Adkins",
    
"Artista marcial",
    
"Luchador profesional",
    
"Campeon de MMA",
    
"Capo de la Prision"
}; 
Responder
#4
Aumentas el valor de la variable g_iRango?, sí es así.. cómo?
Responder
#5
si para cada rango hay una condena, es decir, rango novato = ser fan de wanda
entonces la variable que debes usar dentro de g_szRangos[variable] y g_szRazones[variable] debe ser la misma! entonces reemplazas g_szRazones[g_iRazonesEn[id]] por g_szRazones[g_iRango[id]]]
Responder
#6
(10/12/2019, 03:25 PM)Chema escribió: Aumentas el valor de la variable g_iRango?, sí es así.. cómo?

Cuando avanza de rango hace esto:

Código PHP:
public CheckRango(id)
{
    if (
g_iRango[id] >= (sizeof(g_szRangos) - 1))
        return;
    
    if (
g_iFrags[id] >= CostoRango(g_iRango[id]))
    {
        
g_iRango[id]++
        
ChatColor(0BLUE"^x04[JB]^x01 Felicitaciones a ^x03%s^x01, subió al rango^x04 %s"g_szPlayerName[id], g_szRangos[g_iRango[id]]);
    }


(10/12/2019, 03:35 PM)Gonza.-* escribió: si para cada rango hay una condena, es decir, rango novato = ser fan de wanda
entonces la variable que debes usar dentro de g_szRangos[variable] y g_szRazones[variable] debe ser la misma! entonces reemplazas g_szRazones[g_iRazonesEn[id]] por g_szRazones[g_iRango[id]]]

No no, las Razones(Condenas) se generan al azar cuando ingresas al servidor y te elegis prisionero:

Código PHP:
    switch (iTeam)
    {
        case 
CS_TEAM_T:
        {
            
g_PlayerLast 0;
            
            if (!
g_iRazonesEn[id])
                
g_iRazonesEn[id] = random_num(1sizeof(g_szRazones) - 1);
            
            
set_hudmessage(25520255, -1.00.800.012.01.01.0);
            
show_hudmessage(id"Has sido encarcelado por %s"g_szRazones[g_iRazonesEn[id]]); 
Responder
#7
Ya entendí tu problema amigo! en esta parte
Código PHP:
formatex(szTextcharsmax(szText), "Prisionero: %s^nVida: %i%^nRango: %s^nCondena: %s"namehealthg_szRangos[g_iRango[id]], g_szRazones[g_iRazonesEn[id]]);
            else
                
formatex(szTextcharsmax(szText), "Guardia: %s - %i%^nRango: %s"namehealthg_szRangos[g_iRango[id]]); 
el "id" es 0 o es el propio y no de a quien le apuntas! Si dejaras el codigo entero, recibirias mas ayuda, saludos!
Responder
#8
https://amxmodx-es.com/Thread-TUT-Sistem...Al-Apuntar
[Imagen: zcsztw-4.png] [Imagen: 6u5fj2-4.png]
[Imagen: linkedin_thumb_image.png][Imagen: 76561198283253977.png][Imagen: linkedin_thumb_image.png]
Responder


Salto de foro:


Usuarios navegando en este tema: 1 invitado(s)