Player Menu [Ayuda]
#1
Hola gente!

en los servidores tengo varios comandos de acceso publico como por ej: /server , /admins, voteban, etc etc..
Mi idea es hacer un menu en el cual aparezcan todos estos comandos, ya tengo algo pero se que esta mal y me falta algo..
Aver si me pueden ayudar;
Desde ya, les doy las gracias!

Código:
#include <sourcemod>

public Plugin:myinfo =
{
    name = "test",
    author = "test",
    description = "test",
    version = "1.0",
    url = ""
};


public OnPluginStart()
{
    RegConsoleCmd("menu_test", Menu_Test);
}

public Action:Menu_Test(client, args)
{
    new Handle:menu = CreateMenu(Menu_Commands, MenuAction_Select | MenuAction_End | MenuAction_DisplayItem);
    SetMenuTitle(menu, "Player Commands");

    AddMenuItem(menu, "/admin", "Admins Online");
    AddMenuItem(menu, "/server", "Redirect Server");
    AddMenuItem(menu, "Voteban", "Voteban");
    AddMenuItem(menu, "votekick", "Votekick");
    AddMenuItem(menu, "/rs", "Reset Score");

    DisplayMenu(menu, client, MENU_TIME_FOREVER);
}

public Menu_Commands(Handle:menu, MenuAction:action, param1, param2)
{
    switch (action)
    {
        case MenuAction_Select:
        {
            //param1 is client, param2 is item

            new String:item[64];
            GetMenuItem(menu, param2, item, sizeof(item));

            if (StrEqual(item, "/admin"))
            {

            }
            else if (StrEqual(item, "/server"))
            {

            }
            else if (StrEqual(item, "Voteban"))
            {

            }
            else if (StrEqual(item, "votekick"))
            {

            }
            else if (StrEqual(item, "/rs"))
            {

            }
        }

        case MenuAction_End:
        {
            //param1 is MenuEnd reason, if canceled param2 is MenuCancel reason
            CloseHandle(menu);

        }

        case MenuAction_DisplayItem:
        {
            //param1 is client, param2 is item

            new String:item[64];
            GetMenuItem(menu, param2, item, sizeof(item));

            if (StrEqual(item, "/admin"))
            {
                new String:translation[128];
                Format(translation, sizeof(translation), "%T", "/admin", param1);
                return RedrawMenuItem(translation);
            }
            else if (StrEqual(item, "/server"))
            {
                new String:translation[128];
                Format(translation, sizeof(translation), "%T", "/server", param1);
                return RedrawMenuItem(translation);
            }
            else if (StrEqual(item, "Voteban"))
            {
                new String:translation[128];
                Format(translation, sizeof(translation), "%T", "Voteban", param1);
                return RedrawMenuItem(translation);
            }
            else if (StrEqual(item, "votekick"))
            {
                new String:translation[128];
                Format(translation, sizeof(translation), "%T", "votekick", param1);
                return RedrawMenuItem(translation);
            }
            else if (StrEqual(item, "/rs"))
            {
                new String:translation[128];
                Format(translation, sizeof(translation), "%T", "/rs", param1);
                return RedrawMenuItem(translation);
            }
        }

    }
    return 0;
}
Responder
#2
Aqui tienes Modificado por mi para ti Un Abrazo! Sonrisa
Código PHP:
#include <amxmodx> // Obligatorio
#include <fun> // Necesario para setear la vida

#define PLUGIN    "Menu Simple"
#define AUTHOR    "AfteR ;)"
#define VERSION    "1.0"


// Registramos esta variable
new cvar_vida

public plugin_init() 

    
// Registro el Plugin 
    
register_plugin(PLUGINVERSIONAUTHOR
    
    
// say /menu 
    
register_clcmd("say /menu""abrir_menu"//ESCRIBE AQUÍ EL /ALGO
    
    // Nuevas Cvars
    
cvar_vida register_cvar("nueva_vida""50")


// Abriendo el menu... 
public abrir_menu(id

        
        
/* Colores:
        \w = Blanco
        \r = Rojo
        \d = Gris
        \y = Amarillo
        */
        
        // Creamos el menu     // El titulo 
        
new Menu menu_create("\wMenu Pedido""mostrar_menu"
        
menu_additem(Menu"\wAdmin""1"0
        
menu_additem(Menu"\wServer""2"0
        
menu_additem(Menu"\wVoteban""3"0
        
menu_additem(Menu"\wVotekick""4"0
        
menu_additem(Menu"\wRS""5"0
        
// Opcion Salir
        
menu_setprop(Menu,MPROP_EXITNAME,"Salir")
        
        
        
menu_display(idMenu0


// Registramos lo que va a hacer el Menu: 
public mostrar_menu(idMenuitem

    if (
item == MENU_EXIT
    { 
        
menu_destroy(Menu
        return 
PLUGIN_HANDLED 
    

    
    
// Variables Obligatorias
    
new iData[6]; 
    new 
iAccess
    new 
iCallback
    new 
iName[64]; 
    
menu_item_getinfo(MenuitemiAccessiData5iName63iCallback
    
    
// Opciones
    
switch (str_to_num(iData)) 
    { 
        case 
1client_cmd (id"/admin")
        } 
        case 
2client_cmd (id"/server")
        { 
        case 
3client_cmd (id"/voteban")
        { 
        case 
4client_cmd (id"/votekick")    
        {
                  case 
5client_cmd (id"/rs")
        } 
    } 
    
    return 
PLUGIN_HANDLED 

Responder
#3
no revivas temas, además, mira que estás en sourcemod.
(17/04/2015, 03:36 PM)Neeeeeeeeeel.- escribió: No se va a volver a conectar a internet en toda su puta vida... nadie sube porno a mi foro y vive para contarlo.
Responder
#4
Igual vale la intencion, yo arme este post y al final encontre el menu.. lo dejo por si alguien en algun momento lee y lo necesita:

https://forums.alliedmods.net/showthread...7?p=637467
Responder


Salto de foro:


Usuarios navegando en este tema: 1 invitado(s)