• 0
Sign in to follow this  
Followers 0

Question

Всем привет!
Как сделать диалоговое окно ( по типу /tp ), чтобы в конце выводило нужный текст?

 

Например(за основу взял /tp),

cmd:test(playerid)
{
    if(PI[playerid][pAdmin] < 1) return 1;
    else if(AdminLogged[playerid] == false) return SendClientMessage(playerid, COLOR_GREY, YouAreNotLoggedInAsAdmin);
    ShowPlayerDialog(playerid, D_JOB+454, DIALOG_STYLE_LIST, "{"#cSV"}Тест-меню", "1. Тест №1\n2. Тест №2\n3. Тест №3", "Выбрать", "Отмена");
    return 1;
}

    case D_JOB+454:
        {
            if(!response) return 1;
            switch(listitem)
            {
            case 0: ShowPlayerDialog(playerid, D_JOB+567, 2, "{"#cSV"}Тест №1",
                "1. Начало (При нажатии должен быть текст в общий чат)\n\
                2. Середина(При нажатии должен быть текст в общий чат)\n\
                3. Конец(При нажатии должен быть текст в общий чат)", "Да", "Нет");
            case 1: ShowPlayerDialog(playerid, D_JOB+568, 2, "{"#cSV"}Тест №2",
                "1. Начало (При нажатии должен быть текст в общий чат)\n\
                2. Середина(При нажатии должен быть текст в общий чат)\n\
                3. Конец(При нажатии должен быть текст в общий чат)", "Да", "Нет");
            case 2: ShowPlayerDialog(playerid, D_JOB+569, 2, "{"#cSV"}Тест №3",
                "1. Начало (При нажатии должен быть текст в общий чат)\n\
                2. Середина(При нажатии должен быть текст в общий чат)\n\
                3. Конец(При нажатии должен быть текст в общий чат)", "Да", "Нет");
            }
        }

В команде /tp тебя телепортирует на определенные координаты, а тут должен писаться текст в чат (где-то в 3-4 строки )

Edited by Nicholson Scaletta

Share this post


Link to post

2 answers to this question

  • 0

логика проста.

switch(listitem)
{
  case 0: // это пункт: начало
    {
      //если для игрока
      SendClientMessage(id, color, message);
      //если для всех 
      SendClientMessageToAll(color, message);
    }
}

/*
	чтобы сделать в 3-4 строки текст, нужно:
*/
new message[256];
format(message, sizeof message, "Первая строка текста \nВторая строка текста\nТретья строка текста\nИт.п.");
//и переменную message передать в SendClientMessage вместо "message". 

 

Share this post


Link to post
  • 0

Спасибо

Заметка от DEST , создано

Если ответ пользователя помог Вам, рекомендуется поблагодарить автора с помощью нажатия кнопки "+" возле сообщения.

Share this post


Link to post
This topic is now closed to further replies.
Sign in to follow this  
Followers 0
  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • By def
      arizona.pwn(23374) : error 012: invalid function call, not a valid address
      arizona.pwn(23374) : error 001: expected token: ";", but found ")"
      arizona.pwn(23374) : error 029: invalid expression, assumed zero
      arizona.pwn(23374) : fatal error 107: too many error messages on one line
      жалуется на данную строчку:
       
      %s{cccccc}Для продолжения нажмите 'Далее'",PN(playerid),playerid,ItemsInfo[itemid][ItemName2],hours,cost*hours,Inventory[playerid][2][slot], AksColorName(Inventory[playerid][4][slot]), Inventory[playerid][5][slot] ? GetNameStripe(Inventory[playerid][5][slot]) : "");