На нашем сайте вы найдете свежие новости мира Grand Theft Auto, а также все необходимое для игры в San Andreas Multiplayer
        976
        прос

        Описание:
        Этот инклуд, позволяет создавать динамический список, в диалоговом окне, а так же удобно использовать его в дальнейшем.

        Функции:
        Данный инклуд, имеет три функции,подробней о них:

        AddDListItem(playerid, Item[], ItemID = -1, , ItemParameter = -1);
        playerid - ID игрока для которого создается список. Item[] - Текст строки из списка. ItemID - ID строки из списка ( в дальнейшем используется в OnDialogResponse ). ItemParameter - Дополнительный параметр ( если требуется ).

        Clear_DList(playerid);
        playerid - ID игрока для которого выполняется чистка списка.

        Настройка и установка:
        Для настройки инклуда, используются строки:
        #define DLD_STRING_SIZE 256 // Размер списка,во всём диалоге.
        #define DLD_MAX_LIST_ITEMS 10 // Максимальное количество строк в одном диалоге.

        Для подключения инклуда, необходимо вставить следующий код, в начало мода:
        #include <DLDiag>

        Пример использования:
        1
        2
        3
        4
        5
        6
        7
        8
        9
        10
        11
        12
        13
        14
        15
        16
        17
        18
        19
        20
        21
        22
        23
        24
        25
        26
        27
        28
        29
        30
        31
        32
        33
        34
        35
        36
        37
        38
        39
        40
        41
        42
        43
        44
        45
        46
        47
        48
        enum
        {
            DLITEM_PM,
            DLITEM_KICK,
            DLITEM_BAN,
            DLITEM_GIVEMONEY
        }
        // Данный enum, использовать не обязательно. ItemID может быть любым целым числом.
         
        public OnPlayerClickPlayer(playerid, clickedplayerid, source)
        {
            // Код написан для примера.
         
            AddDListItem(playerid, "Личное сообщение", DLITEM_PM, clickedplayerid);
         
            if( IsPlayerAdmin(playerid) ) AddDListItem(playerid, "Кикнуть", DLITEM_KICK, clickedplayerid);
            if( IsPlayerAdmin(playerid) ) Function2(playerid, clickedplayerid);
         
            AddDListItem(playerid, "Дать денег", DLITEM_GIVEMONEY, clickedplayerid);
            AddDListItem(playerid, "Закрыть");
         
            ShowPlayerDlist(playerid, 1, "Пример динамического диалога""Круто""Закрыть");
            return true;
        }
        public Function2(playerid, ExtraParam)
        {
            return AddDListItem(playerid, "Забанить", DLITEM_BAN, ExtraParam);
        }
         
        public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
        {
            switch( dialogid )
            {
                case 1:
                {
                    switch( DLItemID )
                    {
                        case DLITEM_PM:
                        {
                            // Тут должен быть код отправки сообщения.
                        }
                        case DLITEM_BAN: Ban(DLParam);
                        case DLITEM_KICK: Kick(DLParam);
                        case DLITEM_GIVEMONEY: // Тут должен быть код выдачи денег.
                    }
                }
            }
        }

        PAWNO code:
        1
        2
        3
        4
        5
        6
        7
        8
        9
        10
        11
        12
        13
        14
        15
        16
        17
        18
        19
        20
        21
        22
        23
        24
        25
        26
        27
        28
        29
        30
        31
        32
        33
        34
        35
        36
        37
        38
        39
        40
        41
        42
        43
        44
        45
        46
        47
        48
        49
        50
        51
        52
        53
        54
        55
        56
        57
        58
        59
        60
        61
        62
        63
        64
        65
        66
        67
        68
        69
        /*
         _____  _      _____  _
        |  __ \| |    |  __ \(_)
        | |  | | |    | |  | |_  __ _  __ _
        | |  | | |    | |  | | |/ _` |/ _` |
        | |__| | |____| |__| | | (_| | (_| |
        |_____/|______|_____/|_|\__,_|\__, |
           DynamicListDialog (v1.2)    __/ |
                           ByTheXIII  |___/
                                            */
         
         
        /*=====================================
         
        native AddDListItem(playerid, Item[], ItemID = -1, ItemParam = -1);
        native ShowPlayerDList(playerid, DialogID, Caption[], Button1[], Button2[]);
        native Clear_DList(playerid);
         
        =====================================*/
         
        #if defined _DLDiag_included
            #endinput
        #endif
        #define _DLDiag_included
         
        #if !defined _samp_included
            #error "<a_samp> must be included before <DLDiag>"
        #endif
         
        #if !defined DLD_STRING_SIZE
            #define DLD_STRING_SIZE 256
        #endif
         
        #if !defined DLD_MAX_LIST_ITEMS
            #define DLD_MAX_LIST_ITEMS 10
        #endif
        #define DLItemID DLDPlayerListItems[playerid][listitem]
        #define DLParam DLDPlayerListParam[playerid][listitem]
         
        new DLDString[DLD_STRING_SIZE];
        new DLDPlayerListItems[MAX_PLAYERS][DLD_MAX_LIST_ITEMS];
        new DLDPlayerListParam[MAX_PLAYERS][DLD_MAX_LIST_ITEMS];
        new DLDLastIS;
         
        stock AddDListItem(playerid, ItemStr[DLD_STRING_SIZE], ItemID = -1, ItemParam = -1)
        {
            DLDPlayerListItems[playerid][DLDLastIS] = ItemID;
            DLDPlayerListParam[playerid][DLDLastIS] = ItemParam;
            if( !DLDLastIS ){DLDString = ""; format(DLDString, sizeof(DLDString), "%s", ItemStr);}
            else format(DLDString, sizeof(DLDString), "%s\r\n%s", DLDString, ItemStr);
            DLDLastIS++;
            return DLDLastIS -1;
        }
        stock ShowPlayerDList(playerid, DialogID, Caption[], Button1[], Button2[])
        {
            DLDLastIS = 0;
            ShowPlayerDialog(playerid, DialogID, DIALOG_STYLE_LIST, Caption, DLDString, Button1, Button2);
            DLDString = "";
            return true;
        }
        stock Clear_DList(playerid)
        {
            fornew i; i < DLD_MAX_LIST_ITEMS; i++ )
            {
                DLDPlayerListItems[playerid][i] = 0;
                DLDPlayerListParam[playerid][i] = 0;
            }
            return true;
        }

        Автор: TheXIII.

        Форма входа
        топ файлов

        MTA Map Editor 1.3 и...



        [PLUG] MySQL



        Русская версия samp....



        [PLUG] Crash Detect



        [MAP] Интерьер медик...


        Статистика
        Онлайн всего: 1
        Гостей: 1
        Пользователей: 0
        Опрос
        Как Вам сайт?
        Всего ответов: 101