// Drunkenmonkey's ZombieCommand Menu
// Script by Drunkenmonkey[No.1]
//
// This Script shows a ZombieCommand Menu for Players.
//
//
www.minespace.de
// forum.minespace.de
// s.minespace.de
#include <sourcemod>
#include <colors>
#include <sdktools>
#define PLUGIN_VERSION "1.1"
#pragma semicolon 1
new Handle:g_zVote;
new Handle:h_timer = INVALID_HANDLE;
public Plugin:myinfo =
{
name = "[Dr.]ZombieCMD Menue",
author = "DrunkenMonkey[No.1]",
description = "Shows a CMDmenue to connected players.",
version = PLUGIN_VERSION,
url = "http://forum.minespace.de"
}
public OnPluginStart()
{
RegConsoleCmd("sm_zconfig", Command_Choose, "Open a Command Menu");
g_zVote = BuildVoteMenu();
}
public Action:Command_Choose(client, args)
{
ShowMenu(client);
return Plugin_Handled;
}
public OnClientPutInServer(client)
{
if(IsClientConnected(client) && IsClientInGame(client))
{
ShowMenu(client);
}
}
ShowMenu(client)
{
new Handle:menu = CreateMenu(MenuHandler);
SetMenuTitle(menu, "[Jail Outbreak] Menu");
AddMenuItem(menu, "1", "Verweigern [!v]");
AddMenuItem(menu, "2", "Ergeben [!e]");
AddMenuItem(menu, "3", "Würfeln [!dice]");
AddMenuItem(menu, "4", "Model [!models]");
AddMenuItem(menu, "5", "Wunsch [!lr]");
AddMenuItem(menu, "6", "Vote [nominate, rtv]");
AddMenuItem(menu, "7", "Sound List [!soundlist]");
AddMenuItem(menu, "8", "Admin [!admin]");
DisplayMenu(menu, client, 300);
}
Handle:BuildVoteMenu()
{
new Handle:vote = CreateMenu(Menu_Vote);
SetMenuTitle(vote, "[Jail Outbreak] Vote Menu");
AddMenuItem(vote, "1", "Nominate");
AddMenuItem(vote, "2", "RTV");
AddMenuItem(vote, "3", "Main Menu");
return vote;
}
public MenuHandler(Handle:menu, MenuAction:action, client, param2)
{
if(action == MenuAction_Select)
{
param2++;
new String:info[64];
GetMenuItem(menu, param2-1, info, sizeof(info));
if (StrEqual(info,"1"))
{
FakeClientCommand(client, "say !v");
ShowMenu(client);
}
if (StrEqual(info,"2"))
{
FakeClientCommand(client, "say !e");
h_timer = CreateTimer(0.5, FallDown2,client);
}
if (StrEqual(info,"3"))
{
FakeClientCommand(client, "say !dice");
ShowMenu(client);
}
if (StrEqual(info,"4"))
{
FakeClientCommand(client, "say !models");
}
if (StrEqual(info,"5"))
{
FakeClientCommand(client, "say !lr");
}
if (StrEqual(info,"6"))
{
DisplayMenu(g_zVote, client, 30);
}
if (StrEqual(info,"7"))
{
FakeClientCommand(client, "say !soundlist");
h_timer = CreateTimer(0.5, FallDown,client);
}
if (StrEqual(info,"8"))
{
FakeClientCommand(client, "say !admin");
}
}
else if(action == MenuAction_End)
{
CloseHandle(menu);
}
}
public Menu_Vote(Handle:vote, MenuAction:action, client, param2)
{
if (action == MenuAction_Select)
{
param2++;
new String:info[64];
GetMenuItem(vote, param2-1, info, sizeof(info));
if (StrEqual(info,"1"))
{
FakeClientCommand(client, "say nominate");
}
if (StrEqual(info,"2"))
{
FakeClientCommand(client, "say rtv");
}
if (StrEqual(info,"3"))
{
ShowMenu(client);
}
}
}
public Action:FallDown(Handle:timer,any:client)
{
FakeClientCommand(client, "say !soundlist");
}
public Action:FallDown2(Handle:timer,any:client)
{
FakeClientCommand(client, "say !models");
}