[Урок] Создание шлагбаума - Форум Cheat-Master.ru
  • Страница 1 из 1
  • 1
Модератор форума: Phoenixxx_Czar, Getbackthere, [CM]OlegEhtler  
[Урок] Создание шлагбаума
Deny1337 Дата: Четверг, 22.10.2015, 15:19 | Сообщение # 1
Новичок
Сообщений: 12
Статус: Offline
Привет, сегодня мы сделаем шлагбаум!

Для начало создадим переменную new.
Код
new opengate;


Создали мы ее для того что бы записать, прикрепить (как вам угодно) в нее объект
А делаем мы это вот таким образом:

Код
opengate = CreateObject(980,935.29998779297,-836.20001220703,96.5,0,0,0,300);


Функция
Код
CreateObject

создает объект по заданным координатам
Координаты к этой функции мы пишем в () таких вот скобках.
Сами координаты состоят из 6 частей и разделяются запятыми всего частей кода 8, так как вы уже поняли, что координаты это 6 частей, а оставшиеся 2 это id создаваемого объекта и расстояние на котором его будет видно. Рассмотрим 6 частей
Код
CreateObject(id объекта,Координаты по оси X,Координаты по оси Y,Координаты по оси Z,Координаты по оси R-X,Координаты по оси R-Y,Координаты по оси R-Z, Расстояние видимости объекта);


максимальное значение видимости объекта = 300
Код
Программа с помощью которых вы сможете установить координаты: Map Construction
Поиск объектов можете сделать на сайте Samp-objects


Код
if(strcmp("/open", cmd, true) == 0)

значит что если мы ввели в консоль вызываемую кнопкой F6 команду /open то она вызывает следующие действия.
Строка

Код
new open[MAX_PLAYERS];


переменная open присваивается для каждого игрока индивидуально. Ею мы будем смотреть закрыты ли наши двери или нет.
Строка

Код
if(open[playerid] == 0)

If в переводе с английского означает "Если" То есть
Код
Если(переменная open[id игрока который использует команду]== 0)
{ то делаем следующее действие.


Код
MoveObject(opengate,935.29998779297,-836.20001220703,96.5,10); // Открываем ворота


Двигает наш объект по заданным координата. А именно это делает функция MoveObject, после этой функции мы задаем координаты.
Сейчас распишу вам полностью строку


Двигаем объект(сам объект, помните мы в переменную opengate записали объект, вот сейчас мы его используем,Координаты по оси X,Координаты по оси Y,Координаты по оси Z,Скорость предвидения объекта,Координаты по оси R-X,Координаты по оси R-Y,Координаты по оси R-Z);

В данном случаи мы не используем координаты R-X, R-Z, R-Y, но если вам надо то знайте что они ставятся только после скорости передвижения объекта и ни как до его.
Дальше строка

Код
open[playerid] = 1; // Устанавливаем значение открытых ворот


показывает что наш шлагбаум открыт, и закроется только тогда, когда переменной open будет присвоено значение 0.
дальше думаю все логично.
Кстати строка

Код
return1;


Полный код выглядит вот так!
Код
//Ко всем переменным
new opengate;
//В public OnGameModeInit():
opengate = CreateObject(980,935.29998779297,-836.20001220703,96.5,0,0,0,300);
//В public OnPlayerCommandText:
if(strcmp("/open", cmd, true) == 0)
{
        new open[MAX_PLAYERS];
        if(open[playerid] == 0) // Проверяем закрыты ли ворота
        {
        MoveObject(opengate,935.29998779297,-836.20001220703,96.5,10); // Открываем ворота
        open[playerid] = 1; // Устанавливаем значение открытых ворот
        }
        if(open[playerid] == 1) // Проверяем открыты ли ворота
        {
        MoveObject(opengate,935.29998779297,-831.90002441406,96.5,10); // Закрываем ворота
        open[playerid] = 0; // Устанавливаем значение закрытых ворот
        }
        return 1;
}


Все спасибо!
Кому помог + smile


Сообщение отредактировал Deny1337 - Пятница, 30.10.2015, 10:11
Hot_Ice Дата: Суббота, 24.10.2015, 18:18 | Сообщение # 2
Новичок
Сообщений: 13
Статус: Offline
Весьма неплохо.
Спасибо.


ASD
barawek_won Дата: Среда, 28.10.2015, 20:49 | Сообщение # 3
Боец
Сообщений: 62
Статус: Offline
Спасибо, лови +.

Приму в дар аккаунты 3+ lvl на проектах Samp-Rp / Diamond-Rp / Advance-Rp.
Приму юани/шмот/аккаунты в игре Perfect World.
Приму аккаунты WOT.
Приму логи.
Буду очень признателен Вам за них :3
[Steep] Дата: Среда, 28.10.2015, 21:31 | Сообщение # 4
Боец
Сообщений: 96
Статус: Offline
Тоже самое что и с воротами, полезно новичкам!

-
TheMoOmer Дата: Четверг, 29.10.2015, 10:55 | Сообщение # 5
Боец
Сообщений: 111
Статус: Offline
Чуть-чуть,посидишь тут и можно пойти создавать свой сервер biggrin
TheMo1sey Дата: Суббота, 07.11.2015, 22:53 | Сообщение # 6
Любитель
Сообщений: 32
Статус: Offline
Мне было очень полезно, спасибо за уроки.
[СМ]Маршал Дата: Суббота, 07.11.2015, 23:21 | Сообщение # 7
Боец
Сообщений: 55
Статус: Offline
норм урок,все понятно,и оформил

Помогайте людям - они помогут вам
  • Страница 1 из 1
  • 1
Поиск: