17:45
ОбновитьСмайлыУправление мини-чатом
МИНИ-ЧАТ
Главная страница!

 



 
          





Рекомендуем:





Последние Файлы GTA 4 Последние Файлы GTA-MP Реклама
Скрипт GTA 4 элементы Watch... 07.09.2014
Ferrari 360 Spider [EPM con... 13.12.2013
Porsche Cayenne Turbo 2012 ... 13.12.2013
Shelby Terlingua Mustang v1... 13.12.2013
Hamann Lamborghini Gallardo... 27.10.2013
[GM] The Big PEN1:LS v2.00 ... 04.12.2017
Dgun (AvnanceRP,SampRP,Dimo... 19.03.2016
SAMP скрипт SX Events (MySQ... 03.03.2016
Карта ASL мэрия для SAMP се... 03.03.2016
AIM для SA-MP 0.3.7 22.02.2016
  • Страница 1 из 5
  • 1
  • 2
  • 3
  • 4
  • 5
  • »
Модератор форума: Alcoholik  
Как назначить команду на кнопку?
MAS_22Дата: Понедельник, 29.06.2009, 18:07 | Сообщение # 1
Мастер джэдай
Группа: I'm V.I.P.
Сообщений: 2554
Награды: 103
Город: -
Репутация: 1658
Замечания: 80%
Статус:
Да темы уже были, я пишу тут понятным языком всё в одной теме чтобы понятно было
Ытак, вставляем в начало скрипта
forward OnPlayerKeyStateChange(playerid, newkeys, oldkeys);

потом создаем такой паблик
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
if (newkeys == #) // Ид кнопки
{
OnPlayerCommandText(playerid,"/MyCmd"); // Ваша команда
}
return 1;
}

# - иды кнопок

Code

1 - Действие     
2 - Присесть     
4 - Огонь     
8 - Спринт     
16 - Вторичная атака     
32 - Прыжок     
64 - Смотреть в право     
128 - Ручной тормоз     
256 - Смотреть в лево     
512 - Субмиссия(в машине), Смотреть назад(пешком)     
1024 - Идти шагом     
2048 - Аналог вверх (по умолчанию 8 )     
4096 - Аналог ввниз (по умолчанию 2)     
8192 - Аналог влево (по умолчанию 4)     
16384 - Аналог вправо (по умолчанию 6)
16 - кнопка G

например
[pwn]public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
if (newkeys == 32)// Вот например: при нажатии клавиши прыжок, чел войдет куда-то, но внимание если будете вставлять, говорите вашем юзверям не так: " введите /enter или нажмите пробел" а " нажмите клавишу прыжок" потому что у каждого прыг может быть по разному
{
OnPlayerCommandText(playerid,"/enter");
}
if (newkeys == 1204)
{
OnPlayerCommandText(playerid,"/Пукнуть");// Команда чтобы пукнуть теперь на кнопке ходьбы (стандартно - alt) (внимание код команды "пукнуть" не прилагается)
}
if (newkeys == 8192)
{
OnPlayerCommandText(playerid,"/kill"); // по н7ажатию "Num 2" игрок здохнет и т.д
}
return 1;
}
[/pwn]

ЗЫ: Можно извлекать из newkeys и пр определенную часть, например: if(newkeys & 128) будет работать, если нажаты клавиши ручного торомза и ускорения и даже с поворотом
ЗЫЫ: Неслушайте морозко, он непротрезвел


Сообщение отредактировал MAS_22 - Понедельник, 29.06.2009, 22:07
Lu-TennantДата: Понедельник, 29.06.2009, 18:17 | Сообщение # 2
Местный
Группа: Продвинутые
Сообщений: 743
Награды: 5
Город: Yekaterinburg
Репутация: 13
Замечания: 60%
Статус:
Хороший мануал, респект. ;)


С.Э.К.С. (от англ. G.E.C.K. - Garden of Eden Creation Kit)
KweckeyДата: Понедельник, 29.06.2009, 18:26 | Сообщение # 3
Советчик
Группа: Пользователи
Сообщений: 1149
Награды: 65
Город: townofgames.ru
Замечания: 100%
Статус:
MAS_22, эээ помойму вот это
Quote (MAS_22)
OnPlayerCommandText(playerid,"/MyCmd");

будет лишним.. обычно люди используют действие которое дает командавот пример:
Команда:
Code
if (strcmp(cmdtext, "/og", true)==0)
      {
     if(PlayerToPoint(1.0,playerid,1582.4763,-1640.4672,13.1571) && IsACop(playerid))
     {
           {
           MoveObject(Polgate,1589.594,-1638.179,10.585, 3);
           SetTimer("PolGate",5000,0);
           return 1;
        }
     }
  }

Кнопка:
Code
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
if (newkeys == 1) // Ид кнопки
{
if(PlayerToPoint(1.0,playerid,1582.4763,-1640.4672,13.1571) && IsACop(playerid))
     {
           {
           MoveObject(Polgate,1589.594,-1638.179,10.585, 3);
           SetTimer("PolGate",10000,0);
           return 1;
        }
     }
}
return 1;
}

Ну щас твой вариант попробую, может получится =)

Добавлено (29.06.2009, 18:26)
---------------------------------------------
не чото у меня не проканало mda у кого нить пашет?


[url=http://townofgames.ru/][b]Любишь игры? Хочешь быть в курсе всех новостей? Заходи - [u]TownOfGames.ru[/u]![/b][/rul]
AwmДата: Понедельник, 29.06.2009, 18:37 | Сообщение # 4
Группа: I'm V.I.P.
Сообщений: 3235
Награды: 55
Город: Tallinn
Репутация: 1661
Замечания: 0%
Статус:
Отличный Мануал MAS_22,
Держы плюсу в репу :D




"Life is hard... life is harder if you're stupid." - John Wayne
MAS_22Дата: Понедельник, 29.06.2009, 18:50 | Сообщение # 5
Мастер джэдай
Группа: I'm V.I.P.
Сообщений: 2554
Награды: 103
Город: -
Репутация: 1658
Замечания: 80%
Статус:
Quote (Kweckey)
будет лишним..

если всё правильно то будет работать
Quote (Kweckey)
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys) { if (newkeys == 1) // Ид кнопки { if(PlayerToPoint(1.0,playerid,1582.4763,-1640.4672,13.1571) && IsACop(playerid))      {            {            MoveObject(Polgate,1589.594,-1638.179,10.585, 3);            SetTimer("PolGate",10000,0);            return 1;         }      } } return 1; }

о господи



Сообщение отредактировал MAS_22 - Понедельник, 29.06.2009, 18:53
[RD]ChezДата: Понедельник, 29.06.2009, 19:26 | Сообщение # 6
Мастер джэдай
Группа: Продвинутые
Сообщений: 3687
Награды: 206
Город: St. P
Репутация: 0
Замечания: 20%
Статус:
MAS_22, добавь еще, что можно извлекать из newkeys и пр определенную часть
if(newkeys & 128) будет работать, если нажаты клавиши ручного торомза и ускорения и даже с поворотом



1 час моей работы стоит минимум 800 рублей для срочных работ.
Знаю CodeIgniter, Kohana, втч. кастом(php), Вникаю в Yii. jQuery на должном уровне, немного разбираюсь в RightJS.
Алсо, 6 лет павно, 2 года в шарпе, понимаю си и плюсы.
Немного ассемблер.
Ох**тельный верстальщик какб.

Если ваш заказ потребует неделю работы и вы собираетесь заплатить 100 рублей - лес там ->> ^^^^^

chezrd@gmail.com
lance@chez-lab.ru
InfernoДата: Понедельник, 29.06.2009, 19:31 | Сообщение # 7
Хостинг-провайдер
Группа: I'm V.I.P.
Сообщений: 1320
Награды: 26
Город: /root
Репутация: 320
Замечания: 0%
Статус:
Quote (Kweckey)
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
if (newkeys == 1) // Ид кнопки
{
if(PlayerToPoint(1.0,playerid,1582.4763,-1640.4672,13.1571) && IsACop(playerid))
{
{
MoveObject(Polgate,1589.594,-1638.179,10.585, 3);
SetTimer("PolGate",10000,0);
return 1;
}
}
}
return 1;
}

Что это за бред?
Вам же написали что достаточно сделать запуск команды при нажатии кнопки:
OnPlayerCommandText(playerid,"/og");

KweckeyДата: Понедельник, 29.06.2009, 19:45 | Сообщение # 8
Советчик
Группа: Пользователи
Сообщений: 1149
Награды: 65
Город: townofgames.ru
Замечания: 100%
Статус:
Inferno, да у меня было просто все сразу сделано на кнопки =) вот из этого я и исходил о таком выводе, а запуск команды не фигачил потому что неправильно воткнул =)


[url=http://townofgames.ru/][b]Любишь игры? Хочешь быть в курсе всех новостей? Заходи - [u]TownOfGames.ru[/u]![/b][/rul]
lock_FoxДата: Четверг, 09.07.2009, 20:17 | Сообщение # 9
Новенький
Группа: Пользователи
Сообщений: 74
Награды: 2
Город: San Fierro
Репутация: 9
Замечания: 0%
Статус:
В студю кнопку TAB :D

MAS_22, Молоток , респект и уважуха те , дал-бы плюс но как виш группа не та))


Своих мыслей нет, пи*д* чужие © Lock_Fox
KweckeyДата: Четверг, 09.07.2009, 21:05 | Сообщение # 10
Советчик
Группа: Пользователи
Сообщений: 1149
Награды: 65
Город: townofgames.ru
Замечания: 100%
Статус:
lock_Fox, кнопка таб вроде 1


[url=http://townofgames.ru/][b]Любишь игры? Хочешь быть в курсе всех новостей? Заходи - [u]TownOfGames.ru[/u]![/b][/rul]
MaccerДата: Четверг, 09.07.2009, 21:57 | Сообщение # 11
Уверенный в себе
Группа: Продвинутые
Сообщений: 281
Награды: 7
Город: Санкт-Петербург
Репутация: 100
Замечания: 40%
Статус:
Quote

// Keys
#define KEY_ACTION (1)
#define KEY_CROUCH (2)
#define KEY_FIRE (4)
#define KEY_SPRINT (8)
#define KEY_SECONDARY_ATTACK (16)
#define KEY_JUMP (32)
#define KEY_LOOK_RIGHT (64)
#define KEY_HANDBRAKE (128)
#define KEY_LOOK_LEFT (256)
#define KEY_SUBMISSION (512)
#define KEY_LOOK_BEHIND (512)
#define KEY_WALK (1024)
#define KEY_ANALOG_UP (2048)
#define KEY_ANALOG_DOWN (4096)
#define KEY_ANALOG_RIGHT (16384)
#define KEY_ANALOG_LEFT (8192)

#define KEY_UP (65408)
#define KEY_DOWN (128)
#define KEY_LEFT (65408)
#define KEY_RIGHT (128)


пожалуйста, вместо цифр пишите KEY_UP, KEY_DOWN и тд
это облегчит понимание кода (не забывайте, что код намного чаще читается, чем пишется)
и мало ли в будущих версиях сампа изменятся айди кнопок (чем черт не шутит) код останется рабочим



есть вопросы по sa-mp или pawn?
помогу за $$
KweckeyДата: Четверг, 09.07.2009, 22:13 | Сообщение # 12
Советчик
Группа: Пользователи
Сообщений: 1149
Награды: 65
Город: townofgames.ru
Замечания: 100%
Статус:
Quote (Maccer)
мало ли в будущих версиях сампа

сам то вериш?



[url=http://townofgames.ru/][b]Любишь игры? Хочешь быть в курсе всех новостей? Заходи - [u]TownOfGames.ru[/u]![/b][/rul]
MaccerДата: Четверг, 09.07.2009, 22:20 | Сообщение # 13
Уверенный в себе
Группа: Продвинутые
Сообщений: 281
Награды: 7
Город: Санкт-Петербург
Репутация: 100
Замечания: 40%
Статус:
Quote (Kweckey)
сам то вериш?

нет, это просто пример, потому что лучше всегда так делать
Quote

#define MAX_PLAYER_NAME (24)
#define MAX_PLAYERS (200)
#define MAX_VEHICLES (700)
#define MAX_OBJECTS (150)

вот например несколько дефайнов, не исключено что игроков, машин или объектов в самп03 будет больше
в конце концов не просто так же эти дефайны писались, так что имхо глупо их не использовать



есть вопросы по sa-mp или pawn?
помогу за $$
KweckeyДата: Четверг, 09.07.2009, 23:36 | Сообщение # 14
Советчик
Группа: Пользователи
Сообщений: 1149
Награды: 65
Город: townofgames.ru
Замечания: 100%
Статус:
ты не понял.. повторим:
Quote (Maccer)
самп03

сам то вериш?



[url=http://townofgames.ru/][b]Любишь игры? Хочешь быть в курсе всех новостей? Заходи - [u]TownOfGames.ru[/u]![/b][/rul]
MaccerДата: Четверг, 09.07.2009, 23:47 | Сообщение # 15
Уверенный в себе
Группа: Продвинутые
Сообщений: 281
Награды: 7
Город: Санкт-Петербург
Репутация: 100
Замечания: 40%
Статус:
Quote (Kweckey)
самп03

сам то вериш?


верю :)
на оф сайте красуется Development: SA-MP 0.3
я в свое время долго ждал самп02 и верил что он выйдет
а после того сколько раз самп закрывался и потом снова открывался я уже не верю что они способны прекратить разработку =)
в конце концов куе обещает когда все окончательно надоест выложить исходный код или отдать на разработку другим девелоперам, как это было с всмп
Quote
It's not a question of 'if', it's a question of 'when'. The SA-MP source code will be released, just as the VC-MP source code was, but I usually do it at a time when I'm no longer interested in working on the project. The VC-MP source was released because I had decided to move on to coding SA-MP.



есть вопросы по sa-mp или pawn?
помогу за $$
  • Страница 1 из 5
  • 1
  • 2
  • 3
  • 4
  • 5
  • »
Поиск:





 


 


 
Хостинг от uCoz samp.at.ua