• 0
Sign in to follow this  
Followers 0
daltwb

Помощь с диалоговым окном

Question

Здравствуйте, надеюсь на вашу помощь.

Дело в том что я создал диалог, около NPC, вот код:
 

public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
    if(newkeys == 262144//если игрок рядом нажмет кнопку H, то вылезет диалоговое окно
    {
        if(IsPlayerInRangeOfPoint(playerid, 2.01182.3719,-2043.5244,69.0078)) return ShowPlayerDialog(playerid, dActor, DIALOG_STYLE_LIST, "{FFFF00}Андрес",
            "Кто ты такой?\n\
            Где я нахожусь?\n\
            Что мне делать?",
         "Выбрать""Закрыть");
    }
    return true;
}

Продолжение:
 

        case dActor:
        {
            if(!response) return true;
            switch(listitem)// выборка
            {
                case 0return ShowPlayerDialog(playerid, dActor0, DIALOG_STYLE_MSGBOX, "{FFFF00}Андрес",
                "{FFFFFF}Приветствую гость. Меня звать - {FFFF00}Андрес.{FFFFFF} Я, вас, приезжих с двух километров вижу!\n\
                Впрочем, не важно откуда ты, я помогу тебе сориентироваться",
                "Ясно""");
                case 1return ShowPlayerDialog(playerid, dActor0, DIALOG_STYLE_MSGBOX, "{FFFF00}Андрес",
                    "{FFFFFF}С штатом ты не ошибся, штат {FFFF00}Reload{FFFFFF} - самый лучший из всех,\n\
                    у тебя есть много возможностей, и ты можешь делать все что тебе захочется,\n\
                    но главное не выходи за рамки закона!",
                "Ясно""");
                case 2return ShowPlayerDialog(playerid, dActor0, DIALOG_STYLE_MSGBOX, "{FFFF00}Андрес",
                    "\t\t\t\t    {FFFF00}[НАЧАЛО]{FFFFFF}\n\
                    Для начала, получи новый паспорт, как раз, тут недалеко мэрия {A1A1A1}\n\
                    (gps - основное - Мэрия LS)\n\
                    \t\t\t\t    {FFFF00}[РАБОТА]{FFFFFF}\n\
                    Можешь даже устроится на какую нибудь подработку!{A1A1A1}\n\
                    (gps - подработка)\n\
                    \t\t\t\t{FFFF00}[ВОД. ПРАВА]{FFFFFF}\n\
                    Как накопишь деньги - дуй в автошколу, тебя научат ездить по нашим правилам.\n\
                    {A1A1A1}(gps - основное - Генеральная Автошкола Штата)",
                "Ясно""");
            }
        }
        case dActor0:
        {
            if(response)// 
            {
                //SendClientMessage(playerid, COLOR_YELLOW, "Нажмите \"ESC\" чтобы выйти из диалогового окна");
                ShowPlayerDialog(playerid, dActor, DIALOG_STYLE_LIST, "{FFFF00}Андрес",
                    "Кто ты такой?\n\
                    Где я нахожусь?\n\
                    Что мне делать?",
                "Закрыть""");
            }
        }

Проблема в том, что при нажатии на кнопку "закрыть", он "выбирает" диалог и показывает его

Share this post


Link to post

1 answer to this question

  • 1

Уже сам понял как.
Надо просто поставить две кнопки в основных диалогах:
 

Цитата

case dActor0:
        {
            if(response)
            {
                ShowPlayerDialog(playerid, dActor, DIALOG_STYLE_LIST, "{FFFF00}Андрес",
                    "Кто ты такой?\n\
                    Где я нахожусь?\n\
                    Что мне делать?",
                 "Выбрать""Закрыть");//Вот тут
            }

 

затем в case следующего диалога вот эту строчку:
 

Цитата

case dActor:
        {
            if(!response) return 1;

 

 

Share this post


Link to post
Guest
This topic is now closed to further replies.
Sign in to follow this  
Followers 0