[ZA]Menu de Bombas por lvl
#1
MENU DE BOMBAS PARA ZA

Hola este es un simple menu de bombas pero adaptado para Zombie Apocalypse 4.6 ya que muchos lo piden y veo q no se los an otorgado despues de tanto intentar e intentar y fallos lo logre hacer Gran sonrisa Quizas

Bueno comenzemos Gran sonrisa

Primero creamos una nueva const buscan la linea // Some constants
ponen esto debajo
Código PHP:
// Granada Cost
new const g_costgrenade[]= { 0100002500065000 

Quedaria...
Código PHP:
// Some constants
const HIDE_RHA = (1<<3)
const 
HIDE_MONEY = (1<<5)
const 
UNIT_SECOND = (1<<12)
const 
DMG_HEGRENADE = (1<<24)
const 
VGUI_JOIN_TEAM_NUM 2
const IMPULSE_FLASHLIGHT 100
const USE_USING 2
const USE_STOPPED 0
const STEPTIME_SILENT 999
const BREAK_GLASS 0x01
const BREAK_WOOD 0x08
const FFADE_IN 0x0000
const FFADE_STAYOUT 0x0004
const PEV_SPEC_TARGET pev_iuser2

// Granada Cost
new const g_costgrenade[]= { 02550100 // tienen que poner 1 de mas porque no cuenta la ultima nose porque me explico si es 0, 25, 50, 100 solo contara las bombas asta el lvl 50 

Segundo buscamos la linea // Give the new weapon and full ammo y colocamos esto
Código PHP:
show_menu_granades(id

Quedaria...
Código PHP:
    // Give the new weapon and full ammo
    
give_item(idwname)
    
ExecuteHamB(Ham_GiveAmmoidMAXBPAMMO[weaponid], AMMOTYPE[weaponid], MAXBPAMMO[weaponid])
        
    
show_menu_granades(id

Tercero... Creamos el menu creado un public que lo llame... esto lo pueden poner en cualquier parte del sma
Código PHP:
// Menu de Granadas
public show_menu_granades(id)
{  
    new 
menu menu_create("\rMenu de Bombas""menu_handler")
     
    if(
g_level[id] <= 0)
    {
        
menu_additem(menu"\r ^n\w|| \r1 \yMolotov \w|| \r1 \yHielo \w||^n""1"0)
    }
    else if (
g_level[id] >= 0)
    {
        
menu_additem(menu"\r ^n\w|| \r1 \yMolotov \w|| \r1 \yHielo \w||^n""1"0)
    }
    if(
g_level[id] <= 25)
    {
        
menu_additem(menu"\r ^n\d|| 2 Molotov \d||2 Hielo \d|| \r[N: 25]^n""2"0)
    }
    else if (
g_level[id] >= 25)
    {
        
menu_additem(menu"\r ^n\w|| \r2 \yMolotov \w|| \r2 \yHielo \w||^n""2"0)
    }
    if(
g_level[id] <= 50)
    {
        
menu_additem(menu"\r ^n\d|| 1 Molotov \d|| 1 Hielo \d|| 1 Bubble || \r[N: 50]^n""3"0)
    }
    if(
g_level[id] >= 50)
    {
        
menu_additem(menu"\r ^n\w|| \r1 \yFuego \w|| \r1 \yHielo \w|| \r1 \yBubble ||^n""3"0)
    }
    if(
g_level[id] <= 75)
    {
        
menu_additem(menu"\r ^n\d|| 3 Molotov \d|| 3 Hielo \d|| 2 Bubble || \r[N: 75]^n""4"0)
    }
    else if (
g_level[id] >= 75)
    {
        
menu_additem(menu"\r ^n\w|| \r3 \yMolotov \w|| \r3 \yHielo \w|| \r2 \yBubble ||^n""4"0)
    }

    
menu_display(idmenu0)
}

public 
menu_handler(idmenuitem)
{
    if (
item == MENU_EXIT)
    {
        
menu_destroy(menu)
        return 
PLUGIN_HANDLED
    
}

    if(
g_zombieclass[id])
    {
        
menu_destroy(menu)
        return 
PLUGIN_HANDLED
    
}
     
    new 
data[6], iName[64]
    new 
accesscallback
    menu_item_getinfo
(menuitemaccessdata,5iName63callback)
    new 
key str_to_num(data)
     
    new 
costo =  g_costgrenade[item]
     
    if(
g_level[id] >= costo)
    {
    switch(
key)
    {
    case 
1:
    {
            if (
g_level[id] >= 0)
        {
            
give_item(id"weapon_hegrenade")
            
give_item(id"weapon_flashbang")
        }
    }
    case 
2:
    {
            if (
g_level[id] >= 25)
        {
            
give_item(id"weapon_hegrenade")
            
give_item(id"weapon_hegrenade")
            
give_item(id"weapon_flashbang")
            
give_item(id"weapon_flashbang")
            
cs_set_user_bpammo(idCSW_HEGRENADE2)
            
cs_set_user_bpammo(idCSW_SMOKEGRENADE2)
        }
    }
    case 
3:  
    {
            if (
g_level[id] >= 50)
        {  
            
give_item(id"weapon_hegrenade")
            
give_item(id"weapon_hegrenade")
            
give_item(id"weapon_flashbang")
            
give_item(id"weapon_flashbang")
            
give_item(id"weapon_smokegrenade")
            
cs_set_user_bpammo(idCSW_HEGRENADE2)
            
cs_set_user_bpammo(idCSW_SMOKEGRENADE3)
        }
    }
    case 
4:
    {
            if (
g_level[id] >= 75)
        {
            
give_item(id"weapon_hegrenade")
            
give_item(id"weapon_hegrenade")
            
give_item(id"weapon_hegrenade")
            
give_item(id"weapon_flashbang")
            
give_item(id"weapon_flashbang")
            
give_item(id"weapon_flashbang")
            
give_item(id"weapon_smokegrenade")
            
give_item(id"weapon_smokegrenade")
            
cs_set_user_bpammo(idCSW_HEGRENADE3)
            
cs_set_user_bpammo(idCSW_FLASHBANG3)
            
cs_set_user_bpammo(idCSW_SMOKEGRENADE3)
                }
            }
        }
    }
    return 
PLUGIN_HANDLED


Cuarto y ultimo paso Se van a la linea // Give additional items y Simplemente la borrar todo esa seccion
Código PHP:
    // Give additional items
    
for (new 0ArraySize(g_additional_items); i++)
    {
        
ArrayGetString(g_additional_itemsiwnamecharsmax(wname))
        
        
// Level required for get weapon
        
if (g_level[id] >= ArrayGetCell(g_additional_levelsi) || (userflags g_access_flag[ACCESS_WEAPONS_FREE]))
            
give_item(idwname)
    } 
Quedaria...
Código PHP:
    // Weapons bought
    
g_canbuy[id] = 1
    
    
// Show pistols menu
    
if (!g_isbot[id] && !get_pcvar_num(cvar_randweapons))
        
show_menu_buy2(id)
        
    return 
PLUGIN_HANDLED;


y listo eso seria para que no se auto den las bombas sino que salga el menu despues de elegir el segundo armamento que serian las pistolas Gran sonrisa espero averlos ayudado Gran sonrisa tambien les digo que es mi aporte no se mucho pero lo que se lo comparto Gran sonrisa
Responder
#2
ya hay mucha shit de esta, lee las reglas, ya hay otro par de 'tutos' sobre lo mismo, y nadie postea una forma correcta...
[Imagen: bvpq9q-6.png]

NO DOY AYUDA VIA MENSAJE PRIVADO

* Si requieres algún servicio de pago puedes contactarme vía MP o en mi facebook
Responder
#3
si agregas mucho de esto
give_item(id, "weapon_hegrenade")
give_item(id, "weapon_hegrenade")
give_item(id, "weapon_hegrenade")
give_item(id, "weapon_flashbang")
give_item(id, "weapon_flashbang")
give_item(id, "weapon_flashbang")
give_item(id, "weapon_smokegrenade")
give_item(id, "weapon_smokegrenade")
solo te va a dar 1 -.-
PD: si tenes esta forma es orrible mente asqueroso.

y no entiendo esto new const g_costgrenade[]= { 0, 10000, 25000, 65000 }
si lo estas difiniendo como level :/
Crab Crab Crab Crab
Responder
#4
Repito... Hay formas mejores que estas...
Free agent - Vendo plugins, mods o apps del foro IPB (Invision community)
Contactarme vía Discord >>> AtselTV#8202
Responder
#5
(04/10/2014, 06:27 PM)ivan escribió: si agregas mucho de esto
give_item(id, "weapon_hegrenade")
give_item(id, "weapon_hegrenade")
give_item(id, "weapon_hegrenade")
give_item(id, "weapon_flashbang")
give_item(id, "weapon_flashbang")
give_item(id, "weapon_flashbang")
give_item(id, "weapon_smokegrenade")
give_item(id, "weapon_smokegrenade")
solo te va a dar 1 -.-
PD: si tenes esta forma es orrible mente asqueroso.

y no entiendo esto new const g_costgrenade[]= { 0, 10000, 25000, 65000 }
si lo estas difiniendo como level :/
Ivan por favor si haces una critica que sea constructiva no hace falta decir es horrible asqueroso .... de esa forma no le estas ayudando al contrario... si le quieres ayudar a mejorar enseñale la forma correcta.
[Imagen: 76561198066347799.png]
Responder
#6
Lo más que puedo decirte es que hagas esto
Código PHP:
enum _:DataGranadas
{
    
NAME[32],
    
AMOUNT_HE,
    
AMOUNT_FB,
    
AMOUNT_SG,
    
REQ_LEVEL
};

new const 
g_szGranadas[][DataGranadas] =
{
    { 
"He - Fb - Sg"11110 },
    { 
"2 He - 2 Fb - 2 Sg"22225 }
};

// Para mostrar las granadas
static szText[32];
for (new 
0sizeof(g_szGranadas); i++)
    
formatex(szTextcharsmax(szText), "%s"g_szGranadas[i][NAME]);

// Para dar granadas
give_item(id"weapon_hegrenade");
give_item(id"weapon_flashbang");
give_item(id"weapon_smokegrenade");

cs_set_user_bpammo(idCSW_HEGRENADEg_szGranadas[item][AMOUNT_HE];
cs_set_user_bpammo(idCSW_FLASHBANGg_szGranadas[item][AMOUNT_FB];
cs_set_user_bpammo(idCSW_SMOKEGRENADEg_szGranadas[item][AMOUNT_SG];

// Para chequear su nivel
if (g_level[id] < g_szGranadas[item][REQ_LEVEL]) // Si tu nivel actual es menor al nivel de las granadas requeridas, entonces
{
    
client_print(idprint_center"No tienes nivel suficiente"); // Mensaje 
    
return; // Detiene la función


Fin...!
Free agent - Vendo plugins, mods o apps del foro IPB (Invision community)
Contactarme vía Discord >>> AtselTV#8202
Responder
#7
Che maestro, el menu compila de diez,pero al elegir las granadas no me da ni una de las tres seleccionadas..
kissmeyearbasic-
Responder
#8
Podes usar una de este tutorial Menu bombas por niveles lo encuentro mejor a demás el pibe nunca le hizo un update
(07/06/2018, 09:51 PM)Hypnotize escribió:
(07/06/2018, 06:55 PM)Nazy.- escribió: este sitio apesta pacman

lo único que apesta es tu ano, deja de robar autor rata

Responder


Salto de foro:


Usuarios navegando en este tema: 1 invitado(s)