1 post in this topic

Уже больше года существуют диалоговые процессоры, однако мало тем про них.

В общем, диалоговый процессор значительно упрощает работу с диалогами пользователям. Например, диалоги теперь можно создавать не только в стандартном OnDialogResponse, но и в любой части мода, как на DC_CMD. Также теперь вовсе необязательно придавать номер диалоговому окну. Можно ввести его название, например

ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_MSGBOX, "Название", "Текст", "Кнопка_1", "Кнопка_2");

И использовать:

DLG:DIALOG_REGISTER(playerid, response, listitem, inputtext[])
{ /*ваш код*/ }

(ранее для этого нужно было вручную дефайнить названия диалогов).

 

Тесты скорости:

'ShowPlayerDialog' productiveness Test result:
ShowPlayerDialog = 439ms
OnDialogResponse = 303ms
 
// И ещё раз
 
'ShowPlayerDialog' productiveness Test result:
ShowPlayerDialog = 416ms
OnDialogResponse = 311ms
 
//=================
 
eDialog include productiveness Test result:
ShowPlayerDialog = 533ms
OnDialogResponse = 74ms
 
// И ещё раз
 
eDialog include productiveness Test result:
ShowPlayerDialog = 573ms
OnDialogResponse = 65ms
Тест реализован на цикле в 100000 итераций, в которых сначала показывается диалог, а после вызывается OnDialogResponse. Для стандартного движка создано 200 простых диалогов в OnDialogResponse. Как видно из теста, eDialog слегка проигрывает стандартному ShowPlayerDialog при вызове диалога, но в выигрышном положении при обработке содержимого диалога.
 
Использовать можно тремя способами:
DLG:DIALOG_NAME(playerid, response, listitem, inputtext)
{
        return true;
}
DIALOG:DIALOG_NAME(playerid, response, listitem, inputtext)
{
        return true;
}
E_DLG:DIALOG_NAME()
{
        return true;
}

(вместо DIALOG_NAME могут быть как цифры, так и слова).

Include автора содержит еще функцию показа окна информации (диалоговое окно типа DIALOG_STYLE_MSGBOX, которое можно только закрыть, названия кнопок указывать не нужно):

ShowInfoDialog(playerid, "Название", "Текст");

Автор: Edwin.

 

Скачать

 

Edited by stibs

Share this post


Link to post
Share on other sites
Sign in to follow this  
Followers 0

  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • Человек-редиска
      By Редиска
      Доброго времени суток, уважаемые форумчане!
       
      Представляю вашему вниманию игровой мод Родина РП. Мод полностью рабочий. Заходить можно с официального лаунчера Арз. 
      Коротко о моде:
      1. 8 уровней админки, 2 уровня ФД.
      2. Ежедневные награды
      3. Мод с бонусом, но его можно легко убрать
      4. Мод легко настраиваемый
      5. Бери, заливай на хостинг и запускай, никаких проблем и ошибок
      6. Система тюнинга
      7. Нет казино!
      8. Баттлпасс
      9. Аукционы
      10. Cef /donate
      11. Cef /gps
       
      Всё это и многое другое ждёт вас в данном моде!
      Цена оправдана, мод ни разу нигде не сливался. Другие лица продают его от 15к+.
    • Nik_Rofid
      By Nik_Rofid
      Здравствуйте, можно ли на сервере копии радмира сделать так, что бы на машину можно было установить конкретный номер например ставится на машу рандом номер а будет х777хх77