27/02/2014, 07:15 PM
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!
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;
}