Главная | Комментарии | О проекте
Чтение RSS
Суперсайт
Главная Контакты Карта сайта Добавить в избранное
  • Кто OnLine

    Всего на сайте: 10
    Гостей: 6
    Пользователи: - отсутствуют
    Роботы: Yandex Bot, Yandex Bot, crawl Bot, Google AdSense

    Опрос пользователей

    Для какого мода Вы пишите плагины?

    • Популярное

    Рекомендуем

    • AMX Mod X
    • up.org.ua

    Наши друзья


  • Автор: Nesquik Дата: 21-04-2013, 14:30 Просмотров: 3146

    Мультиязычное меню

    Это урок о том как создать мультиязычное меню через функцию formatex
    #include <amxmodx>
    #inclued <amxmisc>

    #define PLUGIN "[http://amxmodx.ru] Menu lang"
    #define AUTHOR "Nesquik"
    #define VERSION "1.0"

    public plugin_init() // Нужно нам зарегистрировать команду для вызова меню
    {
    register_plugin(PLUGIN,AUTHOR,VERSION)
    reigster_clcmd("say /menu","menu") // Команда вызова нашего меню
    }

    public menu(id) //наше меню которое вызывается командой say /menu
    {
    // Сначала создадим переменную для formatex
    new szMenuMulti[64] //szMenuMulti это мы будем использовать для foramtex 64 - длина сообщение
    foramtex(szMenuMulti,63,"%L",id,"TITLE_MENU") // Вот мы сформировали наш мультиланг
    new menu = create_menu(szMenuMulti,"menu_handled") // Записали мултиланг в созданное нами меню, теперь перейдем к созданию нашим мультиязычных кнопок ))
    formatex(szMenuMulti,63,"%L",id,"ITEM_MENU_1") // Сформировали нашу мультиязычную кнопку
    menu_additem(szMenuMulti,"1",0) // Ну вот собственно и все наше меню приобрело мультиязычный вид ,далее можно сделать кнопки EXIT,BACK,EXIT тоже мультиязычными
    formatex(szMenuMulti,63,"%L",id,"EXIT") // Вот наша кнопка EXIT приобрела мультиязычный вид впишем ее в menu_setprop
    menu_setprop(menu,MPROP_EXIT,szMenuMulti) // menu_setprop - задает меню определенный функции такие как выход далее и назад ,
    menu - это созданое нами меню ,MPROP_EXIT - функция задает меню кнопку выхода , szMenuMulti - это сформированный выше нами мультиланг ,так же можно сделать и с Далее и назад
    menu_display(id,menu,0) // id - кому показываем меню ,menu - это что мы сделали выше ,0 - точно незнаю но вроде для флага
    }


    ну вот собственно получилось у нас великолепное меню при помощи мультиланга
    Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь.
    Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.
    Мультиязычное меню
    Nesquik

    --
    ICQ: --
    Публикаций: 0
    Комментариев: 0
    Репутация: -  0  +

    Черт забыл дописать
    menu_additem(szMenuMulti,"1",0) НЕВЕРНО
    ВЕРНО ВОТ ТАК
    menu_additem(menu,szMenuMulti,"1",0)
    Leonidddd

    --
    ICQ: --
    Публикаций: 0
    Комментариев: 0
    Репутация: -  0  +

    На будующее,используй тег PAWN-a...читается не очень без него.
    Maxim995

    --
    ICQ: --
    Публикаций: 0
    Комментариев: 0
    Репутация: -  0  +

    Вот исправил ошибки которые были и меню не открывается.
    Внимание! У Вас нет прав для просмотра скрытого текста.
    Ruslan4ik0

    --
    ICQ: --
    Публикаций: 0
    Комментариев: 0
    Репутация: -  0  +

    Admin, че за бред.А откуда ты будешь читать "ITEM_MENU_1"
    Admin

    30.07.2011
    ICQ: 980500
    Публикаций: 507
    Комментариев: 333
    Репутация: -  56  +

    Ruslan4ik0, ты прежде чем слюной брызгать, на автора смотри.
    --------------------
    артист

    --
    ICQ: --
    Публикаций: 0
    Комментариев: 0
    Репутация: -  0  +

    Брать перевод пунктов будет из ланг файла.
    #include <amxmodx>
    #inclued <amxmisc>

    public plugin_init()
    {
        register_plugin("Menu lang","1.0","Nesquik")
        reigster_clcmd("say /menu","menu") // Команда вызова нашего меню
        // Регистрация ланг файла \cstrike\addons\amxmodx\data\lang\
        register_dictionary("mu_menu.txt")
    }
    public menu(id) //наше меню которое вызывается командой say /menu
    {
        // Сначала создадим переменную для formatex
        new szMenuMulti[64] //szMenuMulti это мы будем использовать для foramtex 64 - длина сообщение
        foramtex(szMenuMulti,63,"%L",id,"TITLE_M
    ENU") // Вот мы сформировали наш мультиланг
        new menu = create_menu(szMenuMulti,"menu_handled") // Записали мултиланг в созданное нами меню, теперь перейдем к созданию нашим мультиязычных кнопок ))
        formatex(szMenuMulti,63,"%L",id,"ITEM_ME
    NU_1") // Сформировали нашу мультиязычную кнопку
        menu_additem(menu,szMenuMulti,"1",0) // Ну вот собственно и все наше меню приобрело мультиязычный вид ,далее можно сделать кнопки EXIT,BACK,EXIT тоже мультиязычными
        formatex(szMenuMulti,63,"%L",id,"EXIT
    4;) // Вот наша кнопка EXIT приобрела мультиязычный вид впишем ее в menu_setprop
        menu_setprop(menu,MPROP_EXIT,szMenuMulti) // menu_setprop - задает меню определенный функции такие как выход далее и назад ,
        menu_display(id,menu,0) // id - кому показываем меню ,menu - это что мы сделали выше ,0 - точно незнаю но вроде для флага
    }


    Содержание ланг файла:
    [ru]
    TITLE_MENU = Выберите пункт
    ITEM_MENU_1 = Пункт 1
    EXIT = Выход

    [eng]
    TITLE_MENU = Please selection
    ITEM_MENU_1 = Punct 1
    EXIT = Exit

    Кодировка(обязательно) UTF8
    sibas

    --
    ICQ: --
    Публикаций: 0
    Комментариев: 0
    Репутация: -  0  +

    Admin, слюной брызгать wink я под столом ахахахах

    Информация

    Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.
Наверх

Реклама