menu de secundarias+natives problema
#1
dejo el code de lo q hice, si me pueden ayudar a encontrar errorres... no me muestra las armas secundarias, lo puse por lvl al menu por ahora hasta terminarlo...

Código PHP:
// Extra Armas vars
new g_extrarma_s_name[MAX_EXTRARMAS_ITEMS][32// caption
new g_extrarma_s_level[MAX_EXTRARMAS_ITEMS// cost
new g_extrarma_s_i // loaded e
// Primary and Secondary Weapon Names
enum _:APDATOS

    
ANAME[32],
    
AITEMS[32],
    
AMODEL[32],
    
APMODEL[32],
    
ALEVEL,
    
ARESET,
    
ARESETMASTER,
    
Float:ADAMAGE
}
// ARMAS SECUNDARIAS
new const g_secondary_items[6][APDATOS] = 
{
    {
"Glock 18C",         "weapon_glock18",     "default",     "default",     0,     0,     0,     1.0}, 
    {
"USP .45 ACP Tactical","weapon_usp",         "default",     "default",     25,     0,     0,     1.10},
    {
"P228 Silver",        "weapon_p228",        "default",    "default",     50,     0,     0,     1.23},
    {
"Five Seven",        "weapon_fiveseven",     "default",     "default",     75,     0,     0,     1.35},
    {
"Dual Elite Berettas""weapon_elite",        "default",    "default",     100,     0,     0,     1.50},
    {
"Desert Eagle .50 AE""weapon_deagle",    "default",     "default",     125,     0,     0,     1.85}



Código PHP:
register_native("zp_register_arma_s""native_register_arma_s"1)

for (new 
018i++)
        
native_register_arma_s2(g_secondary_items[i][ANAME], g_secondary_items[i][ALEVEL]) 

Código PHP:
// Buy Menu 2
show_menu_buy2(id)
{
    static 
menu[999], lenweap
    len 
0
    
    
// Title
    
len += formatex(menu[len], sizeof menu len"\y%Armas Secundarias^n"id)
    
    
// 1-6. Weapon List
    
for (weap 0weap sizeof g_extrarma_s_iweap++)
    {
    if(
g_level[id] >= g_extrarma_s_level[weap])
    {
        
len += formatex(menu[len], sizeof menu len"^n\r%d.\w %s"weap+1g_extrarma_s_name[weap])
    }
    else
    {
        
len += formatex(menu[len], sizeof menu len"^n\r%d.\d %s | \yLevel\r[\d%d\d]^n"weap+1g_extrarma_s_name[weap], g_extrarma_s_level[weap])    
    }
}
    
    
// 0. Exit
    
len += formatex(menu[len], sizeof menu len"^n^n\r0.\w Salir"id)
    
    
show_menu(idKEYSMENUmenu, -1"Buy Menu 2")
}
// Buy Menu 2
public menu_buy2(idkey)
{    
    
// Zombies or survivors get no guns  
    
if (g_zombie[id] || g_survivor[id] || g_nemesis[id] || g_wesker[id] || g_protector[id] || 
    
g_civil[id] || g_l4d[id] || g_assassin[id] || g_depredador[id] || g_alien[id] || g_sniper[id] || !is_user_alive(id))
        return 
PLUGIN_HANDLED;
    
    
// Special keys / weapon list exceeded
    
if (key >= sizeof g_secondary_items)
    {
        
        
// Reshow menu unless user exited
        
if (key != MENU_KEY_EXIT)
            
show_menu_buy2(id)
        
        return 
PLUGIN_HANDLED;
    }
    
    
// Store selected weapon
    
WPN_AUTO_SEC key
    
    
    
if(g_level[id] >= g_extrarma_s_level[WPN_SELECTION])
    {
        
drop_weapons(id2)
        
buy_sec_weapon(idWPN_AUTO_SEC)
    }
    else
        
show_menu_buy2(id)

    return 
PLUGIN_HANDLED;
}
// Buy Primary Weapon
buy_sec_weapon(idselection)
{

    switch (
selection)
    {
        case 
0..5:
        {
            
// Give the new weapon
            
fm_give_item(idg_secondary_items[selection][AITEMS])
            
ExecuteHamB(Ham_GiveAmmoidMAXBPAMMO[get_weaponid(g_secondary_items[selection][AITEMS])], AMMOTYPE[get_weaponid(g_secondary_items[selection][AITEMS])], MAXBPAMMO[get_weaponid(g_secondary_items[selection][AITEMS])])

        }
        default: 
// Custom additions
        
{
            
ExecuteForward(g_fwExtraRmaSelected2g_fwDummyResultidselection);
        }
    }
    
    
// Weapons bought
    
g_canbuy[id] = false
    
    
if(WPN_AUTO_ON == 0)
    
show_menu_buy3(id);     


Código PHP:
public native_register_arma_s(const name[], level)
{
    
// Reached extra items limit
    
if (g_extrarma_s_i >= sizeof g_extrarma_s_name)
        return -
1;
    
    
// Strings passed byref
    
param_convert(1)
    
    
// Add the item
    
copy(g_extrarma_s_name[g_extrarma_s_i], sizeof g_extrarma_s_name[] - 1name)
    
g_extrarma_s_level[g_extrarma_s_i] = level
    
    
// Increase registered items counter
    
g_extrarma_s_i++
    
    
// Return id under which we registered the item
    
return g_extrarma_s_i-1;
}

// Function: zp_register_extra_arma (to be used within this plugin only)
native_register_arma_s2(const name[], level)
{
    
// Reached extra items limit
    
if (g_extrarma_s_i >= sizeof g_extrarma_s_name)
        return;
    
    
// Add the item
    
copy(g_extrarma_s_name[g_extrarma_s_i], sizeof g_extrarma_s_name[] - 1name)
    
g_extrarma_s_level[g_extrarma_s_i] = level
    
    
// Increase registered items counter
    
g_extrarma_s_i++


dejo una imagen
saludos
Responder
#2
Código PHP:
show_menu_buy2(id)
{
    static 
menu[999], lenweap
    len 
0
    
    
// Title
    
len += formatex(menu[len], sizeof menu len"\y%Armas Secundarias^n"id)
    
    
// 1-6. Weapon List
    
for (weap 0weap sizeof g_extrarma_s_iweap++)
    {
    if(
g_level[id] >= g_extrarma_s_level[weap])
    {
        
len += formatex(menu[len], sizeof menu len"^n\r%d.\w %s"weap+1g_extrarma_s_name[weap])
    }
    else
    {
        
len += formatex(menu[len], sizeof menu len"^n\r%d.\d %s | \yLevel\r[\d%d\d]^n"weap+1g_extrarma_s_name[weap], g_extrarma_s_level[weap])    
    }
}
    
    
// 0. Exit
    
len += formatex(menu[len], sizeof menu len"^n^n\r0.\w Salir"id)
    
    
show_menu(idKEYSMENUmenu, -1"Buy Menu 2")


--->

Código PHP:
show_menu_buy2(id)
{
    static 
menu[999], lenweap
    len 
0
    
    
// Title
    
len += formatex(menu[len], sizeof menu len"\y%Armas Secundarias^n"id)
    
    
// 1-6. Weapon List
    
for (weap 0weap sizeof g_secondary_itemsweap++)
    {
    if(
g_level[id] >= g_secondary_items[weap][ALEVEL])
    {
        
len += formatex(menu[len], sizeof menu len"^n\r%d.\w %s"weap+1g_secondary_items[weap][ANAME])
    }
    else
    {
        
len += formatex(menu[len], sizeof menu len"^n\r%d.\d %s | \yLevel\r[\d%d\d]^n"weap+1g_secondary_items[weap][ANAME], g_secondary_items[weap][ALEVEL])    
    }
}
    
    
// 0. Exit
    
len += formatex(menu[len], sizeof menu len"^n^n\r0.\w Salir"id)
    
    
show_menu(idKEYSMENUmenu, -1"Buy Menu 2")

Responder
#3
Código PHP:
len += formatex(menu[len], sizeof menu len"^n\r%d.\d %s | \yLevel\r[\d%d\d]^n"weap+1g_secondary_items[weap][ANAME], g_secondary_items[weap][ALEVEL]) 
una pregunta.... al hacer g_secondary_items[weap][ALEVEL] estoy llamando directamente desde el enum y no desde el registro de native...
Código PHP:
for (new 018i++)
        
native_register_arma_s2(g_secondary_items[i][ANAME], g_secondary_items[i][ALEVEL]) 
se supone que este menu de armas quedaria como un extra mas dentro del zp, por eso aplique en el menu:
Código PHP:
len += formatex(menu[len], sizeof menu len"^n\r%d.\d %s | \yLevel\r[\d%d\d]^n"weap+1g_extrarma_s_name[weap], g_extrarma_s_level[weap]) 



tambien....
Código PHP:
for (weap 0weap sizeof g_secondary_itemsweap++) 
o cuando aplicas g_secondary_items directamente manda el nombre y el lvl de la nueva arma externa?

lo que me di cuenta, es que tengo el error visual.... por que las armas estan cuando preciono los numeros y me dan como bloqueadas al no tener lvl y las q tengo lvl las entrega....
Responder


Salto de foro:


Usuarios navegando en este tema: 1 invitado(s)