Добро пожаловать на Pro Pawn - Портал о PAWN-скриптинге.

Реклама


**Как получить V.I.P** (Перейти)
Чтобы заказать рекламу на Pro-Pawn.Ru, обращайтесь в Skype.
Баннерная реклама 200руб/мес, Текстовая 100руб/мес.
Показано с 1 по 1 из 1
  1. #1
    Аватар для ziggi
    Проверенный

    Статус
    Онлайн
    Регистрация
    14.05.2015
    Сообщений
    1,035
    Репутация:
    702 ±

    mselect - выбор моделей на Text Draw

    mselect
    GitHub

    Описание
    Библиотека, которая даёт возможность создавать диалоги выбора моделей на Text Draw. Сами Text Draw базируются на скрипте vspawner от Kye. Библиотека позиционируется как гибкая замена для скрипта mSelection, в которой отсутствуют проблемы, связанные с работой вложенных диалогов на Text Draw. Также в библиотеке предусмотрена возможность индивидуальной настройки каждого меню и изменение настроек по умолчанию.

    Скриншоты
    Меню выбора скина:


    Функции
    Показать созданное меню
    PHP код:
    MSelect_Show(playerid, function[]); 
    Открыть меню выбора моделей
    PHP код:
    MSelect_Open(playerid, function[], items_array[], items_countbool:list_loop MSELECT_DEF_LIST_LOOP,
          
    header[] = ""button[] = MSELECT_DEF_BUTTON_TEXT,
          
    button_next[] = MSELECT_DEF_BUTTON_NEXTbutton_prev[] = MSELECT_DEF_BUTTON_PREV,
          
    Float:pos_x MSELECT_DEF_POS_XFloat:pos_y MSELECT_DEF_POS_Y,
          
    Float:button_width MSELECT_DEF_BUTTON_WIDTHFloat:button_height MSELECT_DEF_BUTTON_HEIGHT,
          
    Float:page_button_width MSELECT_DEF_PBUTTON_WIDTHFloat:page_button_height MSELECT_DEF_PBUTTON_HEIGHT,
          
    Float:item_width MSELECT_DEF_ITEM_WIDTHFloat:item_height MSELECT_DEF_ITEM_HEIGHT,
          
    Float:rot_x MSELECT_DEF_ROT_XFloat:rot_y MSELECT_DEF_ROT_YFloat:rot_z MSELECT_DEF_ROT_Z,
          
    Float:zoom MSELECT_DEF_ZOOMFloat:background_padding MSELECT_DEF_BG_PADDING,
          
    Float:item_padding MSELECT_DEF_ITEM_PADDINGFloat:button_padding MSELECT_DEF_BUTTON_PADDING,
          
    Float:header_padding MSELECT_DEF_HEADER_PADDINGFloat:page_padding MSELECT_DEF_PAGE_PADDING,
          
    select_color MSELECT_DEF_SELECT_COLOR,
          
    items_bg_colors[MSELECT_MAX_ITEMS] = {MSELECT_DEF_ITEMS_BG_COLOR, ...},
          
    dialog_bg_color MSELECT_DEF_DIALOG_BG_COLOR,
          
    header_fg_color MSELECT_DEF_HEADER_FG_COLOR,
          
    page_fg_color MSELECT_DEF_PAGE_FG_COLOR,
          
    button_fg_color MSELECT_DEF_BUTTON_FG_COLOR,
          
    button_bg_color MSELECT_DEF_BUTTON_BG_COLOR); 
    Закрыть меню
    PHP код:
    MSelect_Close(playerid); 
    Статус меню
    PHP код:
    MSelect_IsOpen(playerid); 
    Автовызываемые функции
    Для каждого меню оформляется собственная функция-обработчик, выглядит она следующим образом:
    PHP код:
    MSelectResponse:example_ms(playeridMSelectType:responseitemiditemvalue[])
    {
        return 
    1;

    Эта функция вызывается при любом взаимодействии пользователя с меню.

    MSelectType может принимать следующие значения:
    • MSelect_None
    • MSelect_Item
    • MSelect_Button
    • MSelect_ButtonNext
    • MSelect_ButtonPrev
    • MSelect_Cancel


    Константы
    Доступно несколько констант, некоторые из них можно переназначить.
    Константа Значение по умолчанию Можно переназначить?
    MSELECT_MAX_ITEMS 100 да
    MSELECT_MAX_ITEMS_PER_LINE 7 да
    MSELECT_MAX_ITEMS_LINES 3 да
    MSELECT_DEF_LIST_LOOP false да
    MSELECT_DEF_BUTTON_TEXT "Cancel" да
    MSELECT_DEF_BUTTON_NEXT ">>" да
    MSELECT_DEF_BUTTON_PREV "<<" да
    MSELECT_DEF_POS_X 85.0 да
    MSELECT_DEF_POS_Y 130.0 да
    MSELECT_DEF_BUTTON_WIDTH 60.0 да
    MSELECT_DEF_BUTTON_HEIGHT 13.0 да
    MSELECT_DEF_PBUTTON_WIDTH 30.0 да
    MSELECT_DEF_PBUTTON_HEIGHT 13.0 да
    MSELECT_DEF_ITEM_WIDTH 60.0 да
    MSELECT_DEF_ITEM_HEIGHT 70.0 да
    MSELECT_DEF_ROT_X 0.0 да
    MSELECT_DEF_ROT_Y 0.0 да
    MSELECT_DEF_ROT_Z 0.0 да
    MSELECT_DEF_ZOOM 1.0 да
    MSELECT_DEF_BG_PADDING 20.0 да
    MSELECT_DEF_ITEM_PADDING 2.0 да
    MSELECT_DEF_BUTTON_PADDING 5.0 да
    MSELECT_DEF_SELECT_COLOR 0xAAAAAAFF да
    MSELECT_DEF_ITEMS_BG_COLOR 0x55555599 да
    MSELECT_DEF_DIALOG_BG_COLOR 0x00000099 да
    MSELECT_DEF_HEADER_FG_COLOR 0xDDDDDDDD да
    MSELECT_DEF_PAGE_FG_COLOR 0xDDDDDDDD да
    MSELECT_DEF_BUTTON_FG_COLOR 0x888888FF да
    MSELECT_DEF_BUTTON_BG_COLOR 0x000000CC да
    MSELECT_DEF_HEADER_PADDING 3.0 да
    MSELECT_DEF_PAGE_PADDING 3.0 да
    MSELECT_MAX_ITEMS_ON_LIST (MSELECT_MAX_ITEMS_PER_LINE * MSELECT_MAX_ITEMS_LINES) нет
    MSELECT_MAX_FUNCTION_NAME 31 нет
    MSELECT_INVALID_MODEL_ID -1 нет

    Использование
    Для более удобного использования, в системе предусмотрена возможность создавать функцию для открытия меню, это полезно при множественном вызове одного меню (в основном используется при создании вложенных меню):
    PHP код:
    MSelectCreate:example_ms(playerid)
    {
        static
            
    items_array[311] = {MSELECT_INVALID_MODEL_ID, ...},
            
    items_count 0;

        if (
    items_count == 0) {
            for(new 
    0<= sizeof(items_array); i++) {
                if (
    == 74) {
                    continue;
                }

                
    items_array[items_count] = i;
                
    items_count++;
            }
        }

        
    MSelect_Open(playeridMSelect:example_msitems_arrayitems_count, .header "Header");
    }

    MSelectResponse:example_ms(playeridMSelectType:responseitemidmodelid)
    {
        new 
    string[144];
        
    format(stringsizeof(string), "ID: %d | Type: %d | Item: %d | Model: %d",
               
    playerid_:responseitemidmodelid);
        
    SendClientMessage(playerid, -1string);
        if (
    response == MSelect_Cancel) {
            
    MSelect_Close(playerid);
        }
        return 
    1;

    И где-то вы можете открыть созданное меню:
    PHP код:
    MSelect_Show(playeridMSelect:example_ms); 
    Естественно вас никто не заставляет пользоваться этой системой, вы можете обойтись без MSelectCreate.

    Скачать

  2. 5 пользователя(ей) сказали cпасибо:
    Blood (10.10.2016)DeimoS (09.10.2016)Dr.Deft (09.10.2016)untonyst (09.10.2016)[ForD] (16.12.2016)
 

 

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •