Allied Modders en español
[ZA] Agregar una Categoria por natives facil y sencilla - Versión para impresión

+- Allied Modders en español (https://amxmodx-es.com)
+-- Foro: AMX Mod X - Scripting (https://amxmodx-es.com/Forum-AMX-Mod-X-Scripting)
+--- Foro: Tutoriales / Guias (https://amxmodx-es.com/Forum-Tutoriales-Guias)
+--- Tema: [ZA] Agregar una Categoria por natives facil y sencilla (/Thread-ZA-Agregar-una-Categoria-por-natives-facil-y-sencilla)



[ZA] Agregar una Categoria por natives facil y sencilla - luxor xD - 12/04/2018

Buenos dias...
Hoy vengo a dejar un pequeño aporte para las personas que estan comenzando como yo, hice este tutorial porque queria apreder a agregar una categoria de armas al ZA 4.6 y buscaba... y encontre unas formas las cuales no las supe usar o no, no las entendia haci que me puse a inventar hasta que lo logre de una forma facil para mi ya que soy nuevo de agregar las categorias la menu y haora lo quiero compartir con ustedes pero mas que todo para la personas que estan comenzando.

Primero les recomiendo ver el tuto de como agregar armas por native.
no recuerdo de donde lo saque pero bueno los creditos van a esa persona
Whatever
[attachment=5290]
[attachment=5291]
ahora buscamos esta parte en nuestro plugin

aqui agregaremos la parte visual de nuestra nueva categoria
Código PHP:
// Category Weapons Menu
show_menu_category(id)
{
    
// Player dead?
    
if (!g_isalive[id]) return;
    
    
// Zombies, survivors or wesker get no guns
    
if (g_class[id] >= SURVIVOR) return;
    
    
// Bots pick their weapons randomly / Random weapons setting enabled
    
if (get_pcvar_num(cvar_randweapons) || g_isbot[id])
    {
        
buy_primary_weapon(idrandom_num(0ArraySize(g_primary_items) - 1))
        
menu_buy2(idrandom_num(0ArraySize(g_secondary_items) - 1))
        return;
    }
    
    static 
lenuserflags
    len 
0
    userflags 
get_user_flags(id)
    
    
// Title
    
len += formatex(g_menu[len], charsmax(g_menu) - len"\rCategoria de armas^n^n")
    
    
// 1. Category A
    
len += formatex(g_menu[len], charsmax(g_menu) - len"\r1.\w Categoria \rA \y[Nivel: 1 ~ %d]^n"g_max_level)
    
    
// 2. Category B
    
if (g_fame[id] >= g_fame_category[0] || (userflags g_access_flag[ACCESS_WEAPONS_FREE]))
        
len += formatex(g_menu[len], charsmax(g_menu) - len"\r2.\w Categoria \rB \y[Fama: %d ~ %d]^n"g_fame[id],  g_fame_category[0])
    else
        
len += formatex(g_menu[len], charsmax(g_menu) - len"\r2.\d Categoria \rB \y[Fama: %d ~ %d]^n"g_fame[id], g_fame_category[0])
        
    
// 3. Category E
    
if (g_fame[id] >= g_fame_category[1] || (userflags g_access_flag[ACCESS_WEAPONS_FREE]))
        
len += formatex(g_menu[len], charsmax(g_menu) - len"\r3.\w Categoria \rE \y[Fama: %d ~ %d]^n^n"g_fame[id], g_fame_category[1])
    else
        
len += formatex(g_menu[len], charsmax(g_menu) - len"\r3.\d Categoria \rE \y[Fama: %d ~ %d]^n^n"g_fame[id], g_fame_category[1])

    
// 4. Esta es la categoria que estamos agregando
    
if (g_fame[id] >= Aqui pondreomos la fama necesaria para usar el menu || (userflags g_access_flag[ACCESS_WEAPONS_FREE]))
        
len += formatex(g_menu[len], charsmax(g_menu) - len"\r3.\w Categoria \rNueva \y[Fama: %d ~ %d]^n^n"g_fame[id], fama necesaria)
    else
        
len += formatex(g_menu[len], charsmax(g_menu) - len"\r3.\d Categoria \rNueva \y[Fama: %d ~ %d]^n^n"g_fame[id], fama necesaria)
    
    
// Note - 0. Exit
    
len += formatex(g_menu[len], charsmax(g_menu) - len"\rNota: \wLas armas de Categoria B hacen +50% daño^n^n\r0.\y Salir")
    
    
show_menu(idKEYSMENUg_menu, -1"Category Menu")

haora vamos para la segunda parte que es donde llamaremos a nuestra nueva categoria

Código PHP:
// Category Weapons Menu
public menu_category(idkey)
{
    
// Player dead?
    
if (!g_isalive[id]) return PLUGIN_HANDLED;
    
    
// Not normal human
    
if (g_class[id] >= SURVIVOR) return PLUGIN_HANDLED;
    
    switch (
key)
    {
        case 
0// Category A
        
{
            
g_categoryb[id] = false
            show_menu_buy1
(id)
        }
        case 
1// Category B
        
{
            if (
g_fame[id] >= g_fame_category[0] || (get_user_flags(id) & g_access_flag[ACCESS_WEAPONS_FREE]))
            {
                
g_categoryb[id] = true
                show_menu_buy1
(id)
            }
            else
                
show_menu_category(id)
        }
        case 
2// Category E
        
{
            if (
g_fame[id] >= g_fame_category[1] || (get_user_flags(id) & g_access_flag[ACCESS_WEAPONS_FREE]))
            {
                
g_categoryb[id] = false
                show_menu_special
(id)
            }
            else
                
show_menu_category(id)
        }
case 
2// Esta es la nueva categoria que estamos agregando
        
{
            if (
g_fame[id] >= fama necesaria para poder usar el menu || (get_user_flags(id) & g_access_flag[ACCESS_WEAPONS_FREE]))
            {
                
g_categoryb[id] = false
                show_nueva_categoria
(id// aqui llamaremos a nuestra categoria nueva el nombre que pongan aqui lo deven poner en el public de nuestra categotia
            
}
            else
                
show_menu_category(id)
        }

    }
    
    return 
PLUGIN_HANDLED;

es hora de agregar nuestro menu...
recuerden usar el mismo nombre que usaron anteriormente.
Código PHP:
public show_nueva_categoria(id//ojo  aqui es donde usan el nombre anterior
{  
    new 
iMenu menu_create"\yNOMBRE DE TU MENU""categoria_nueva"/*aqui va el nombre del public de abaja-aqui llamamos a los items registrados*/ );
    
if(
g_level[id] >= aqui ponen el level que se necesita para el arma)
    
menu_additemiMenu"\wBalrog-I [Desbloqueado]""1" );//haci se agregan los items al menu de esta forma se pueden agregar mas
else
menu_additemiMenu"\dBalrog-I [Nivel: x]""1" );//esto es solo para hacer el efecto de que no la tienes desbloqueada por tu level
   
if(g_level[id] >= 5)
    
menu_additemiMenu"\wSkulls-4 [Desbloqueado]""1" );
          else
   
menu_additemiMenu"\dSkulls-4 [Nivel: 5]""1" );

    
menu_displayidiMenu);
}
public 
categoria_nuevaidmenuitem)//recuerden poner el mismo nombre que pusimos en las lineas de arriba
{
    switch(
item)
    {
        case 
0:
        {
          if(
g_level[id] >= x level)// aqui volvemos a ponerle nivel
            
give_b1(id// aqui damos el arma por native
               
else
          
show_nueva_categoria(id//y si no se comple eso simplemente devolvemos al menu
        
}
        case 
1:
        {
          if(
g_level[id] >= 5)
             
give_weapon_skull4(id)
             else
       
open_menu_armas(id)
        }
        case 
MENU_EXIT:
        {
            
menu_destroy(menu);
            return 
PLUGIN_HANDLED;
        }
    }
    
    
menu_destroy(menu);
    return 
PLUGIN_HANDLED;

eso es todo.
me falto ponerle que cuando compren el arma ya no puedan volver a abrir el menu
pero espero que les ayude mucho.

aqui les dejo el .inc que use y los plugins que use para este tuto ó aporte ni se que hice xD.
Mariodance
[attachment=5292]


RE: [ZA] Agregar una Categoria por natives facil y sencilla - GeoDash123 - 17/05/2018

Muchas gracias pero redactalo un poco mejor ya que tarde en entender un poco las cosas pero bien hecho eh Excitedeyes


RE: [ZA] Agregar una Categoria por natives facil y sencilla - Nazi.- - 17/05/2018

Puedes hacer un tutorial mas ordenado y explicando mejor a los usuarios, porque medio lo lei y me ardieron los ojos Oh god why


RE: [ZA] Agregar una Categoria por natives facil y sencilla - luxor xD - 19/05/2018

ok.. ok...
Whatever


RE: [ZA] Agregar una Categoria por natives facil y sencilla - La Renga Mk - 19/05/2018

antes de foto

Paso (1)
Busca un extra iteams que sea un arma y buscas esto

Código PHP:
Public zp_extra_item_selected(iditemid

-

-

-

-


RE: [ZA] Agregar una Categoria por natives facil y sencilla - El pirucho XP-007 - 19/05/2018

Insecure No lo entendí a la primera Interesting . Pero me puse analizar mejor y entendí como hacerlo.

Cita:Puedes hacer un tutorial mas ordenado y explicando mejor a los usuarios, porque medio lo lei y me ardieron los ojos Oh god why

Estoy de acuerdo con Nazi.- , tuve que leerlo muchas veces y me dolió la cabeza. Insecure


RE: [ZA] Agregar una Categoria por natives facil y sencilla - Valentina. - 19/05/2018

(19/05/2018, 07:12 PM)El pirucho XP-007 escribió: Insecure No lo entendí a la primera Interesting . Pero me puse analizar mejor y entendí como hacerlo.

Cita:Puedes hacer un tutorial mas ordenado y explicando mejor a los usuarios, porque medio lo lei y me ardieron los ojos Oh god why

Estoy de acuerdo con Nazi.- , tuve que leerlo muchas veces y me dolió la cabeza. Insecure

A mí me sangran los ojos cuando leo lo qué escribís vos. Oh god why


RE: [ZA] Agregar una Categoria por natives facil y sencilla - Hinami - 19/05/2018

(19/05/2018, 07:12 PM)El pirucho XP-007 escribió: Insecure No lo entendí a la primera Interesting . Pero me puse analizar mejor y entendí como hacerlo.

Cita:Puedes hacer un tutorial mas ordenado y explicando mejor a los usuarios, porque medio lo lei y me ardieron los ojos Oh god why

Estoy de acuerdo con Nazi.- , tuve que leerlo muchas veces y me dolió la cabeza. Insecure

a mi me duele solo ver que respondes a los temas v:


RE: [ZA] Agregar una Categoria por natives facil y sencilla - Skylar - 20/05/2018

(19/05/2018, 07:32 PM)Hypnotize escribió:
(19/05/2018, 07:12 PM)El pirucho XP-007 escribió: Insecure No lo entendí a la primera Interesting . Pero me puse analizar mejor y entendí como hacerlo.

Cita:Puedes hacer un tutorial mas ordenado y explicando mejor a los usuarios, porque medio lo lei y me ardieron los ojos Oh god why

Estoy de acuerdo con Nazi.- , tuve que leerlo muchas veces y me dolió la cabeza. Insecure

a mi me duele solo ver que respondes a los temas v: y verte entre los usuarios en linea



RE: [ZA] Agregar una Categoria por natives facil y sencilla - Exertency - 20/05/2018

(20/05/2018, 12:41 AM)Skylar escribió:
(19/05/2018, 07:32 PM)Hypnotize escribió:
(19/05/2018, 07:12 PM)El pirucho XP-007 escribió: Insecure No lo entendí a la primera Interesting . Pero me puse analizar mejor y entendí como hacerlo.

Cita:Puedes hacer un tutorial mas ordenado y explicando mejor a los usuarios, porque medio lo lei y me ardieron los ojos Oh god why

Estoy de acuerdo con Nazi.- , tuve que leerlo muchas veces y me dolió la cabeza. Insecure

a mi me duele solo ver que respondes a los temas v: y verte entre los usuarios en linea



RE: [ZA] Agregar una Categoria por natives facil y sencilla - luisches - 27/07/2018

Buenas Noches perdonen la Molestia donde tengo que resgistrar el el Menu


public show_nueva_categoria(id) //ojo aqui es donde usan el nombre anterior
{
new iMenu = menu_create( "\yNOMBRE DE TU MENU", "categoria_nueva"/*aqui va el nombre del public de abaja-aqui llamamos a los items registrados*/ );

if(g_level[id] >= aqui ponen el level que se necesita para el arma)
menu_additem( iMenu, "\wBalrog-I [Desbloqueado]", "1" );//haci se agregan los items al menu de esta forma se pueden agregar mas
else
menu_additem( iMenu, "\dBalrog-I [Nivel: x]", "1" );//esto es solo para hacer el efecto de que no la tienes desbloqueada por tu level

if(g_level[id] >= 5)
menu_additem( iMenu, "\wSkulls-4 [Desbloqueado]", "1" );
else
menu_additem( iMenu, "\dSkulls-4 [Nivel: 5]", "1" );

menu_display( id, iMenu, 0 );
}
public categoria_nueva( id, menu, item)//recuerden poner el mismo nombre que pusimos en las lineas de arriba
{
switch(item)
{
case 0:
{
if(g_level[id] >= x level)// aqui volvemos a ponerle nivel
give_b1(id) // aqui damos el arma por native
else
show_nueva_categoria(id) //y si no se comple eso simplemente devolvemos al menu
}
case 1:
{
if(g_level[id] >= 5)
give_weapon_skull4(id)
else
open_menu_armas(id)
}
case MENU_EXIT:
{
menu_destroy(menu);
return PLUGIN_HANDLED;
}
}

menu_destroy(menu);
return PLUGIN_HANDLED;
}

Donde coloco esto Si no es tanta la Molestia de antemano Muchas Gracias


RE: [ZA] Agregar una Categoria por natives facil y sencilla - Saber - 27/07/2018

Código PHP:
public show_nueva_categoria(id//ojo aqui es donde usan el nombre anterior

new 
iMenu menu_create"\yNOMBRE DE TU MENU""categoria_nueva"/*aqui va el nombre del public de abaja-aqui llamamos a los items registrados*/ );

if(
g_level[id] >= aqui ponen el level que se necesita para el arma)
menu_additemiMenu"\wBalrog-I [Desbloqueado]""1" );//haci se agregan los items al menu de esta forma se pueden agregar mas
else
menu_additemiMenu"\dBalrog-I [Nivel: x]""1" );//esto es solo para hacer el efecto de que no la tienes desbloqueada por tu level

if(g_level[id] >= 5)
menu_additemiMenu"\wSkulls-4 [Desbloqueado]""1" );
else
menu_additemiMenu"\dSkulls-4 [Nivel: 5]""1" );

menu_displayidiMenu);
}
public 
categoria_nuevaidmenuitem)//recuerden poner el mismo nombre que pusimos en las lineas de arriba
{
switch(
item)
{
case 
0:
{
if(
g_level[id] >= x level)// aqui volvemos a ponerle nivel
give_b1(id// aqui damos el arma por native
else
show_nueva_categoria(id//y si no se comple eso simplemente devolvemos al menu
}
case 
1:
{
if(
g_level[id] >= 5)
give_weapon_skull4(id)
else
open_menu_armas(id)
}
case 
MENU_EXIT:
{
menu_destroy(menu);
return 
PLUGIN_HANDLED;
}
}

menu_destroy(menu);
return 
PLUGIN_HANDLED;


Este es la funcion del menu, se encuentra en la linea 4685 Hay sale el menu de las armas, y tienes que agregarla. Si tienes algun otro error, postealo en scripting, o aqui mismo.

Otra cosa, cuando escribas y vallas a poner un codigo preciona el boton de arriba que dice PHP para que salga bien el codigo


RE: [ZA] Agregar una Categoria por natives facil y sencilla - Saymn101 - 22/03/2019

bueno gracias