Sign in to follow this  
Followers 0
#Copyright

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

4 posts in this topic

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

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

- Ровные руки и свободные 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 символ = я

 

Share this post


Link to post
Share on other sites

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

if(newkeys & KEY_WALT).

Share this post


Link to post
Share on other sites

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

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


Пояснение:

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

Share this post


Link to post
Share on other sites

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

Share this post


Link to post
Share on other sites

Your content will need to be approved by a moderator

Guest
You are commenting as a guest. If you have an account, please sign in.
Reply to this topic...

×   You have pasted content with formatting.   Remove formatting

  Only 75 emoticons maximum are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

Loading...
Sign in to follow this  
Followers 0

  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • Джеймс
      By Джеймс
      Здравствуйте Ув.Участиники PAWNO-RUS,
      Столкнулся с проблемой - *Транспорт сломанный при загрузке на сервер* То есть загружаешь Т.С после покупки с 50% состоянии
      С исправлением затрудняюсь, может вы можете как то помочь.
      Заранее спасибо!
       
    • Раксон Фаркрай
      By Раксон Фаркрай


      Просмотр файла ARIZONA RP V PODAROK LOGS + FORUM + SITE 1.0.0
      Переписал такие систему квестов, кладов, начальных работ, смерти.
      Скрины обновлений, скину чуть позже.
      Глобальная оптимизация таймеров, циклов, сохранений, старых систем.
      Полностью отказались от плагина fmt.
      Фикс всех багов, которые нашли игроки.
      Отображение новых скинов, машин в инвентаре/донате будут заменяться на стандартные, если игрок без лаунчера отображение скинов свыше 311 ид будет заменяться на дефолтный(визуально). Отображение 3д текстов на автомобиле без лаунчера(визуально).
      Заточки аксессуаров
      Перевод аккаунтов с других серверов(MYSQL и с одобрением администрации и проверки аккаунта ботом).
      История наказаний с нуля
      Написаны новые анти читы(dgun, teleport car, rvanka, teleport for mark).
      Рекон с нуля(фулл копия) + переписаны сертификаты на читабельный код
      Система биткоинов написана
      Редактор для дома/бизнеса
      Секондхенд
      Сампбет
      ТестДрав машин
      LauncherAddon crack (by legendver)
      и Все это за 150 рублей !
      ВСЕ ОБНОВЛЕНИЯ БЕСПЛАТНО
      Добавил Раксон Фаркрай Добавлено 21.07.2021 Категория Моды Автор Я  
    • saasha
      By saasha
      Всем привет!  Можете сказать, что сделал не так? В игре пишу команду "/test" и появляется этот диалог 
      CMD:reptest(playerid) { PlayerPlaySound(playerid, 1054, 0.0, 0.0, 0.0); ShowPlayerDialog(playerid, D_MAINMENU, DIALOG_STYLE_LIST, "{c71616}Репорт тест", "\ {c71616}1. {FFFFFF}Связь с администрацией", "Выбрать", "Отмена"); return 1; } Если выбрать 1 пункт, то должен появится данный диалог. Но он не появляется почему-то 
      case D_MAINMENU: { if(!response) return 1; switch(listitem) { case 0: { if(g_player[playerid][P_MUTE] > 0) return SendClientMessage(playerid, 0xff6600AA, "Доступ в чат заблокирован. Узнать время до окончания бана чата:{c71616}/time"); ShowPlayerDialog(playerid,15155,DIALOG_STYLE_INPUT,"{FFBF40}Вопрос/жалоба","{FFFFFF}Введите своё сообщение для администрации сервера\nОно должно быть кратким и ясным\n\n{66CC66}Если вы хотите подать жалобу на игрока,\nобязательно укажите его ID и причину жалобы","Отправить","Отмена"); } } } После него должен идти данный диалог:
      case 15155: { if(!response) return true; if(strlen(inputtext) < 1 || strlen(inputtext) > 124) return SendClientMessage(playerid,COLOR_RED,"Не менее 1 и не более 124 символов!"); if(MaxReported == 25) return SCM(playerid, VAGOS_COLOR, "[Ошибка] {ffffff}Репорт переполнен, ожидайте!"); if(GetPVarInt(playerid,"AntiFloodRep") > gettime()) return SendClientMessage(playerid, VAGOS_COLOR, "[Ошибка]:{ffffff} На отправку репорта существует лимит времени, пожалуйста подождите."); if(GetPVarInt(playerid,"RepUn") > 0) return SendClientMessage(playerid,COLOR_RED,"[Ошибка] {ffffff}Ваша прошлая жалоба ещё не рассмотрена!"); SetPVarInt(playerid,"RepUn",1); for(new i = 0; i<25;i++) { if(RepInfo[i][RepID] == 0) { RepInfo[i][RepID] = random(5000) + 1; RepInfo[i][RepIDD] = playerid; RepInfo[i][RepStatus] = 0; strmid(RepInfo[i][Reptex], inputtext,0,strlen(inputtext),130); RepInfo[i][RepTime] = gettime(); MaxReported++; SetPVarInt(playerid,"RepIDSO",RepInfo[i][RepID]); break; } } //if(g_player[playerid][P_VIP][0] == 1 || g_player[playerid][P_VIP][1] == 1 || g_player[playerid][P_VIP][2] == 1) SetPVarInt(playerid, "AntiFloodRep", gettime() + 30); //else SetPVarInt(playerid, "AntiFloodRep", gettime() + 90); UpdateReported(); new fmt_text[200]; format(fmt_text, sizeof(fmt_text), "Поступил новый вопрос, просьба рассмотреть! Воспользуйтесь: (/ans [ID репорта])."); SendMessageToAdmins(fmt_text, 0x99999FF); SendClientMessage(playerid,0x3399feFF, "Ваша жалоба отправлена на рассмотрение!"); //SendMessageToAdmins(0x287fc7ff, "Поступил новый вопрос, просьба рассмотреть! Воспользуйтесь: (/ans [ID репорта])."); //SendClientMessage(playerid,0x3399feFF, "Ваша жалоба отправлена на рассмотрение!"); }  
    • ArnoldSempai
      By ArnoldSempai
      Приветствую Форумчани! Тут такая фигня, сделал систему EXP и LvL ошибок нет, но в базе минуты не обновляются и в игре ничего не происходит! Надеюсь сможете помочь!

      Форварды:
       
      forward SecondUpdate(); forward MinuteUpdate();

      Переменная:
       
      new expmultiply = 3;

      Паблики:

       


      Стоки:
       
       
       
    • king98
      By king98


      Просмотр файла Arizona Rp | Ariant Перезалив
      Перезалив мода Arizona Rp | Ariant
      Всё обновы можете посмотреть на тестовом сервере.
      Test IP:135.181.113.179:7842
      Nick:Test_Mode
      Password:123123
      Admin Password:123123
      FullDostup:2 lvl
      Добавил king98 Добавлено 25.07.2021 Категория Моды Автор Kross