Hola, anoche se me dio por intentar ver como es la estructura de un submenu asi que me puse a buscar algun ejemplo para tomar de base... lo implemente y funciono al mostrar el primer menu y luego al seleccionar una opcion del PRIMER MENU me mostraba el otro menu PERO EL PROBLEMA ES QUE EN EL SEGUNDO MENU "NO ME DEJA ELEGIR NINGUNA OPCION" puede que sea algo de los cases pero lo hice 2 veces y de manera diferente yo vivo salado (sin suerte) asi que no me sorprende que siempre me pasen cosas asi ... pero si alguien puede ayudarme en un tiempo que tenga estaria muy agradecido. Ademas dejo el code por si a alguien le interesa aprender tambien:
Código PHP:
/* Plugin generated by AMXX-Studio */
#include <amxmodx>
#include <amxmisc>
#define PLUGIN "New Plug-In"
#define VERSION "1.0"
#define AUTHOR "author"
new KEYSMENU = MENU_KEY_0 | MENU_KEY_1 | MENU_KEY_2 | MENU_KEY_3 | MENU_KEY_4 | MENU_KEY_5 | MENU_KEY_6 | MENU_KEY_7 | MENU_KEY_8 | MENU_KEY_9
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
register_clcmd("say /con", "show_menu_color");
register_menu("MenuColor", KEYSMENU, "menu_color");
register_menu("MenuColor2", KEYSMENU, "menu_color2");
register_menu("MenuInfanteria", KEYSMENU, "menu_infanteria");
}
// MenuColor
public show_menu_color(id)
{
new menu[1000], len;
len = 0;
len += formatex(menu[len], sizeof menu - 1 - len, "\r Menu de datos para contactarte con:^n");
len += formatex(menu[len], sizeof menu - 1 - len, "\y[1]\wDUEñOS^n");
len += formatex(menu[len], sizeof menu - 1 - len, "\y[2]\wADMINES^n^n");
len += formatex(menu[len], sizeof menu - 1 - len, "\y Por compra, ventas o emergencias de admines \rOPCION 1^n");
len += formatex(menu[len], sizeof menu - 1 - len, "\r[0]\wSalir");
show_menu(id, KEYSMENU, menu, -1, "MenuColor")
}
// Menu DUENIOS
public show_menu2_color(id)
{
new menu[1000], len;
len = 0;
len += formatex(menu[len], sizeof menu - 1 - len, "\r Selecciona a uno para ver los datos:^n");
len += formatex(menu[len], sizeof menu - 1 - len, "\y[1]\wXXXX^n");
len += formatex(menu[len], sizeof menu - 1 - len, "\y[2]\wJx^n^n");
len += formatex(menu[len], sizeof menu - 1 - len, "\r[9]\wAtras^n");
len += formatex(menu[len], sizeof menu - 1 - len, "\r[0]\wSalir");
show_menu(id, KEYSMENU, menu, -1, "MenuColor2")
}
// Menu INFANTERIA
public show_menu_infanteria(id)
{
new menu[1000], len;
len = 0;
len += formatex(menu[len], sizeof menu - 1 - len, "\w FICHA DE CONTACTO ^n^n");
len += formatex(menu[len], sizeof menu - 1 - len, "\y NOMBRE : \d xxxx \w( xxxx )^n");
len += formatex(menu[len], sizeof menu - 1 - len, "\y HORARIOS : \d Cualquier momento del dia^n");
len += formatex(menu[len], sizeof menu - 1 - len, "\r FORMAS DE CONTACTO: ^n^n");
len += formatex(menu[len], sizeof menu - 1 - len, "\y FACE : \d fxxxx^n");
len += formatex(menu[len], sizeof menu - 1 - len, "\y CELULAR : \d xxxxxx^n^n");
len += formatex(menu[len], sizeof menu - 1 - len, "\r[9]\wAtras^n");
len += formatex(menu[len], sizeof menu - 1 - len, "\r[0]\wSalir");
show_menu(id, KEYSMENU, menu, -1, "MenuInfanteria")
}
public menu_color(id, key)
{
switch (key)
{
//TE MANDA AL MENU TEORICAMENTE DE DUENIOS
case 0:
{
show_menu2_color(id)
}
case 1:
{
show_menu2_color(id)
}
//BUENO ACA ENTRE LAS OPCIONES 3 A 9 LO QUE HARA ES VOLVER A MOSTRARTE EL MENU PARA QUE NO SE TE SALGA
case 2..8:
{
show_menu_color(id)
}
// DALE EXIT
case 9:
{
return PLUGIN_HANDLED
}
}
return PLUGIN_HANDLED;
}
public menu_color2(id, key)
{
switch (key)
{
case 0:
{
show_menu_infanteria(id)
}
//ES PARA LOS ESTUPIDOS QUE PRESIONAN CUALQUIER TECLA CON ESTO NO SE LES SALE EL MENU
case 1..7:
{
show_menu2_color(id)
}
// ANTERIOR
case 8:
{
show_menu_color(id)
}
// SALIR
case 9:
{
return PLUGIN_HANDLED
}
}
return PLUGIN_HANDLED;
}
public menu_infanteria(id, key)
{
switch (key)
{
//ACA HACEMOS QUE DESDE 1 A 8 ELIJA QUEDARSE EN EL MENU COMO HICIMOS ARRIBA
case 0..7:
{
show_menu_infanteria(id)
}
//CON ESTO MUESTRA EL MENU ANTERIOR ES DECIR ES EL BOTON ANTERIOR
case 8:
{
show_menu2_color(id)
}
// Y ESTO ES SIMPLE DE ENTENDER ESTO ES SALIR
case 9:
{
return PLUGIN_HANDLED
}
}
return PLUGIN_HANDLED;
}