- 0
Войдите для возможности подписаться
Подписчики
0

Нужна помощь по pawno.
Вопрос от
Wiggins
,
Вопросы
Лучший ответ
@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 пользователей онлайн
Ни одного зарегистрированного пользователя не просматривает данную страницу
-
Похожий контент
-
От Dev_Persona
Приветствую всех, у меня возник такой вопрос:
- хочу изменить базовую регистрацию в админке в крмп, на Болле сложную то-есть, сейчас изначально пароль от админки может быть только из цифр, хотелось бы узнать как можно было бы сделать что бы можно было использовать и цифры и буквы, вот код:
case DIALOG_ADMIN_REG:
{
if(!response) return FixKick(playerid);
if(strval(inputtext) < 100000 || strval(inputtext) > 999999) return ShowPlayerDialog(playerid, DIALOG_ADMIN_REG, DIALOG_STYLE_INPUT, "{FF6347}"PROJECT_NAME" {ffffff}| Придумайте пароль", "{FFFFFF}Для того, чтобы продолжить дальше - придумайте и введите\n{FFFFFF}пароль от панели администратора в диалоговое поле ниже.\n\n{FFFFFF}Пароль должен быть из 6 цифр.\n", "Готово", "");
SetPlayerData(playerid, P_APASS, strval(inputtext));
UpdatePlayerDatabaseInt(playerid, "AdminPassword", GetPlayerData(playerid, P_APASS));
AdminAuthorization(playerid);
}
-
Опубликовано · Жалоба
Доброго времени суток, нуждаюсь в помощи. Если есть люди, которые шарят в pawno, нужна помощь. Короче, мод ART RP, там в донате есть строка "Уникальные аксессуары", когда на него нажмешь, открывается TextDraw менью, нужно переделать это на обычную менью (/mm например, там обычная менью), буду рад, если поможете, за ранее спасибо.
Если не ошибаюсь, строка текстдрав аксессуаров начинается с 1416 до 1443.
art4.pwn
Поделиться сообщением
Ссылка на сообщение