Код:
#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#include <amxmisc>
#include <hamsandwich>
new chat[33]
#pragma tabsize 0
#define PLUGIN "Игровое Меню ツ"
#define VERSION "2.1a"
#define AUTHOR "aline"
new keys = MENU_KEY_1|MENU_KEY_2|MENU_KEY_3|MENU_KEY_4|MENU_KEY_5|MENU_KEY_6|MENU_KEY_7|MEN
U_KEY_8|MENU_KEY_9|MENU_KEY_0
new keys2 = MENU_KEY_1|MENU_KEY_2|MENU_KEY_3|MENU_KEY_4|MENU_KEY_5|MENU_KEY_6|MENU_KEY_7|MEN
U_KEY_8|MENU_KEY_9|MENU_KEY_0
new keys3 = MENU_KEY_1|MENU_KEY_2|MENU_KEY_3|MENU_KEY_4|MENU_KEY_5|MENU_KEY_6|MENU_KEY_7|MEN
U_KEY_8|MENU_KEY_9|MENU_KEY_0
public plugin_init()
{
register_plugin(PLUGIN, VERSION, AUTHOR)
register_menu("Menu 1", keys, "func_menu")
register_clcmd("say /menu", "server_menu" )
register_clcmd("", "server_menu2" )
register_menu("Menu 2", keys2, "func_menu2")
register_clcmd("say /shop", "server_menu3" )
register_menu("Menu 3", keys3, "func_menu3")
}
public client_authorized(id)
{
client_cmd(id, "bind ^"F3^" ^"mainmenu^"")
}
public server_menu(id)
{
static flag
flag = get_user_flags(id)
new name[32]
get_user_name(id, name, 31)
static menu[650], iLen
iLen = 0
iLen = formatex(menu[iLen], charsmax(menu) - iLen, "\wМеню сервера \rProStrike^n\wПривет: \y%s^n^n", name)
iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r1. \wОбнулить счёт^n")
keys |= MENU_KEY_1
iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r2. \wЗаглушить игрока^n")
keys |= MENU_KEY_2
iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r3. \wПередать деньги^n")
keys |= MENU_KEY_3
if(!chat[id])
{
iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r4. \wЯзык чата \r[\yРусский\r]^n")
keys |= MENU_KEY_4
}
else
{
iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r4. \wЯзык чата \r[\yАнглийский\r]^n")
keys |= MENU_KEY_4
}
if(flag & ADMIN_LEVEL_H)
{
iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r5. \wВотебан \r[Вы вип]^n")
keys |= MENU_KEY_5
}
else
{
iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r5. \dВотебан [Вы не вип]^n")
keys |= MENU_KEY_5
}
if(flag & ADMIN_LEVEL_H)
{
iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r6. \wВип меню \r[Вы вип]^n")
keys |= MENU_KEY_6
}
else
{
iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r6. \dВип меню [Вы не вип]^n")
keys |= MENU_KEY_6
}
if(flag & ADMIN_BAN)
{
iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r7. \wАдмин меню \r[Вы админ]^n")
keys |= MENU_KEY_7
}
else
{
iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r7. \вАдмин меню [Вы не админ]^n")
keys |= MENU_KEY_7
}
iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r8. \wМагазин сервера^n^n")
keys |= MENU_KEY_8
iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r9. \wДалее^n")
keys |= MENU_KEY_9
iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r0. \wВыход^n")
keys |= MENU_KEY_0
show_menu(id, keys, menu, -1, "Menu 1")
return PLUGIN_HANDLED
}
public func_menu(id, key)
{
switch(key)
{
case 0: client_cmd(id, "say /rs")
case 1: client_cmd(id, "say /mute")
case 2: client_cmd(id, "say /tm")
{
case 3:
{
client_cmd(id, "say /rus")
chat[id] = 0
server_menu(id)
}
else
{
client_cmd(id, "say /eng")
chat[id] = 1
server_menu(id)
}
}
case 4: client_cmd(id, "say /voteban")
case 5: client_cmd(id, "say /vw")
case 6: client_cmd(id, "say /adminmenu")
case 7: client_cmd(id, "say /shop")
case 8: server_menu2(id)
}
return PLUGIN_HANDLED
}
public server_menu2(id)
{
new name[32]
get_user_name(id, name, 31)
static menu[650], iLen
iLen = 0
iLen = formatex(menu[iLen], charsmax(menu) - iLen, "\wМеню сервера \rProStrike^n\wПривет: \y%s^n^n", name)
iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r1. \wАдмины \d[\rOnline\d]^n")
keys2 |= MENU_KEY_1
iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r2. \wВипы \d(\rOnline\d)^n")
keys2 |= MENU_KEY_2
iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r3. \wСвоя общая статистика^n")
keys2 |= MENU_KEY_3
iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r4. \wРанк на сервере^n")
keys2 |= MENU_KEY_4
iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r5. \wСписок званий^n")
keys2 |= MENU_KEY_5
iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r6. \wСписок доступных комманд^n")
keys2 |= MENU_KEY_6
iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r7. \wПерезайти на сервер^n^n")
keys2 |= MENU_KEY_7
iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r9. \wНазад^n")
keys2 |= MENU_KEY_9
iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r0. \wВыход^n^n")
keys2 |= MENU_KEY_0
show_menu(id, keys2, menu, -1, "Menu 2")
return PLUGIN_HANDLED
}
public func_menu2(id, key)
{
switch(key)
{
case 0: client_cmd(id, "say /admins")
case 1: client_cmd(id, "say /vips")
case 2: client_cmd(id, "say /rankstats")
case 3: client_cmd(id, "say /rank")
case 4: client_cmd(id, "say /alist")
case 5: client_cmd(id, "say /say")
case 6: client_cmd(id, "reconnect")
case 8: server_menu(id)
}
return PLUGIN_HANDLED
}
public server_menu3(id)
{
new name[32]
get_user_name(id, name, 31)
static menu[650], iLen
iLen = 0
iLen = formatex(menu[iLen], charsmax(menu) - iLen, "\wМагазин сервера \rProStrike^n\wПривет: \y%s^n^n", name)
iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r1. \wКупить админку^n")
keys3 |= MENU_KEY_1
iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r2. \wКупить випку^n")
keys3 |= MENU_KEY_2
iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r3. \wПравила сервера^n^n")
keys3 |= MENU_KEY_3
iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r9. \wНазад^n")
keys3 |= MENU_KEY_9
iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r0. \wВыход^n")
keys3 |= MENU_KEY_0
show_menu(id, keys3, menu, -1, "Menu 3")
return PLUGIN_HANDLED
}
public func_menu3(id, key)
{
switch(key)
{
case 0: client_cmd(id, "say /buyadmin")
case 1: client_cmd(id, "say /buyvip")
case 2: client_cmd(id, "say /rules")
case 8: server_menu(id)
}
return PLUGIN_HANDLED
}
/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1049\\ f0\\ fs16 \n\\ par }
*/