[AYUDA] Da solo arma disponible
#1
Hola de nuevo je Lengua, la cosa es que abris el menu, y no importa el numero que selecciones, te da el primer arma disponible, en el caso de ser nivel 1, te da la TMP automaticamente sin importar cual selecciones

Use el tut de Blackfur

Código:
enum ArmasVariables
{
nombre_arma[64],
nivel_arma,
cartucho_arma,
id_arma,
const_arma[64]
}

Luego

Código:
new const ArmasPrimarias[][ArmasVariables] =
{
{"Schmidt TMP", 1, 120, CSW_TMP, "weapon_tmp"},
{"Ingram MAC-10", 6, 100, CSW_MAC10, "weapon_mac10"},
{"ES P90", 11, 100, CSW_P90, "weapon_p90"},
{"M3 Super 90", 16, 32, CSW_M3, "weapon_m3"},
{"UMP 45", 21, 100, CSW_UMP45, "weapon_ump45"},
{"MP5 Navy", 26, 120, CSW_MP5NAVY, "weapon_mp5navy"},
{"Schmidt Scout", 31, 90, CSW_SCOUT, "weapon_scout"},
{"XM1014", 36, 32, CSW_XM1014, "weapon_xm1014"},
{"SG-550 Auto-Sniper", 41, 90, CSW_SG550, "weapon_sg550"},
{"G3SG1 Auto-Sniper", 46, 90, CSW_G3SG1, "weapon_g3sg1"},
{"SG-552 Commando", 51, 90, CSW_SG552, "weapon_sg552"},
{"IMI Galil", 56, 90, CSW_GALIL, "weapon_galil"},
{"Steyr AUG A1", 61, 90, CSW_AUG, "weapon_aug"},
{"Famas", 66, 90, CSW_FAMAS, "weapon_famas"},
{"M249 Para Machinegun", 71, 200, CSW_M249, "weapon_m249"},
{"M4A1 Carbine", 76, 90, CSW_M4A1, "weapon_m4a1"},
{"AK-47 Kalashnikov", 81, 90, CSW_AK47, "weapon_ak47"},
{"AWP Magnum Sniper", 86, 30, CSW_AWP, "weapon_awp"}
}

y por ultimo el menu..

Código:
public ArmasBBSubMenu(id)
{
    new menu = menu_create("\d[\rRkz-Gaming\d] \wSelecciona arma primaria:", "SubMenuArmasBB")
    
    static Item[64], Data[64]
    
    for(new i = 0; i < sizeof ArmasPrimarias; i++)
    {
        
        if(g_level[id] >= ArmasPrimarias[i][nivel_arma])
            formatex(Item, charsmax(Item), "%s", ArmasPrimarias[i][nombre_arma], ArmasPrimarias[i][nivel_arma])
        else
            formatex(Item, charsmax(Item), "%s \r[Nivel requerido: %d]", ArmasPrimarias[i][nombre_arma], ArmasPrimarias[i][nivel_arma])
        
        menu_additem(menu, Item, Data, 0)
    }
    menu_display(id, menu, 0);
}

public SubMenuArmasBB(id, menu, item)
{
    if(item == MENU_EXIT)
    {
        menu_destroy(menu);
        
        if(is_user_connected(id) )
            ArmasBBSubMenu(id);
        
        return PLUGIN_HANDLED;
    }
    
    new data[6], iName[64];
    new access, callback;
    menu_item_getinfo(menu, item, access, data, 5, iName, 63, callback);
    
    new datar = str_to_num(data);
    
    if(g_level[id] >= ArmasPrimarias[datar][nivel_arma])
    {
        give_item(id, ArmasPrimarias[datar][const_arma])
        cs_set_user_bpammo(id, ArmasPrimarias[datar][id_arma], ArmasPrimarias[datar][cartucho_arma])
    }
    else
    {
        print_color(id, "%s No tienes el nivel requerido para seleccionar esta arma", MODNAME)
        ArmasBBSubMenu(id);
        return PLUGIN_HANDLED;
    }
    
    menu_destroy(menu);
    
    return PLUGIN_HANDLED;
}

Alguien me sabria decir porque? Gracias de antemano :3
Responder
#2
Se claro, cuál es el problema y qué es lo que querés hacer?
Indentá el código.

Edit: Ahora entendí lo que querías...

Adentro de
Código PHP:
for(new 0sizeof ArmasPrimariasi++) 
Poné:
Código PHP:
num_to_str(iDatacharsmax(Data)); 
Responder
#3
EDIT: Ahi esta, gracias. Eso lo que hace es guardar el numero que seleccionas? Disculpa si no es inteligente la pregunta, es que estoy aprendiendo je
Responder
#4
Fijate que ahí edité el mensaje anterior con la solución.
Responder


Salto de foro:


Usuarios navegando en este tema: 1 invitado(s)