Правила форума Гаранты форума
Размещение рекламы AMX-X компилятор

Здравствуйте, гость Вход | Регистрация

Наши новости:

14-дек
24-апр
10-апр
11-апр

2 страниц V   1 2

Меню игрока на букве М

Статус пользователя BaJIepbI4
сообщение 16.9.2014, 16:09
Сообщение #1


Стаж: 11 лет

Сообщений: 457
Благодарностей: 115
Полезность: 456

Добрый день!
Уважаемыые знатоки кода, кто может помочь сделать менюшку, вызываемую по нажатию буквы М, где обычно стоит выбор команды?



Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
Статус пользователя DeNyS91
сообщение 16.9.2014, 17:07
Сообщение #2


Стаж: 15 лет

Сообщений: 151
Благодарностей: 34
Полезность: 166

client_cmd(id, "bind ^"F3^" ^"menu^"")


измени бинд F3 на M
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Sky Cat
сообщение 16.9.2014, 17:10
Сообщение #3
Стаж: 13 лет
Город: Белгород

Сообщений: 1179
Благодарностей: 733
Полезность: 1056

Знатоки против вмешательства в клиент игрока без разрешения последнего.


я знаю, что я ничего не знаю
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
voed
сообщение 16.9.2014, 17:14
Сообщение #4
Стаж: 11 лет

Сообщений: 2593
Благодарностей: 1760
Полезность: 405

Цитата(Sky Cat @ 16.9.2014, 17:10) *
Знатоки против вмешательства в клиент игрока без разрешения последнего.

все равно на стиме не забиндит)
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя BaJIepbI4
сообщение 16.9.2014, 17:15
Сообщение #5


Стаж: 11 лет

Сообщений: 457
Благодарностей: 115
Полезность: 456

Цитата(DeNyS91 @ 16.9.2014, 18:07) *
client_cmd(id, "bind ^"F3^" ^"menu^"")


измени бинд F3 на M


Так нельзя :)

Клиент блочит биндинг.



Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя serverhost
сообщение 16.9.2014, 17:18
Сообщение #6


Стаж: 13 лет

Сообщений: 433
Благодарностей: 290
Полезность: 695

Цитата(Villlenka @ 16.9.2014, 18:09) *
Добрый день!
Уважаемыые знатоки кода, кто может помочь сделать менюшку, вызываемую по нажатию буквы М, где обычно стоит выбор команды?

в место client_cmd(id, "bind ^"F3^" ^"menu^"")
register_clcmd("chooseteam", "menu", ADMIN_ALL);

Так попробуйте

Отредактировал: serverhost, - 16.9.2014, 17:21
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Bloo
сообщение 16.9.2014, 17:19
Сообщение #7


Стаж: 12 лет

Сообщений: 15547
Благодарностей: 6971
Полезность: 1206

Villlenka, тут где то выкладывали такую менюшку, поищи.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
voed
сообщение 16.9.2014, 17:22
Сообщение #8
Стаж: 11 лет

Сообщений: 2593
Благодарностей: 1760
Полезность: 405

Код:


public plugin_init()
{
register_clcmd( "chooseteam", "cmdChooseTeam")
}

public cmdChooseTeam(id)
{
//ваш код
return PLUGIN_HANDLED
}
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя Sky Cat
сообщение 16.9.2014, 17:24
Сообщение #9
Стаж: 13 лет
Город: Белгород

Сообщений: 1179
Благодарностей: 733
Полезность: 1056

Цитата(voed @ 16.9.2014, 19:14) *
все равно на стиме не забиндит)

Этот код да, но есть другой. Я в общем суть обрисовал;)


я знаю, что я ничего не знаю
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя serverhost
сообщение 16.9.2014, 17:47
Сообщение #10


Стаж: 13 лет

Сообщений: 433
Благодарностей: 290
Полезность: 695

Код:
#include <amxmodx>
#include <engine>

#define PLUGIN "menu"
#define VERSION "1.0"
#define AUTHOR "autor"

public plugin_init() {
register_clcmd("chooseteam", "menu", ADMIN_ALL);
}

public menu(id) {
new i_Menu = menu_create("\wНазвание меню", "menu_handler");
menu_additem(i_Menu, "\r1 пункт", "1", 0);
menu_additem(i_Menu, "\w2 пункт", "2", 0);
menu_additem(i_Menu, "\r3 пункт", "3", 0);
menu_additem(i_Menu, "\w4 пункт", "4", 0);
menu_additem(i_Menu, "\r5 пункт", "5", 0);

menu_setprop(i_Menu, MPROP_EXITNAME, "Выход");

menu_display(id, i_Menu, 0)
}

public menu_handler(id, menu, item) {
if( item < 0 ) return PLUGIN_CONTINUE;
new cmd[3], access, callback;
new pashalka
--pashalka++ //Передергиваем переменную
menu_item_getinfo(menu, item, access, cmd,2,_,_, callback);
new Choise = str_to_num(cmd)
switch (Choise) {
case 1: {
код
}
case 2: {
код
}
case 3: {
код
}
case 4: {
код
}
case 5: {
код
}
}
return PLUGIN_HANDLED;
}


Отредактировал: serverhost, - 16.9.2014, 17:47
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя BaJIepbI4
сообщение 16.9.2014, 20:32
Сообщение #11


Стаж: 11 лет

Сообщений: 457
Благодарностей: 115
Полезность: 456

Цитата(serverhost @ 16.9.2014, 18:47) *
Код:
#include <amxmodx>
#include <engine>

#define PLUGIN "menu"
#define VERSION "1.0"
#define AUTHOR "autor"

public plugin_init() {
register_clcmd("chooseteam", "menu", ADMIN_ALL);
}

public menu(id) {
new i_Menu = menu_create("\wНазвание меню", "menu_handler");
menu_additem(i_Menu, "\r1 пункт", "1", 0);
menu_additem(i_Menu, "\w2 пункт", "2", 0);
menu_additem(i_Menu, "\r3 пункт", "3", 0);
menu_additem(i_Menu, "\w4 пункт", "4", 0);
menu_additem(i_Menu, "\r5 пункт", "5", 0);

menu_setprop(i_Menu, MPROP_EXITNAME, "Выход");

menu_display(id, i_Menu, 0)
}

public menu_handler(id, menu, item) {
if( item < 0 ) return PLUGIN_CONTINUE;
new cmd[3], access, callback;
new pashalka
--pashalka++ //Передергиваем переменную
menu_item_getinfo(menu, item, access, cmd,2,_,_, callback);
new Choise = str_to_num(cmd)
switch (Choise) {
case 1: {
код
}
case 2: {
код
}
case 3: {
код
}
case 4: {
код
}
case 5: {
код
}
}
return PLUGIN_HANDLED;
}


Проблема в том, что в этой менюшке первый пункутом идет "Выбор команды", а это также chooseteam и получается, что через "Выбор команды" я вызываю опять это же меню. Замкнутый круг в итоге.




Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
voed
сообщение 16.9.2014, 20:37
Сообщение #12
Стаж: 11 лет

Сообщений: 2593
Благодарностей: 1760
Полезность: 405

Цитата(Villlenka @ 16.9.2014, 20:32) *
Проблема в том, что в этой менюшке первый пункутом идет "Выбор команды", а это также chooseteam и получается, что через "Выбор команды" я вызываю опять это же меню. Замкнутый круг в итоге.

Создай новое меню выбора команды
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя BaJIepbI4
сообщение 16.9.2014, 21:10
Сообщение #13


Стаж: 11 лет

Сообщений: 457
Благодарностей: 115
Полезность: 456

Цитата(voed @ 16.9.2014, 21:37) *
Создай новое меню выбора команды


А подробнее?



Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Orty_Hart
сообщение 16.9.2014, 21:33
Сообщение #14
Стаж: 14 лет

Сообщений: 1399
Благодарностей: 408
Полезность: 725

Villlenka,
Взято с Zombie Mod:
Скрытый текст
Код
register_clcmd("chooseteam", "clcmd_changeteam")
register_clcmd("jointeam", "clcmd_changeteam")

// Block Team Change
public clcmd_changeteam(id)
{
    static team
    team = fm_cs_get_user_team(id)
    
    // Unless it's a spectator joining the game
    if (team == FM_CS_TEAM_SPECTATOR || team == FM_CS_TEAM_UNASSIGNED)
        return PLUGIN_CONTINUE;
    
    // Pressing 'M' (chooseteam) ingame should show the main menu instead
    show_menu_game(id)
    return PLUGIN_HANDLED;
}


Цитата
Проблема в том, что в этой менюшке первый пункутом идет "Выбор команды", а это также chooseteam и получается, что через "Выбор команды" я вызываю опять это же меню. Замкнутый круг в итоге.


тогда вызывайте chooseteam_1
ловим chooseteam_1 и ставим какому-то атрибуту значение false
после вызываем chooseteam
а в функции, которую вызвали, проверяем что если чтото равняется false то меню не открывает и завершаем return PLUGIN_CONTINUE;
но перед тем как завершить, возвращаем true вместо false

Пример:

Скрытый текст
Код
new act_menu[33] = 1; // Т.е. Вкл.

public plugin_init()
{
    register_clcmd("chooseteam", "clcmd_changeteam")
    register_clcmd("jointeam", "clcmd_changeteam")
}

public clcmd_changeteam(id)
{
    if(act_menu[id] == 0) // Если меню Выкл.
    {
        act_menu[id] = 1; // Включаем меню.
        return PLUGIN_CONTINUE; // Открываем окно выбора тимы...
    }
    
    // Вызываем меню.
    // Если выбрали пункт меню "Выбор тимы" act_menu[id] = 0;
    // И повторно вызываем chooseteam;
    return PLUGIN_HANDLED;
}


может показаться бредом, но на мой взгляд это 1н выход...

Отредактировал: Orty_Hart, - 16.9.2014, 21:45
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя BaJIepbI4
сообщение 17.9.2014, 13:24
Сообщение #15


Стаж: 11 лет

Сообщений: 457
Благодарностей: 115
Полезность: 456

Цитата(Orty_Hart @ 16.9.2014, 22:33) *
....может показаться бредом, но на мой взгляд это 1н выход...


Ковырял коврял код, основываясь на этой идее. В итогу у меня получилось сделать ротацию менюшек, но возникла пара проблем:
1. При подключении игрока выводится не та менюшка:
Скрытый текст

Т.е. если я выбираю первый пункт у меня появляется менюшка выбора команды вот она и должна при подключении быть первой.
Скрытый текст

2. Пунктов 8,9 и 0 тут быть не должно.

Скрытый текст
Код
#include <amxmodx>
#include <fakemeta>

new bool:ChooseTeam_Used[33];
new bool:DetectVIPMap[33];


new act_menu[33] = 1; // Т.е. Вкл.

public plugin_init()
{
    register_plugin("Main Menu" , "1.0" , "villlenka" );
    
    register_message(get_user_msgid("ShowMenu"), "MenuTeam");
    register_message(get_user_msgid("VGUIMenu"), "VGUITeam");
    
    register_clcmd("chooseteam", "OpenMenu");
//    register_clcmd("say /mymenu", "clcmd_changeteam");
//    register_clcmd("chooseteam", "clcmd_changeteam")
//  register_clcmd("jointeam", "clcmd_changeteam")
    
    register_event("HLTV", "Event_HLTV_New_Round", "a", "1=0", "2=0");
    
        new entity = -1;
    if((engfunc(EngFunc_FindEntityByString, entity, "classname", "info_vip_start")) > 0)
    {
        DetectVIPMap[0] = true;
    }
    else
    {
        DetectVIPMap[0] = false;
    }
}

public Event_HLTV_New_Round(id)  
{
    arrayset(ChooseTeam_Used, false, sizeof(ChooseTeam_Used));
}  

public client_authorized(id)
{
    ChooseTeam_Used[id] = false;
}

public OpenMenu(id)
{
    if(DetectVIPMap[0] == false)
    {
        menu_cancel(id);
        TeamMenu(id);
        return PLUGIN_HANDLED;
    }
    return PLUGIN_CONTINUE;
}

public MenuTeam(msg, des, rec)
{
    if(DetectVIPMap[0] == false)
    {
        static const TeamSelect[] = "#Team_Select";
        
        static sz_Menu[sizeof(TeamSelect)];
        
        get_msg_arg_string(4, sz_Menu, charsmax(sz_Menu));
        
        if(!equal( sz_Menu, TeamSelect))
        {
            return PLUGIN_CONTINUE;
        }
        
        set_pdata_int(rec, 205, 0);
        
        TeamMenu(rec);
        
        return PLUGIN_HANDLED;
    }
    return PLUGIN_CONTINUE;
}

public VGUITeam(msg, des, rec)
{
    if(get_msg_arg_int(1) != 2)
    {
        return PLUGIN_CONTINUE;
    }
    
    TeamMenu(rec);
    
    return PLUGIN_HANDLED;
}

public TeamMenu(id)
{  
    if(ChooseTeam_Used[id] == true)
    {
        client_print(id, print_center, "Only 1 team change is allowed.");
        return PLUGIN_HANDLED;
    }
    
    if (act_menu[id] == 1)
    {
        new iPlayers[32], iNumCT , iNumT;
        get_players(iPlayers, iNumCT, "e", "CT" );
        get_players(iPlayers, iNumT, "e", "TERRORIST");
        
        new menu = menu_create("\yВыберите команду:", "TeamMenu_Handler");
        
        new szTittle[124];
        
        formatex(szTittle, charsmax(szTittle), "\wТеррористы \r[%d]", iNumT);
        menu_additem(menu, szTittle, "1")
        formatex(szTittle, charsmax(szTittle), "\wКонтр-террористы \r[%d]^n", iNumCT);
        menu_additem(menu, szTittle, "2")    
        menu_additem(menu, "\wАвыто-выбор", "3");
        menu_additem(menu, "\wНаблюдатели", "4");
        menu_setprop(menu, MPROP_EXITNAME, "Exit");
        
        menu_display(id, menu, 0);

                act_menu[id] = 0;
                
    }
    else
    {
        new menu = menu_create("Бодрый Public 16+","func_menu");
        menu_setprop( menu,MPROP_NUMBER_COLOR,"\r")
        menu_additem( menu,"\yВыбрать команду")
        menu_additem( menu,"Обнулить счет")
        menu_additem( menu,"Инфа о сервере")
    //  menu_setprop( menu,MPROP_PERPAGE, 3)
        menu_additem( menu,"Заткнуть игрока")            
        menu_additem( menu,"Сменить карту")
        menu_additem( menu,"Узнать топ15")
        menu_addblank( menu,-1)
        menu_additem( menu,"\yVIP \wменю","7",ADMIN_LEVEL_D)
        menu_additem( menu,"\rAdmin \wменю","8",ADMIN_ADMIN)
        menu_display(id, menu, 0);
        
    }
    return PLUGIN_CONTINUE;
}

public TeamMenu_Handler(id, menu, item)
{
    if(item == MENU_EXIT)
    {
        return PLUGIN_HANDLED;
    }
        
        new Name[64], Data[6], Access, Callback;
    
        menu_item_getinfo(menu, item, Access, Data, 5, Name, 63, Callback);
    
        static choose[4][2] = {"1","2","5","6"};
        engclient_cmd(id, "jointeam", choose[Data[0] - '1']);
    //    engclient_cmd(id, "menuselect","5");
        
        ChooseTeam_Used[id] = true;
        
        menu_destroy(menu);
                
        return PLUGIN_HANDLED;
}
    
public func_menu(id, menu, key)
{
  key++

  if(key==1)
    {
        act_menu[id] = 1;
        client_cmd(id,"chooseteam");
    }
  
  if(key==2) client_cmd(id,"say /rs")
  if(key==3) client_cmd(id,"say /motd")
  if(key==4) client_cmd(id,"say /mute")
  if(key==5) client_cmd(id,"say /rtv")
  if(key==6) client_cmd(id,"say /top15")
  if(key==7) client_cmd(id,"say /vipmenu")
  if(key==8) client_cmd(id,"say /amxmodmenu")
  
  return PLUGIN_HANDLED;
}


Отредактировал: Villlenka, - 17.9.2014, 13:35



Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Nixon
сообщение 17.9.2014, 14:41
Сообщение #16


Стаж: 12 лет

Сообщений: 399
Благодарностей: 192
Полезность: 589

Может это подойдёт:
123
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя BaJIepbI4
сообщение 17.9.2014, 15:13
Сообщение #17


Стаж: 11 лет

Сообщений: 457
Благодарностей: 115
Полезность: 456

Цитата(Nixon @ 17.9.2014, 15:41) *
Может это подойдёт:
123


Где же ты был раньше, добрый человек!!! Спасибо тебе огромное! clapping.gif



Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя BaJIepbI4
сообщение 25.9.2014, 15:12
Сообщение #18


Стаж: 11 лет

Сообщений: 457
Благодарностей: 115
Полезность: 456

Подредактировал плагин по ссылке выше под себя. Но есть изначальная проблема - не работает меню закупки, если на клиенте включен вид менюшек Old style. Если включить VGUI менюшки то все ок.
Помогите подредактировать этот плагин, чтобы работала закупка при включенном режиме менюшек Oldstyle menus.

Код:
         

#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#include <fakemeta>

#pragma semicolon 1

#define PLUGIN_NAME "Server Menu"
#define PLUGIN_VERS "1.0"
#define PLUGIN_AUTH "ConnorMcLeod"

public plugin_init() {
register_plugin(PLUGIN_NAME, PLUGIN_VERS, PLUGIN_AUTH);

register_message(get_user_msgid("ShowMenu"), "MessageShowMenu");
register_message(get_user_msgid("VGUIMenu"), "MessageVGUIMenu");

register_menu("JoinMenu", 563, "handled_JoinMenu");
register_menu("MainMenu", 1023, "handled_MainMenu");
}

public MessageShowMenu(iMsgID, iDest, id) {
if(!is_user_connected(id))
return PLUGIN_HANDLED;

static iMenuCode[21];
get_msg_arg_string(4, iMenuCode, charsmax(iMenuCode));

switch(iMenuCode[1]) {
case 'T': {
set_pdata_int(id, 205, 0);
return ClCmd_JoinMenu(id);
}

case 'I': {
set_pdata_int(id, 205, 0);
if(cs_get_user_team(id) == CS_TEAM_UNASSIGNED || cs_get_user_team(id) == CS_TEAM_SPECTATOR)
return ClCmd_JoinMenu(id);
else
return ClCmd_MainMenu(id);
}
}

return PLUGIN_HANDLED;
}

public MessageVGUIMenu(iMsgID, iDest, id) {
if(!is_user_connected(id))
return PLUGIN_HANDLED;

switch(get_msg_arg_int(1)) {
case 2: {
if(cs_get_user_team(id) == CS_TEAM_UNASSIGNED || cs_get_user_team(id) == CS_TEAM_SPECTATOR)
return ClCmd_JoinMenu(id);
else
return ClCmd_MainMenu(id);
}

default: return PLUGIN_HANDLED;
}

return PLUGIN_HANDLED;
}

public ClCmd_JoinMenu(id) {
new iMenu[256], iLen;
new iKeysMenu = MENU_KEY_5|MENU_KEY_0;

iLen = formatex(iMenu, charsmax(iMenu), "\rВыберите команду:^n^n");

if(cs_get_user_team(id) == CS_TEAM_T)
iLen += formatex(iMenu[iLen], charsmax(iMenu) - iLen, "\d1. Террористы [%d]^n", fnGetPlayerTeam(CS_TEAM_T));
else {
iKeysMenu |= MENU_KEY_1;
iLen += formatex(iMenu[iLen], charsmax(iMenu) - iLen, "\y1. \wТеррористы \d[%d]^n", fnGetPlayerTeam(CS_TEAM_T));
}

if(cs_get_user_team(id) == CS_TEAM_CT)
iLen += formatex(iMenu[iLen], charsmax(iMenu) - iLen, "\d2. Контр-Террористы [%d]^n^n", fnGetPlayerTeam(CS_TEAM_CT));
else {
iKeysMenu |= MENU_KEY_2;
iLen += formatex(iMenu[iLen], charsmax(iMenu) - iLen, "\y2. \wКонтр-Террористы \d[%d]^n^n", fnGetPlayerTeam(CS_TEAM_CT));
}

iLen += formatex(iMenu[iLen], charsmax(iMenu) - iLen, "\y5. \wАвто-Выбор^n");

if(cs_get_user_team(id) == CS_TEAM_SPECTATOR)
iLen += formatex(iMenu[iLen], charsmax(iMenu) - iLen, "\d6. Спектаторы^n^n");
else {
iKeysMenu |= MENU_KEY_6;
iLen += formatex(iMenu[iLen], charsmax(iMenu) - iLen, "\y6. \wСпектаторы^n^n");
}

iLen += formatex(iMenu[iLen], charsmax(iMenu) - iLen, "\y0. \wВыход");

show_menu(id, iKeysMenu, iMenu, -1, "JoinMenu");

return PLUGIN_HANDLED;
}

public handled_JoinMenu(id, iKeys) {
static iRestore, iVGUI, iMsgBlock;

iRestore = get_pdata_int(id, 510);
iVGUI = iRestore & (1<<0);
if(iVGUI) set_pdata_int(id, 510, iRestore & ~(1<<0));

switch(iKeys) {
case 0, 1, 4: {
// if(iKeys <= 1 && (cs_get_user_team(id) == CS_TEAM_T || cs_get_user_team(id) == CS_TEAM_CT))
// return PLUGIN_HANDLED;

iMsgBlock = get_msg_block(get_user_msgid("ShowMenu"));
set_msg_block(get_user_msgid("ShowMenu"), BLOCK_ONCE);
engclient_cmd(id, "jointeam", (iKeys == 4 ? "5" : (iKeys == 0 ? "1" : "2")));
engclient_cmd(id, "joinclass", "5");
set_msg_block(get_user_msgid("ShowMenu"), iMsgBlock);
}

case 5: {
if(cs_get_user_team(id) == CS_TEAM_SPECTATOR)
return PLUGIN_HANDLED;

iMsgBlock = get_msg_block(get_user_msgid("ShowMenu"));
set_msg_block(get_user_msgid("ShowMenu"), BLOCK_ONCE);
dllfunc(DLLFunc_ClientPutInServer, id);
set_msg_block(get_user_msgid("ShowMenu"), iMsgBlock);
set_pdata_int(id, 349, 1);
engclient_cmd(id, "jointeam", "6");
}
}

if(iVGUI) set_pdata_int(id, 510, iRestore);
set_pdata_int(id, 125, get_pdata_int(id, 125, 5) & ~(1<<8), 5);

return PLUGIN_HANDLED;
}

public ClCmd_MainMenu(id) {
new iMenu[512], iLen;
static iKeysMenu = 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;

iLen = formatex(iMenu, charsmax(iMenu), "\rИгровое меню Бодрый Public 16+:^n^n");

iLen += formatex(iMenu[iLen], charsmax(iMenu) - iLen, "\y1. \wОбнулить счёт^n");
iLen += formatex(iMenu[iLen], charsmax(iMenu) - iLen, "\y2. \wУзнать свой rank^n");
iLen += formatex(iMenu[iLen], charsmax(iMenu) - iLen, "\y3. \wПосмотреть Top15^n");
iLen += formatex(iMenu[iLen], charsmax(iMenu) - iLen, "\y4. \wХочу сменить карту^n");
iLen += formatex(iMenu[iLen], charsmax(iMenu) - iLen, "\y5. \wЗаткнуть игрока^n");
iLen += formatex(iMenu[iLen], charsmax(iMenu) - iLen, "\y6. \wИнформация о сервере^n^n");
if(get_user_flags(id) & ADMIN_LEVEL_E)
{
iLen += formatex(iMenu[iLen], charsmax(iMenu) - iLen, "\y7. \rVIP \wменю^n");
}
else
{
iLen += formatex(iMenu[iLen], charsmax(iMenu) - iLen, "\d7. \dVIP \dменю^n");
}
if(get_user_flags(id) & ADMIN_BAN)
{
iLen += formatex(iMenu[iLen], charsmax(iMenu) - iLen, "\y8. \rAdmin \wменю^n^n");
}
else
{
iLen += formatex(iMenu[iLen], charsmax(iMenu) - iLen, "\d8. \dAdmin \dменю^n^n");
}
iLen += formatex(iMenu[iLen], charsmax(iMenu) - iLen, "\y9. \yВыбор команды^n^n");

iLen += formatex(iMenu[iLen], charsmax(iMenu) - iLen, "\y0. \wВыход");

show_menu(id, iKeysMenu, iMenu, -1, "MainMenu");

return PLUGIN_HANDLED;
}

public handled_MainMenu(id, iKeys) {
switch(iKeys) {
case 0: client_cmd(id,"say /rs");
case 1: client_cmd(id,"say /rank");
case 2: client_cmd(id,"say /top15");
case 3: client_cmd(id,"say /rtv");
case 4: client_cmd(id,"say /mute");
case 5: client_cmd(id,"say /motd");
case 6:
if(get_user_flags(id) & ADMIN_LEVEL_E)
{
client_cmd(id,"say /vipmenu");
}
else
{
client_print(id, print_chat, "Нет доступа.");
}
case 7:
if(get_user_flags(id) & ADMIN_BAN)
{
client_cmd(id,"amxmodmenu");
}
else
{
client_print(id, print_chat, "Нет доступа.");
}
case 8: return ClCmd_JoinMenu(id);
}

return PLUGIN_HANDLED;
}

stock fnGetPlayerTeam(CsTeams: iTeam) {
static iPlayers[32], iNum;
get_players(iPlayers, iNum, "e", (iTeam == CS_TEAM_T ? "TERRORIST" : "CT"));
return iNum;
}




Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя ex3m777
сообщение 25.9.2014, 15:23
Сообщение #19


Стаж: 13 лет
Город: Москва

Сообщений: 2037
Благодарностей: 1135
Полезность: 968

Меценат Меценат

Кнопочные константы (Amx Mod X) или как поймать нажатие кнопки.
http://amxxmodx.ru/lessons-on-pawn/299-kno...-konstanty.html


Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя BaJIepbI4
сообщение 25.9.2014, 15:29
Сообщение #20


Стаж: 11 лет

Сообщений: 457
Благодарностей: 115
Полезность: 456

Цитата(ex3m777 @ 25.9.2014, 16:23) *
Кнопочные константы (Amx Mod X) или как поймать нажатие кнопки.
http://amxxmodx.ru/lessons-on-pawn/299-kno...-konstanty.html


Спасибо за интересный материал, но как это относится в проблеме не отображения меню закупки?



Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
2 страниц V   1 2
 
Ответить в данную темуНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: