#Copyright

Создание команды на кнопку

В теме 4 сообщения

Здравствуйте дорогие друзья, это уже мой третий урок - в данном уроке вы сможете делать команду на кнопку, приступим.

Что нам понадобится:
- Сама команда которая будет активирована по нажатие кнопки

- Ровные руки и свободные 10 минут.

Для того чтобы кнопка активировала нашу команду, мы ищем наш public "public OnPlayerKeyStateChange"
С корень паблика мы должны будем вставить код:


 

if (newkeys == ID)
{
OnPlayerCommandText(playerid,""); 
 }



Пояснение:

 

//newkeys == ID - заместо слова "ID" мы пишем на ID кнопки которая будет активировать команду ( Список всех ID кнопок будет ниже )
//OnPlayerCommandText - Функция которая вызывает активирование команды после нажатия на кнопку
//(playerid, ""); - В скобка мы пишем команду которая будет активирована после нажатия на кнопку.



Вот и все, наш урок на этом заканчивается, спасибо за внимание.
Автор: #CopyRight
Специально для PAWNO-RUS

ID's


 

Спойлер

d = 36 символ = $
id = 37 символ = %
id = 38 символ = &
id = 39 символ = '
id = 40 символ = (
id = 41 символ = )
id = 42 символ = *
id = 43 символ = +
id = 44 символ = ,
id = 45 символ = -
id = 46 символ = .
id = 47 символ = /
id = 48 символ = 0
id = 49 символ = 1
id = 50 символ = 2
id = 51 символ = 3
id = 52 символ = 4
id = 53 символ = 5
id = 54 символ = 6
id = 55 символ = 7
id = 56 символ = 8
id = 57 символ = 9
id = 58 символ = :
id = 59 символ = ;
id = 60 символ = <
id = 61 символ = =
id = 62 символ = >
id = 63 символ = ?
id = 64 символ = @
id = 65 символ = A
id = 66 символ = B
id = 67 символ = C
id = 68 символ = D
id = 69 символ = E
id = 70 символ = F
id = 71 символ = G
id = 72 символ = H
id = 73 символ = I
id = 74 символ = J
id = 75 символ = K
id = 76 символ = L
id = 77 символ = M
id = 78 символ = N
id = 79 символ = O
id = 80 символ = P
id = 81 символ = Q
id = 82 символ = R
id = 83 символ = S
id = 84 символ = T
id = 85 символ = U
id = 86 символ = V
id = 87 символ = W
id = 88 символ = X
id = 89 символ = Y
id = 90 символ = Z
id = 91 символ = [
id = 92 символ = \
id = 93 символ = ]
id = 94 символ = ^
id = 95 символ = _
id = 96 символ = `
id = 97 символ = a
id = 98 символ = b
id = 99 символ = c
id = 100 символ = d
id = 101 символ = e
id = 102 символ = f
id = 103 символ = g
id = 104 символ = h
id = 105 символ = i
id = 106 символ = j
id = 107 символ = k
id = 108 символ = l
id = 109 символ = m
id = 110 символ = n
id = 111 символ = o
id = 112 символ = p
id = 113 символ = q
id = 114 символ = r
id = 115 символ = s
id = 116 символ = t
id = 117 символ = u
id = 118 символ = v
id = 119 символ = w
id = 120 символ = x
id = 121 символ = y
id = 122 символ = z
id = 123 символ = {
id = 124 символ = |
id = 125 символ = }
id = 126 символ = ~
id = 127 символ =
id = 128 символ = Ђ
id = 129 символ = Ѓ
id = 130 символ = ‚
id = 131 символ = ѓ
id = 132 символ = „
id = 133 символ = …
id = 134 символ = †
id = 135 символ = †
id = 136 символ = €
id = 137 символ = ‰
id = 138 символ = Љ
id = 139 символ = ‹
id = 140 символ = Њ
id = 141 символ = Ќ
id = 142 символ = Ћ
id = 143 символ = Џ
id = 144 символ = ђ
id = 145 символ = ‘
id = 146 символ = ’
id = 147 символ = “
id = 148 символ = ”
id = 149 символ = •
id = 150 символ = –
id = 151 символ = —
id = 152 символ = ˜
id = 153 символ = ™
id = 154 символ = љ
id = 155 символ = ›
id = 156 символ = њ
id = 157 символ = ќ
id = 158 символ = ћ
id = 159 символ = џ
id = 160 символ =
id = 161 символ = Ў
id = 162 символ = ў
id = 163 символ = Ј
id = 164 символ = ¤
id = 165 символ = Ґ
id = 166 символ = ¦
id = 167 символ = §
id = 168 символ = Ё
id = 169 символ = ©
id = 170 символ = Є
id = 171 символ = «
id = 172 символ = ¬
id = 173 символ =
id = 174 символ = ®
id = 175 символ = Ї
id = 176 символ = °
id = 177 символ = ±
id = 178 символ = І
id = 179 символ = і
id = 180 символ = ґ
id = 181 символ = µ
id = 182 символ = ¶
id = 183 символ = ·
id = 184 символ = ё
id = 185 символ = №
id = 186 символ = є
id = 187 символ = »
id = 188 символ = ј
id = 189 символ = Ѕ
id = 190 символ = ѕ
id = 191 символ = ї
id = 192 символ = А
id = 193 символ = Б
id = 194 символ = В
id = 195 символ = Г
id = 196 символ = Д
id = 197 символ = Е
id = 198 символ = Ж
id = 199 символ = З
id = 200 символ = И
id = 201 символ = Й
id = 202 символ = К
id = 203 символ = Л
id = 204 символ = М
id = 205 символ = Н
id = 206 символ = О
id = 207 символ = П
id = 208 символ = Р
id = 209 символ = С
id = 210 символ = Т
id = 211 символ = У
id = 212 символ = Ф
id = 213 символ = Х
id = 214 символ = Ц
id = 215 символ = Ч
id = 216 символ = Ш
id = 217 символ = Щ
id = 218 символ = Ъ
id = 219 символ = Ы
id = 220 символ = Ь
id = 221 символ = Э
id = 222 символ = Ю
id = 223 символ = Я
id = 224 символ = а
id = 225 символ = б
id = 226 символ = в
id = 227 символ = г
id = 228 символ = д
id = 229 символ = е
id = 230 символ = ж
id = 231 символ = з
id = 232 символ = и
id = 233 символ = й
id = 234 символ = к
id = 235 символ = л
id = 236 символ = м
id = 237 символ = н
id = 238 символ = о
id = 239 символ = п
id = 240 символ = р
id = 241 символ = с
id = 242 символ = т
id = 243 символ = у
id = 244 символ = ф
id = 245 символ = х
id = 246 символ = ц
id = 247 символ = ч
id = 248 символ = ш
id = 249 символ = щ
id = 250 символ = ъ
id = 251 символ = ы
id = 252 символ = ь
id = 253 символ = э
id = 254 символ = ю
id = 255 символ = я

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

@#Copyright, настоятельно рекомендуется использовать проверку нажатия только данной кнопки (ее бита), а не всей системы клавиш путем сравнивания всех битов, как это вы сделали:

if(newkeys & KEY_WALT).

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

UPD!
Для того чтобы сделать активацию команды кнопкой в определенном месте, пишем это:

if (newkeys == ID)
{
if(PlayerToPoint(RADIUS,playerid,XYZ))
OnPlayerCommandText(playerid,""); 
}


Пояснение:

- 'RADIUS' радиус места где можно открыть команду с помощью кнопки
- 'XYZ' - Координаты где можно активировать команду кнопкой!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

@#Copyright а как вызвать команду, если Pawn.CMD? Или dc_cmd? Макрос PlayerToPoint не у всех есть и вместо этого, рекомендую, динамические зоны юзать. 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!


Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.


Войти

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

  • Похожий контент

    • danya_white
      От danya_white
      Оригинальный мод SA:MP Reinforce RP
      Скачать файл Доброго времени суток, хочу выставить на продажу уникального игровой мод проекта Reinforce RP
      Игровой мод написан с нуля, мод по своему уникальный так как полностью состоит из TextDrawax.
      Из паблика ничего не используется. На момент открытие проект держал онлайн в 800+ человек беспроблемно.
      На момент продажи все найденные баги/недоработки были исправлены.
       
      Информация о моде:
      Версия MYSQL - R39-6
      Античит - Самописный античит
      Стример - Streamer Plugin v2.9.4 by Incognito
      Командный процессор - ZCMD
      Хэширование паролей - MD5
      Остальное Все плагины обновлены до последней версии

      Функционал, интерфейс можно посмотреть по скриншотам и видеообзорам ниже.
       
      Видеообзоры/скриншоты:
       

      Почти всё реализовано на текстдравах, с возможностью смены цвета интерфейса под игрока. Цвета можно без проблем добавлять.
      Количество копий на продажу ограничено. 
      Добавил danya_white Добавлено 21.02.2025 Категория Моды Автор danya_white  
    • danya_white
      От danya_white
      Доброго времени суток, хочу выставить на продажу уникального игровой мод проекта Reinforce RP
      Игровой мод написан с нуля, мод по своему уникальный так как полностью состоит из TextDrawax.
      Из паблика ничего не используется. На момент открытие проект держал онлайн в 800+ человек беспроблемно.
      На момент продажи все найденные баги/недоработки были исправлены.
       
      Информация о моде:
      Версия MYSQL - R39-6
      Античит - Самописный античит
      Стример - Streamer Plugin v2.9.4 by Incognito
      Командный процессор - ZCMD
      Хэширование паролей - MD5
      Остальное Все плагины обновлены до последней версии

      Функционал, интерфейс можно посмотреть по скриншотам и видеообзорам ниже.
       
      Видеообзоры/скриншоты:
       

      Почти всё реализовано на текстдравах, с возможностью смены цвета интерфейса под игрока. Цвета можно без проблем добавлять.
      Количество копий на продажу ограничено. 
    • kirill1995
      От kirill1995
      Крч делаю свой сервер пытаюсь запустить его и у меня вылазит ошибка [MySQL R41-4]: Подключиться к базе данных не удалось.
      может кто шарит как это пофиксить заплачу!

    • Dev_Persona
      От Dev_Persona
      Приветствую, вот ищу код для скрытия кнопки прыжка, пробовал коды HUD_JUMP, HUD_ELEMENT_JUMP, не чего не помогло, подскажите кто знает код для скрытие кнопки прыжка в крмп
    • Tappert
      От Tappert
      Диалог команды работает и отображается, после выбора любой должности пустота
      CMD:ahelp(playerid) {     if (admin_level[playerid] < 1 || !admin_logged[playerid]) return 1;     SPD(playerid, 1234, DIALOG_STYLE_LIST, ""c_server"Команды администрации","\         "c_server"1 "c_white"- Помощник администрации\n\         "c_server"}2 "c_white"- Стажёр модерации\n\         "c_server"3 "c_white"- Младший администратор\n\         "c_server"4 "c_white"- Опытный администратор\n\         "c_server"5 "c_white"- Куратор сервера\n\         "c_server"6 "c_white"- Заместитель главы администрации\n\         "c_server"7 "c_white"- Глава администрации\n\         "c_server"8 "c_white"- Куратор игрового процесса\n\         "c_server"9 "c_white"- Директор проекта\n\         "c_server"10 "c_white"- Создатель", "Выбрать", "Закрыть");          return 1; }         case 9992: return pc_cmd_leaders(playerid, "");         case 9993: return pc_cmd_offleaders(playerid, "");         case 9996: return MenuAtms(playerid); // основной банковский счет         case 9997: return OprDialog(playerid); // система счетов банк         case 9998: return BankDialog(playerid); // банкдиалог         case 9999: return pc_cmd_menu(playerid, ""); // /mm         case 1234:         {         if (!response) return 1;         switch (listitem)         {                 case 0:                 {                     if (admin_level[playerid] < 1 || !admin_logged[playerid])                     {                         SendClientMessage(playerid, col_grey, "Вы не достигли такого уровня.");                         return 1;                     }                                          SPD(playerid, 1234, DIALOG_STYLE_MSGBOX, "", "\                     "c_server"/sc"c_white" — чат игровых помощников\n\                     "c_server"/alogin"c_white" — авторизоваться в панели администратора\n\                     "c_server"/aexit"c_white" — выйти из панели администратора\n\                     "c_server"/ans"c_white" — ответить игроку\n\                     "c_server"/srep"c_white" — список вопросов в порядке живой очереди\n\                     "c_server"/admins"c_white" — список администрации в сети", "Закрыть", "");                 }                 case 1:                 {                     if (admin_level[playerid] < 2 || !admin_logged[playerid])                     {                         SendClientMessage(playerid, col_grey, "Вы не достигли такого уровня.");                         return 1;                     }                          SPD(playerid, 1234, DIALOG_STYLE_MSGBOX, "", "\                     "c_server"/a"c_white" — чат администрации\n\                     "c_server"/arep"c_white" — список жалоб в порядке живой очереди\n\                     "c_server"/sp | /offsp"c_white" — начать / завершить слежку за игроком\n\                     "c_server"/pstats | /offpstats"c_white" — посмотреть статистику игрока\n\                     "c_server"/frz"c_white" — заморозить / разморозить игрока\n\                     "c_server"/ajail"c_white" — посадить игрока в тюрьму (< 30)\n\                     "c_server"/mute"c_white" — заблокировать чат игроку (< 60)\n\                     "c_server"/spawn"c_white" — отправить игрока на место возрождение\n\                     "c_server"/kick"c_white" — отключить игрока от сервера\n\                     "c_server"/hp"c_white" — восстановить здоровье игроку\n\                     "c_server"/okay"c_white" — подтвердить изменение nonRP ник\n\                     "c_server"/nookay"c_white" — отменить изменение nonRP ника", "Закрыть", "");                 }                 case 2:                 {                     if (admin_level[playerid] < 3 || !admin_logged[playerid])                     {                         SendClientMessage(playerid, col_grey, "Вы не достигли такого уровня.");                         return 1;                     }                          SPD(playerid, 1234, DIALOG_STYLE_MSGBOX, "", "\                     "c_server"/ban"c_white" — заблокировать аккаунт игроку (< 10)\n\                     "c_server"/warn"c_white" — выдать предупреждение игроку\n\                     "c_server"/ajail"c_white" — посадить игрока в тюрьму (< 120)\n\                     "c_server"/mute"c_white" — заблокировать чат игроку (< 120)\n\                     "c_server"/goto"c_white" — телепортироватся к игроку\n\                     "c_server"/gethere"c_white" — телепортировать игрока к себе\n\                     "c_server"/fix"c_white" — починить транспорт (ID)\n\                     "c_server"/gotcar"c_white" — телепортироваться к транспорту\n\                     "c_server"/getcar"c_white" — телепортировать транспорт к себе\n\                     "c_server"/recar"c_white" — заспавнить транспорт (ID)\n\                     "c_server"/skick"c_white" — тихо отключить игрока от сервера", "Закрыть", "");                 }                 case 3:                 {                     if (admin_level[playerid] < 4 || !admin_logged[playerid])                     {                         SendClientMessage(playerid, col_grey, "Вы не достигли такого уровня.");                         return 1;                     }                     SPD(playerid, 1234, DIALOG_STYLE_MSGBOX, "", "\                     "c_server"/ban"c_white" — заблокировать аккаунт игроку (< 30)\n\                     "c_server"/fip"c_white" — имеющиеся аккаунты по IP адресу\n\                     "c_server"/banip"c_white" — заблокировать IP адрес\n\                     "c_server"/unwarn"c_white" — снять предупреждение с игрока\n\                     "c_server"/unmute"c_white" — разблокировать чат игроку\n\                     "c_server"/unajail"c_white" — выпустить игрока из тюрьмы\n\                     "c_server"/slap"c_white" — подкинуть игрока\n\                     "c_server"/veh"c_white" — создать транспорт\n\                     "c_server"/delveh"c_white" — удалить созданный транспорт\n\                     "c_server"/delvehall"c_white" — удалить весь созданный транспорт\n\                     "c_server"/plveh"c_white" — выдать временный транспорт игроку\n\                     "c_server"/getip"c_white" — узнать IP игрока\n\                     "c_server"/offmute"c_white" — заблокировать чат игроку в оффлайне\n\                     "c_server"/offajail"c_white" — посадить игрока в тюрьму в оффлайне\n\                     "c_server"/offwarn"c_white" — выдать предупруждение игроку в оффлайне\n\                     "c_server"/offban"c_white" — заблокировать аккаунт в оффлайне\n\                     "c_server"/spveh"c_white" — заспавнить транспорт в радиусе\n\                     "c_server"/spawncars"c_white" — заспавнить весь свободный транспорт", "Закрыть", "");                 }                 case 4:                 {                     if (admin_level[playerid] < 5 || !admin_logged[playerid])                     {                         SendClientMessage(playerid, col_grey, "Вы не достигли такого уровня.");                         return 1;                     }                     SPD(playerid, 1234, DIALOG_STYLE_MSGBOX, "", "\                     "c_server"/aad"c_white" — OOC сообщение для игроков\n\                     "c_server"/skin"c_white" — выдать временную одежду игроку\n\                     "c_server"/setskin"c_white" — выдать постоянную одежду игроку\n\                     "c_server"/templeader"c_white" — назначить себя временным руководителем\n\                     "c_server"/getonline"c_white" — информация онлайна игрока\n\                     "c_server"/unban"c_white" — разблокировать аккаунт\n\                     "c_server"/unbanip"c_white" — разблокировать IP адрес\n\                     "c_server"/setfaction"c_white" — принять игрока в организацию\n\                     "c_server"/infoip"c_white" — информация о IP адресе\n\                     "c_server"/getfake"c_white" — поиск информации по IP адресу\n\                     "c_server"/setvw"c_white" — переместиться в другой виртуальный мир\n\                     "c_server"/setint"c_white" — переместиться в другой интерьер", "Закрыть", "");                 }                 case 5:                 {                     if (admin_level[playerid] < 6 || !admin_logged[playerid])                     {                         SendClientMessage(playerid, col_grey, "Вы не достигли такого уровня.");                         return 1;                     }                     SPD(playerid, 1234, DIALOG_STYLE_MSGBOX, "", "\                     "c_server"/givegun"c_white" — выдать оружие игроку\n\                     "c_server"/settime"c_white" — изменить время на сервере\n\                     "c_server"/agl"c_white" — выдать лицензии игроку\n\                     "c_server"/fullgwh"c_white" — пополнить склады всем организациям\n\                     "c_server"/auninvite"c_white" — уволить игрока из организации", "Закрыть", "");                 }                 case 6:                 {                     if (admin_level[playerid] < 7 || !admin_logged[playerid])                     {                         SendClientMessage(playerid, col_grey, "Вы не достигли такого уровня.");                         return 1;                     }                     SPD(playerid, 1234, DIALOG_STYLE_MSGBOX, "", "\                     "c_server"/makeadmin"c_white" — назначить администратора\n\                     "c_server"/unadmin"c_white" — снять администратора\n\                     "c_server"/createpromo"c_white" — создать новый промокод\n\                     "c_server"/promo"c_white" — список доступных промокодов\n\                     "c_server"/ahouse"c_white" — телепортироваться к дому\n\                     "c_server"/abiz"c_white" — телепортироваться к бизнесу\n\                     "c_server"/afuel"c_white" — телепортироваться к заправке\n\                     "c_server"/freezepanel"c_white" — статусы заморозки банд\n\                     "c_server"/delacc"c_white" — удалить аккаунт", "Закрыть", "");                 }                 case 7:                 {                     if (admin_level[playerid] < 8 || !admin_logged[playerid])                     {                         SendClientMessage(playerid, col_grey, "Вы не достигли такого уровня.");                         return 1;                     }                     SPD(playerid, 1234, DIALOG_STYLE_MSGBOX, "", "\                     "c_server"/alog"c_white" — действия администратора\n\                     "c_server"/addnotify"c_white" — добавить сообщение для игрока (при входе)\n\                     "c_server"/asellhouse"c_white" — продать дом государству\n\                     "c_server"/asellbiz"c_white" — продать бизнес государству\n\                     "c_server"/asellfuel"c_white" — продать запраку государству\n\                     "c_server"/bonus"c_white" — панель управления бонусами\n\                     "c_server"/setprod"c_white" — установить всем бизнесам 20,000 продуктов\n\                     "c_server"/setbizname"c_white" — изменить название бизнеса\n\                     "c_server"/sptext"c_white" — написать сообщение от лица игрока", "Закрыть", "");                 }                 case 8:                 {                     if (admin_level[playerid] < 9 || !admin_logged[playerid])                     {                         SendClientMessage(playerid, col_grey, "Вы не достигли такого уровня.");                         return 1;                     }                     SPD(playerid, 1234, DIALOG_STYLE_MSGBOX, "", "\                     "c_server"/saveall"c_white" — сохранить все данные\n\                     "c_server"/payday"c_white" — запустить PayDay\n\                     "c_server"/setlevel"c_white" — установить игроку уровень", "Закрыть", "");                 }                 case 9:                 {                     if (admin_level[playerid] < 10 || !admin_logged[playerid])                     {                         SendClientMessage(playerid, col_grey, "Вы не достигли такого уровня.");                         return 1;                     }                     SPD(playerid, 1234, DIALOG_STYLE_MSGBOX, "", "\                     "c_server"/restart"c_white" — перезагрузить сервер\n\                     "c_server"/anticheat"c_white" — настройки античита\n\                     "c_server"/givemoney"c_white" — выдать игровую валюту игроку\n\                     "c_server"/givedonate"c_white" — выдать донат рубли игроку\n\                     "c_server"/giveoskolok"c_white" — выдать осколки тайника игроку", "Закрыть", "");                 }                            }         }