- 0
Войдите для возможности подписаться
Подписчики
0
[закрыто] Нужна помощь по pawno.
Вопросы
Лучший ответ
@Wiggins, ну, давайте попробуем.
1. Находим фрагмент кода, где отображается диалоговое окно. Поиск осуществляем по ключевым словам, которые можно увидеть в диалоге. Могу предположить, что вас интересует следующий фрагмент (см. спойлер).
2. В функции отображения диалогового окна ShowPlayerDialogEx в качестве второго параметра передается номер отображаемого диалога. Это необходимо для того, чтобы потом при обработке выбранной игроком кнопки в диалоговом окне однозначно определить, к какому диалогу относится выполненное действие. Запоминаем номер диалогового окна – 9777.
3. Находим обработчик событий, произошедших в этом диалоговом окне. При нажатии на кнопки в диалоговом окне (кнопки "Выбрать" и "Отмена" в данном случае) вызывается функция OnDialogResponse, второй параметр которой есть номер диалога, от которого пришло событие, в параметре response - номер нажатой кнопки (1 - левая кнопка, то есть "Выбрать" и 0 - правая кнопка, то есть "Отмена"), а в параметре listitem - выбранный пункт меню.
4. В коде отображения существующего меню обнаруживаем (на основе символов переносов строки \n), что пункт меню "Уникальные аксессуары на выбор" находится под номером 13 (считая с нуля).
5. Возвращаемся к пункту 3 и находим обработку диалога 9777 с нажатой клавишей response = 1 ("Выбор") и выбранным пунктом listitem – 13 (см. спойлер ниже).
6. Таким образом мы нашли обработчик события нажатия на пункт меню "Уникальные аксессуары на выбор" левой кнопкой. Остается в теле обработчика снести все, связанное с TextDraw (PlayerTextDrawSetString, PlayerTextDrawSetPreviewModel, PlayerTextDrawSetPreviewRot, PlayerTextDrawShow, SelectTextDraw). Здесь по аналогии с диалогом 9777 создать новое диалоговое окно, используя функцию ShowPlayerDialogEx. Как назвать его (title), каке пункты меню в нем будут и какие кнопки внизу – выбор за вами. Не забывайте, что диалоговому окну следует присвоить новый номер, незанятый в вашем игровом моде.
7. Создаем обработчик события нажатия на пункт меню в созданном вами диалоговом окне из пункта 6 (также по аналогии с диалогом 9777). Для каждого из возможных вариантов реализуем свою логику.

Эта тема закрыта для публикации ответов.
Войдите для возможности подписаться
Подписчики
0
-
Последние посетители 0 пользователей онлайн
Ни одного зарегистрированного пользователя не просматривает данную страницу
-
Похожий контент
-
От S.S.
Здрасвуйте, хочу спросить как делают свои лаунчеры с загрузкой даных от сервера (Свои скины, авто и т.д.). Много искал в интернете и ничего не нашел. Кто что знает? Где можно об этом почитать?
-
Wiggins Новичок 1
Доброго времени суток, нуждаюсь в помощи. Если есть люди, которые шарят в pawno, нужна помощь. Короче, мод ART RP, там в донате есть строка "Уникальные аксессуары", когда на него нажмешь, открывается TextDraw менью, нужно переделать это на обычную менью (/mm например, там обычная менью), буду рад, если поможете, за ранее спасибо.
Если не ошибаюсь, строка текстдрав аксессуаров начинается с 1416 до 1443.
art4.pwn
Поделиться сообщением
Ссылка на сообщение