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

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

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

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

2 страниц V   1 2

Менюшка

Kasper55
сообщение 16.11.2012, 1:27
Сообщение #1
Стаж: 16 лет

Сообщений: 1145
Благодарности: выкл.

Как в этом меню сделать 1 пункт , где можно будет нажимая 1 пункт выбрать язык чата через команды /rus или /eng , я не помню как сделать , подскажите


Код
#include <amxmodx>
new menu
new cvar_showhudmsg

public plugin_init()
{
cvar_showhudmsg = register_cvar("show_hudmsg", "1");        //1 - вкл        0 - выкл
menu = menu_create("\rМеню сервера:","func_menu");
menu_additem( menu, "\rЗаткнуть игрока")
menu_additem( menu, "\yРадио")
menu_additem( menu, "\rЗабанить игрока")
menu_additem( menu, "\yIp сервера")
menu_additem( menu, "\wСбросить счет")
menu_additem( menu, "\yАдмины онлайн")
menu_setprop(menu, MPROP_NEXTNAME, "Дальше")
menu_setprop(menu, MPROP_BACKNAME, "Назад")
menu_setprop(menu, MPROP_EXITNAME, "Выход")
menu_setprop(menu, MPROP_EXIT,MEXIT_ALL)
register_clcmd("player_menu","go_menu");
}
public client_putinserver(id)
{
if(get_pcvar_num(cvar_showhudmsg))
set_task(1.0, "task_hudmsg", id, _, _, "b")
}
public task_hudmsg(id)
{
set_hudmessage(0, 255, 0, 0.75, 0.0, 0, 6.0, 12.0)
show_hudmessage(id, "Меню Сервера, нажми на F3")
}
public client_authorized(id)
{
client_cmd(id, "bind ^"F3^" ^"player_menu^"")
}
public func_menu(id, menu, key)
{
key++
if(key==1) client_cmd(id, "say /mute")
if(key==2) client_cmd(id, "say /fm")
if(key==3) client_cmd(id, "say /vtb")
if(key==4) client_cmd(id, "say /ip")
if(key==5) client_cmd(id, "say /rs")
if(key==6) client_cmd(id, "say /admin")
}
public go_menu(id)
{
menu_display(id,menu)

return PLUGIN_HANDLED
}
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
underwoker
сообщение 16.11.2012, 1:32
Сообщение #2
Стаж: 56 лет


Благодарностей:

Скрытый текст
#include <amxmodx>
new menu
new cvar_showhudmsg

public plugin_init()
{
cvar_showhudmsg = register_cvar("show_hudmsg", "1"); //1 - вкл 0 - выкл
menu = menu_create("\rМеню сервера:","func_menu");
menu_additem( menu, "\rРусский язык")
menu_additem( menu, "\rАнглийский язык")
menu_additem( menu, "\rЗаткнуть игрока")
menu_additem( menu, "\yРадио")
menu_additem( menu, "\rЗабанить игрока")
menu_additem( menu, "\yIp сервера")
menu_additem( menu, "\wСбросить счет")
menu_additem( menu, "\yАдмины онлайн")
menu_setprop(menu, MPROP_NEXTNAME, "Дальше")
menu_setprop(menu, MPROP_BACKNAME, "Назад")
menu_setprop(menu, MPROP_EXITNAME, "Выход")
menu_setprop(menu, MPROP_EXIT,MEXIT_ALL)
register_clcmd("player_menu","go_menu");
}
public client_putinserver(id)
{
if(get_pcvar_num(cvar_showhudmsg))
set_task(1.0, "task_hudmsg", id, _, _, "b")
}
public task_hudmsg(id)
{
set_hudmessage(0, 255, 0, 0.75, 0.0, 0, 6.0, 12.0)
show_hudmessage(id, "Меню Сервера, нажми на F3")
}
public client_authorized(id)
{
client_cmd(id, "bind ^"F3^" ^"player_menu^"")
}
public func_menu(id, menu, key)
{
key++
if(key==1) client_cmd(id, "say /rus")
if(key==2) client_cmd(id, "say /eng")
if(key==3) client_cmd(id, "say /mute")
if(key==4) client_cmd(id, "say /fm")
if(key==5) client_cmd(id, "say /vtb")
if(key==6) client_cmd(id, "say /ip")
if(key==7) client_cmd(id, "say /rs")
if(key==8) client_cmd(id, "say /admin")
}
public go_menu(id)
{
menu_display(id,menu)

return PLUGIN_HANDLED
}


Отредактировал: underwoker, - 16.11.2012, 1:38
Перейти в начало страницы     
Поблагодарили 1 раз
   +
Kasper55
сообщение 17.11.2012, 22:06
Сообщение #3
Стаж: 16 лет

Сообщений: 1145
Благодарности: выкл.

Цитата(underwoker @ 16.11.2012, 1:32) *
Скрытый текст
#include <amxmodx>
new menu
new cvar_showhudmsg

public plugin_init()
{
cvar_showhudmsg = register_cvar("show_hudmsg", "1"); //1 - вкл 0 - выкл
menu = menu_create("\rМеню сервера:","func_menu");
menu_additem( menu, "\rРусский язык")
menu_additem( menu, "\rАнглийский язык")
menu_additem( menu, "\rЗаткнуть игрока")
menu_additem( menu, "\yРадио")
menu_additem( menu, "\rЗабанить игрока")
menu_additem( menu, "\yIp сервера")
menu_additem( menu, "\wСбросить счет")
menu_additem( menu, "\yАдмины онлайн")
menu_setprop(menu, MPROP_NEXTNAME, "Дальше")
menu_setprop(menu, MPROP_BACKNAME, "Назад")
menu_setprop(menu, MPROP_EXITNAME, "Выход")
menu_setprop(menu, MPROP_EXIT,MEXIT_ALL)
register_clcmd("player_menu","go_menu");
}
public client_putinserver(id)
{
if(get_pcvar_num(cvar_showhudmsg))
set_task(1.0, "task_hudmsg", id, _, _, "b")
}
public task_hudmsg(id)
{
set_hudmessage(0, 255, 0, 0.75, 0.0, 0, 6.0, 12.0)
show_hudmessage(id, "Меню Сервера, нажми на F3")
}
public client_authorized(id)
{
client_cmd(id, "bind ^"F3^" ^"player_menu^"")
}
public func_menu(id, menu, key)
{
key++
if(key==1) client_cmd(id, "say /rus")
if(key==2) client_cmd(id, "say /eng")
if(key==3) client_cmd(id, "say /mute")
if(key==4) client_cmd(id, "say /fm")
if(key==5) client_cmd(id, "say /vtb")
if(key==6) client_cmd(id, "say /ip")
if(key==7) client_cmd(id, "say /rs")
if(key==8) client_cmd(id, "say /admin")
}
public go_menu(id)
{
menu_display(id,menu)

return PLUGIN_HANDLED
}


я так сам могу сделать мне другое нужно , чтоб 1 пункт меня выполнял 2 действия тоесть переключал между языками
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя AndrewZ
сообщение 17.11.2012, 22:13
Сообщение #4


Иконка группы

Стаж: 18 лет
Город: Санкт-Петербург


Сообщений: 4700
Благодарностей: 2452
Полезность: 1018

В меню:
Код
    new selectc[ 3 ]
    get_user_info( id, "lang", selectc, 2 )
    
    if ( selectc[0]=='r' )
    {
        текущий язык русский
    }
        else if( selectc[ 0 ] == 'e' )
    {
        текущий язык инглиш
    }
        else
    {
        неизвестный язык
    }


Обработчик:
Код
        case 1:
        {
            new selectc[ 3 ]
            get_user_info( id, "lang", selectc, 2 )
            if( selectc[ 0 ] == 'r' )
            {
                client_cmd ( id, "setinfo ^"lang^" ^"en^"" )
            }
                else
            {
                client_cmd ( id, "setinfo ^"lang^" ^"ru^"" )
            }
        }


как то так.

наверно можно и проще, делал это кучу времени назад.

Отредактировал: AndrewZ, - 17.11.2012, 22:14


Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Kasper55
сообщение 17.11.2012, 22:21
Сообщение #5
Стаж: 16 лет

Сообщений: 1145
Благодарности: выкл.

Цитата(AndrewZ @ 17.11.2012, 23:13) *
В меню:
Код
    new selectc[ 3 ]
    get_user_info( id, "lang", selectc, 2 )
    
    if ( selectc[0]=='r' )
    {
        текущий язык русский
    }
        else if( selectc[ 0 ] == 'e' )
    {
        текущий язык инглиш
    }
        else
    {
        неизвестный язык
    }


Обработчик:
Код
        case 1:
        {
            new selectc[ 3 ]
            get_user_info( id, "lang", selectc, 2 )
            if( selectc[ 0 ] == 'r' )
            {
                client_cmd ( id, "setinfo ^"lang^" ^"en^"" )
            }
                else
            {
                client_cmd ( id, "setinfo ^"lang^" ^"ru^"" )
            }
        }


как то так.

наверно можно и проще, делал это кучу времени назад.


не то , мне через команды надо /Rus и /Eng

например как тут

Прикрепленное изображение
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя AndrewZ
сообщение 17.11.2012, 22:23
Сообщение #6


Иконка группы

Стаж: 18 лет
Город: Санкт-Петербург


Сообщений: 4700
Благодарностей: 2452
Полезность: 1018

Kasper55,
а, язык чата. а что за плагин изменяет язык чата?


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


Стаж: 15 лет

Сообщений: 2261
Благодарностей: 1068
Полезность: 870

Цитата(Kasper55 @ 17.11.2012, 23:21) *
не то , мне через команды надо /Rus и /Eng

например как тут

Прикрепленное изображение

Вот придурки, даже порядок расположения пунктов меню у меня стырили ...
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Kasper55
сообщение 17.11.2012, 23:32
Сообщение #8
Стаж: 16 лет

Сообщений: 1145
Благодарности: выкл.

Цитата(AndrewZ @ 17.11.2012, 23:23) *
Kasper55,
а, язык чата. а что за плагин изменяет язык чата?

colored translit
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя AndrewZ
сообщение 17.11.2012, 23:34
Сообщение #9


Иконка группы

Стаж: 18 лет
Город: Санкт-Петербург


Сообщений: 4700
Благодарностей: 2452
Полезность: 1018

Скрытый текст
Цитата(Rejiser @ 18.11.2012, 0:03) *
Вот придурки, даже порядок расположения пунктов меню у меня стырили ...

подскажи как рамбо сделать чтоб невидемае были кт и таймерв в меню


Kasper55,
можешь булевую переменную впелить)

Отредактировал: AndrewZ, - 17.11.2012, 23:34


Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Kasper55
сообщение 18.11.2012, 0:16
Сообщение #10
Стаж: 16 лет

Сообщений: 1145
Благодарности: выкл.

Цитата(AndrewZ @ 18.11.2012, 0:34) *
Скрытый текст

подскажи как рамбо сделать чтоб невидемае были кт и таймерв в меню


Kasper55,
можешь булевую переменную впелить)


а поподробней?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя AndrewZ
сообщение 18.11.2012, 1:31
Сообщение #11


Иконка группы

Стаж: 18 лет
Город: Санкт-Петербург


Сообщений: 4700
Благодарностей: 2452
Полезность: 1018

Kasper55,
Код
new bool:trololo[ 33 ]


if( trololo == true )
     trololo = false
else
     trololo = true

чет такое. но хз мб это бред, я сплю уже..) надо подстраивать под эту ерунду как-то. А мб когда пишешь /rus eng в setinfo записывается значение? Тогда проще. можно сделал так же как в том варианте.

Отредактировал: AndrewZ, - 18.11.2012, 1:32


Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Kasper55
сообщение 18.11.2012, 12:01
Сообщение #12
Стаж: 16 лет

Сообщений: 1145
Благодарности: выкл.

Цитата(AndrewZ @ 18.11.2012, 2:31) *
Kasper55,
Код
new bool:trololo[ 33 ]


if( trololo == true )
     trololo = false
else
     trololo = true

чет такое. но хз мб это бред, я сплю уже..) надо подстраивать под эту ерунду как-то. А мб когда пишешь /rus eng в setinfo записывается значение? Тогда проще. можно сделал так же как в том варианте.


да не просто тупо через команды язык меняется
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Kasper55
сообщение 18.11.2012, 12:44
Сообщение #13
Стаж: 16 лет

Сообщений: 1145
Благодарности: выкл.

вот какое то сделал но ошибки при комплиме

Код
#include amxmodx
new music[33]

#define PLUGIN "menu"
#define VERSION "1.0"
#define AUTHOR "menu :3"

public plugin_init()

{
register_plugin(PLUGIN, VERSION, AUTHOR)
register_clcmd("menu", "server_menu" )
}

public SHM()
{
    set_hudmessage(255 , 215, 0, -1.0, -0.99, 2, 1.0, 1.0, 0.1, 0.2, -1)
    show_hudmessage(0,"Меню сервера на F3")
}
public client_authorized(id)
{
    client_cmd(id, "bind ^"F3^" ^"menu^"")
}
public server_menu(id)
{

new i_Menu = menu_create("\rМеню сервера", "MMENU" )
menu_additem(i_Menu, "\rЗаткнуть игрока", "1", 0)

if(!chat[id])
{
menu_additem(i_Menu,"Язык Чата\r: \d[ \yРусский \d]^n", "2", 0)
}
else
{
menu_additem(i_Menu,"Язык Чата\y: \d[ \rАнгийский \d]^n", "2", 0)
}
menu_additem(i_Menu, "\yРадио", "3", 0)
menu_additem(i_Menu, "\rЗабанить игрока", "4", 0)
menu_additem(i_Menu, "\yIp сервера", "5", 0)
menu_additem(i_Menu, "\wСбросить счет", "6", 0)
menu_additem(i_Menu, "\yАдмины онлайн", "7", 0)

menu_additem(i_Menu,"Дальше", "9", 0)
menu_additem(i_Menu,"Выход", "0", 0)

menu_setprop(i_Menu, MPROP_PERPAGE, 0)
menu_display(id, i_Menu, 0)

return PLUGIN_HANDLED
}
public MMENU(id, menu, item)
{
if (item == MENU_EXIT)
{
menu_destroy(menu)

return PLUGIN_HANDLED
}
new s_Data[6], s_Name[64], i_Access, i_Callback

menu_item_getinfo(menu, item, i_Access, s_Data, charsmax(s_Data), s_Name, charsmax(s_Name), i_Callback)

new i_Key = str_to_num(s_Data)

switch(i_Key)
{

case 1:
{
client_cmd(id, "say /mute" )
}
case 2:
{
if(chat[id])
{
{
client_cmd(id, "say /rus")
chat[id] = 0
server_menu(id)
}
else
{
client_cmd(id, "say /eng")
chat[id] = 1
server_menu(id)
}
}
case 3:
{
client_cmd(id, "say /fm" )
}
case 4:
{
client_cmd(id, "say /vtb" )
}
case 5:
{
client_cmd(id, "say /ip" )
}
case 6:
{
client_cmd(id, "say /rs" )
}
case 7:
{
client_cmd(id, "say /admin" )
}
}

menu_destroy(menu)
return PLUGIN_HANDLED
}


stock Color_Print(const id, const input[], any:...)
{
new count = 1, players[32]
static msg[191]
vformat(msg, 190, input, 3)

replace_all(msg, 190, "!g", "^4") // Green Color
replace_all(msg, 190, "!y", "^1") // Default Color
replace_all(msg, 190, "!team", "^3") // Team Color

if (id) players[0] = id; else get_players(players, count, "ch")
{
  for (new i = 0; i < count; i++)
  {
   if (is_user_connected(players[i]))
   {
    message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players[i])
    write_byte(players[i]);
    write_string(msg);
    message_end();
   }
  }
}
}
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
underwoker
сообщение 18.11.2012, 13:25
Сообщение #14
Стаж: 56 лет


Благодарностей:

Проверяй. Переписал менюшку.
Скрытый текст
Код
#include amxmodx

new chat[33]

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

public plugin_init()

{
    register_plugin(PLUGIN, VERSION, AUTHOR)
    register_clcmd("player_menu", "server_menu" )
}

public SHM(id)
{
    set_hudmessage(0, 255, 0, 0.75, 0.0, 0, 6.0, 12.0)
    show_hudmessage(id, "Меню Сервера, нажми на F3")
}

public client_authorized(id)
{
    client_cmd(id, "bind ^"F3^" ^"player_menu^"")
}

public server_menu(id)
{

    new i_Menu = menu_create("\dМеню\rХ\dа \r- \d :D", "MMENU" )
    if(!chat[id])
    {
        menu_additem(i_Menu,"Язык Чата\r: \d[ \yРусский \d]^n", "1", 0)
    }
    else
    {
        menu_additem(i_Menu,"Язык Чата\y: \d[ \rАнгийский \d]^n", "1", 0)
    }
    menu_additem(i_Menu, "\rЗаткнуть игрока", "2", 0)
    menu_additem(i_Menu, "\yРадио", "3", 0)
    menu_additem(i_Menu, "\rЗабанить игрока", "4", 0)
    menu_additem(i_Menu, "\yIp сервера", "5", 0)
    menu_additem(i_Menu, "\wСбросить счет", "6", 0)
    menu_additem(i_Menu, "\yАдмины онлайн", "7", 0)

    menu_additem(i_Menu,"Выход", "0", 0)

    menu_setprop(i_Menu, MPROP_PERPAGE, 0)
    menu_display(id, i_Menu, 0)

    return PLUGIN_HANDLED
}
public MMENU(id, menu, item)
{
    if (item == MENU_EXIT)
    {
        menu_destroy(menu)

        return PLUGIN_HANDLED
    }
    new s_Data[6], s_Name[64], i_Access, i_Callback

    menu_item_getinfo(menu, item, i_Access, s_Data, charsmax(s_Data), s_Name, charsmax(s_Name), i_Callback)

    new i_Key = str_to_num(s_Data)

    switch(i_Key)
    {

    case 1:
        {
            if(chat[id])
            {
                client_cmd(id, "say /rus")
                chat[id] = 0
                server_menu(id)
            }
            else
            {
                client_cmd(id, "say /eng")
                chat[id] = 1
                server_menu(id)
            }
        }
    case 2:
        {
            client_cmd(id, "say /mute" )
        }
    case 3:
        {
            client_cmd(id, "say /fm" )
        }
    case 4:
        {
            client_cmd(id, "say /vtb" )
        }
    case 5:
        {
            client_cmd(id, "say /ip" )
        }
    case 6:
        {
            client_cmd(id, "say /rs" )
        }
    case 7:
        {
            client_cmd(id, "say /admin" )
        }
        }

    menu_destroy(menu)
    return PLUGIN_HANDLED
}


Отредактировал: underwoker, - 18.11.2012, 16:44
Перейти в начало страницы     
Поблагодарили 2 раз
   +
Статус пользователя Rejiser
сообщение 18.11.2012, 13:57
Сообщение #15


Стаж: 15 лет

Сообщений: 2261
Благодарностей: 1068
Полезность: 870

Что у вас за супер-конструкции? Глаза режет

Код
if(!chat[id])
{
    menu_additem(i_Menu,"Язык Чата\r: \d[ \yРусский \d]^n", "8", 0)
}
else
{
    menu_additem(i_Menu,"Язык Чата\y: \d[ \rАнгийский \d]^n", "8", 0)
}


и не 8 пункт, а 7:

Код
new option[512]

formatex(option, charsmax(option), "Язык Чата\y: \d[ %s \d]", chat[id] ? "\yРусский" : "\rАнгийский")
menu_additem(i_Menu, option, "7", 0)
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
underwoker
сообщение 18.11.2012, 13:59
Сообщение #16
Стаж: 56 лет


Благодарностей:

Цитата(Rejiser @ 18.11.2012, 14:57) *
и не 8 пункт, а 7:

и не 7 пункт, а 1
Перейти в начало страницы     
Поблагодарили 1 раз
   +
underwoker
сообщение 18.11.2012, 15:29
Сообщение #17
Стаж: 56 лет


Благодарностей:

Мб ТС отпишет, работает моя версия или нет?
Перейти в начало страницы     
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя Orty_Hart
сообщение 18.11.2012, 15:34
Сообщение #18
Стаж: 14 лет

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

Kasper55,
в чем проблема поискать на форуме автор?

https://c-s.net.ua/forum/ipb.html?s=&sh...st&p=357445
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Kasper55
сообщение 18.11.2012, 16:25
Сообщение #19
Стаж: 16 лет

Сообщений: 1145
Благодарности: выкл.

Цитата(Orty_Hart @ 18.11.2012, 16:34) *
Kasper55,
в чем проблема поискать на форуме автор?

https://c-s.net.ua/forum/ipb.html?s=&sh...st&p=357445


ваш вопрос мне не понятен

Цитата(underwoker @ 18.11.2012, 16:29) *
Мб ТС отпишет, работает моя версия или нет?


работает еще как , спасибку тыкнул
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Kasper55
сообщение 18.11.2012, 16:38
Сообщение #20
Стаж: 16 лет

Сообщений: 1145
Благодарности: выкл.

тока почему то место пустое есть после выбора языка

вот на скрине видно

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