Форум Pawn.Wiki - Воплоти мечту в реальность!: Simple Dialog - Форум Pawn.Wiki - Воплоти мечту в реальность!

Перейти к содержимому

  • (3 Страниц) +
  • 1
  • 2
  • 3
  • Вы не можете создать новую тему
  • Вы не можете ответить в тему

Simple Dialog Оценка: -----

#11
Пользователь офлайн   VVWVV 

  • ?
  • Вставить ник
  • Раскрыть информацию

Просмотр сообщенияcontinue (10 августа 2022 - 15:30) писал:

Нажмите сюда, чтобы прочитать это сообщение. [Показать]


Можешь напомнить, какие данные нужно валидировать? Еще вопрос, нужна ли данная валидация в Open-MP?

Пропуск аргументов добавляет дополнительный overhead, который не стоит свеч.
0

#12
Пользователь офлайн   continue 

  • Эксперт
  • Вставить ник
  • Раскрыть информацию

Просмотр сообщенияVVWVV (10 августа 2022 - 15:34) писал:

Можешь напомнить, какие данные нужно валидировать?


% менять на # (или удалять вообще)
~k~ менять на те же # (или опять же удалять вообще)

Просмотр сообщенияVVWVV (10 августа 2022 - 15:34) писал:

Еще вопрос, нужна ли данная валидация в Open-MP?


Не знаю, я не тыкал вообще ещё ничего в open-mp.


Просмотр сообщенияVVWVV (10 августа 2022 - 15:34) писал:

Пропуск аргументов добавляет дополнительный overhead, который не стоит свеч.


Это была фича, которая включалась дополнительно и ее использовали. Если тебе нужна максимальная производительность, то не включаешь ее и все (А включалась она на через #define TDW_DIALOG_SKIP_ARGS). Я очень надеюсь, что ты завезешь это)

UPD: Я так и не понял, почему нельзя было захукать OnGameModeInit / OnFilterScriptInit и там вызывать Dialog_Init? Зачем разработчикам, которые юзают эту библиотеку дергать Dialog_Init из своего кода?

Сообщение отредактировал continue: 10 августа 2022 - 15:41

1

#13
Пользователь офлайн   continue 

  • Эксперт
  • Вставить ник
  • Раскрыть информацию
а ну и ещё:

Просмотр сообщенияVVWVV (10 августа 2022 - 14:51) писал:

Нет, но могу добавить, если будет необходимость. Какая необходимость в Dialog_Create? Что должна делать данная функция?



Ну представим, что ты обрабатываешь ошибку в своем коде (например длина пароля от 6 до 30 символов). В mdialog/tdw_dialog можно было создать "шаблон" диалога и потом его вызывать, в случаи когда такого функционал нет, то тебе придется вызывать Dialog_Open во всех местах (а это вообще то как-то неоч, потому что все данные вводные могут быть одними (один и тот же ж диалог)).
0

#14
Пользователь офлайн   Pa4enka 

  • Профессионал
  • Вставить ник
  • Раскрыть информацию
Поддержку continue по поводу скипа аргументов.
0

#15
Пользователь офлайн   VVWVV 

  • ?
  • Вставить ник
  • Раскрыть информацию

Просмотр сообщенияcontinue (10 августа 2022 - 15:41) писал:

% менять на # (или удалять вообще)
~k~ менять на те же # (или опять же удалять вообще)

Спасибо.

Просмотр сообщенияcontinue (10 августа 2022 - 15:41) писал:

Это была фича, которая включалась дополнительно и ее использовали. Если тебе нужна максимальная производительность, то не включаешь ее и все (А включалась она на через #define TDW_DIALOG_SKIP_ARGS). Я очень надеюсь, что ты завезешь это)

Попробую, но я так давно не использовал макросы.

Просмотр сообщенияcontinue (10 августа 2022 - 15:41) писал:

UPD: Я так и не понял, почему нельзя было захукать OnGameModeInit / OnFilterScriptInit и там вызывать Dialog_Init? Зачем разработчикам, которые юзают эту библиотеку дергать Dialog_Init из своего кода?[/spoiler]

Хотелось сделать минимальный overhead на все. При использовании хуков мы добавляем лишний вызов для маленькой функции Dialog_Init. Я бы сделал это если бы компилятор pawn мог бы инлайнить функции.
0

#16
Пользователь офлайн   Nexius 

  • Эксперт
  • Вставить ник
  • Раскрыть информацию

Просмотр сообщенияVVWVV (10 августа 2022 - 15:34) писал:

Еще вопрос, нужна ли данная валидация в Open-MP?

Не нужна, но это ж либа и под самп тоже.

И да, насчёт описания темы: автоматоны

Сообщение отредактировал Nexius: 10 августа 2022 - 16:02

1

#17
Пользователь офлайн   continue 

  • Эксперт
  • Вставить ник
  • Раскрыть информацию

Просмотр сообщенияVVWVV (10 августа 2022 - 15:59) писал:

Нажмите сюда, чтобы прочитать это сообщение. [Показать]


Но вместо этого, получишь много отзывов, о том что ничего не работает (потому что человек забыл вызывать у себя функцию)
0

#18
Пользователь офлайн   VVWVV 

  • ?
  • Вставить ник
  • Раскрыть информацию

Просмотр сообщенияNexius (10 августа 2022 - 16:02) писал:

Не нужна, но это ж либа и под самп тоже.

Спасибо. Учту.

Просмотр сообщенияNexius (10 августа 2022 - 16:02) писал:

И да, насчёт описания темы: автоматоны

Автоматное программирование
0

#19
Пользователь офлайн   Nexius 

  • Эксперт
  • Вставить ник
  • Раскрыть информацию

Просмотр сообщенияVVWVV (10 августа 2022 - 16:06) писал:


А, тогда без проблем. У зигги 300 лет назад как тот мануал на русском про них вышел, так и повелось это название внутри ру-форумов
0

#20
Пользователь офлайн   DeimoS 

  • Evil Scripter
  • Вставить ник
  • Раскрыть информацию

Просмотр сообщенияSaibot (10 августа 2022 - 14:56) писал:

Нажмите сюда, чтобы прочитать это сообщение. [Показать]



Имхо, вот это гораздо важнее всяких пропусков аргументов и прочего. Как минимум, это позволит соблюсти совместимость с текущими "диалоговыми процессорами", не заставляя людей переписывать кучу кода непонятно ради чего (диалоги и без такого прироста к скорости работают нормально, вроде. Так что потраченное время точно не окупится). А уже прочие фичи можно прикручивать после того, как библиотека станет юзер-френдли.

Сообщение отредактировал DeimoS: 10 августа 2022 - 16:19

2

Поделиться темой:


  • (3 Страниц) +
  • 1
  • 2
  • 3
  • Вы не можете создать новую тему
  • Вы не можете ответить в тему

1 человек читают эту тему
0 пользователей, 1 гостей, 0 скрытых пользователей


Яндекс.Метрика