Всем привет. Выкладываю урок по созданию ворот, которые будут открываться по кнопке. Для этого используется функция CreateObject
Я для примера возьму ворота в Доках:
Я для примера возьму ворота в Доках:
CreateObject(969, 2720.3772,-2409.7523,12.6,0, 0.0000, 90);//Закрытые ворота
CreateObject(969, 2720.3772,-2508.3069,12.6,0, 0.0000, 90);//Открытые ворота
После этого вам нужно создать переменную., которая будет хранить в себе порядковый ID ворот.
Ко всем new
CreateObject(969, 2720.3772,-2508.3069,12.6,0, 0.0000, 90);//Открытые ворота
После этого вам нужно создать переменную., которая будет хранить в себе порядковый ID ворот.
Ко всем new
new gate1;
Теперь создадим объект ворот на сервере
В public OnGameModeInit засуньте строчку с функцией CreateObject
Теперь создадим объект ворот на сервере
В public OnGameModeInit засуньте строчку с функцией CreateObject
gate1 = CreateObject(ид_объекта, x,y,z, поворот_x, поворот_y, поворот_z);// Укажите ваши данные о ЗАКРЫТЫХ воротаx
Для простого примера я создам ворота в доках (координаты открытых и закрытых ворот смотрите выше)
Для простого примера я создам ворота в доках (координаты открытых и закрытых ворот смотрите выше)
public OnGameModeInit()
{
gate1 = CreateObject(969, 2720.3772,-2409.7523,12.6,0, 0.0000, 90);//Если у вас есть этот public то просто вставте эту строчку с созданием объекта
return 1;
}
Ворота созданы, но теперь их надо заставить двигаться
в public OnPlayerCommandText
{
gate1 = CreateObject(969, 2720.3772,-2409.7523,12.6,0, 0.0000, 90);//Если у вас есть этот public то просто вставте эту строчку с созданием объекта
return 1;
}
Ворота созданы, но теперь их надо заставить двигаться
в public OnPlayerCommandText
if(!strcmp(cmdtext, "/opengate", true))
{
if(IsPlayerInRangeOfPoint(playerid, 10, 2720.3772,-2409.7523,12.6))// Укажите координаты закрытых ворот, 10 - это радиус, где будет действовать открытие ворот
{
MoveDynamicObject(gate1,2720.3772, -2401.2523, 12.6, 2.0);//Двигаем ворота на позицию открытых ворот
SetTimer("CloseGate1", 7000, false);//Создадим таймер что ворота закрылись автоматически
}
}
Теперь создадим public чтоб ворота закрылись самостоятельно
Ко всем foward
{
if(IsPlayerInRangeOfPoint(playerid, 10, 2720.3772,-2409.7523,12.6))// Укажите координаты закрытых ворот, 10 - это радиус, где будет действовать открытие ворот
{
MoveDynamicObject(gate1,2720.3772, -2401.2523, 12.6, 2.0);//Двигаем ворота на позицию открытых ворот
SetTimer("CloseGate1", 7000, false);//Создадим таймер что ворота закрылись автоматически
}
}
Теперь создадим public чтоб ворота закрылись самостоятельно
Ко всем foward
forward CloseGate1();
В конец мода
В конец мода
public CloseGate1()
{
MoveDynamicObject(gate1, 2720.3772,-2409.7523,12.6, 2.0);//Двигаем ворота на позицию закрытых ворот
return 1;
}
Ворота созданы и вы теперь можете их открыть командой /opengate
Теперь делаем открытие ворот кнопкой.
В public OnPlayerKeyStateChange
{
MoveDynamicObject(gate1, 2720.3772,-2409.7523,12.6, 2.0);//Двигаем ворота на позицию закрытых ворот
return 1;
}
Ворота созданы и вы теперь можете их открыть командой /opengate
Теперь делаем открытие ворот кнопкой.
В public OnPlayerKeyStateChange
if(newkeys & KEY_WALK) // На кнопку АЛЬТ (alt)
{
if(IsPlayerInRangeOfPoint(playerid, 10, 2720.3772,-2409.7523,12.6))// Укажите координаты закрытых ворот, 10 - это радиус, где будет действовать открытие ворот
{
MoveDynamicObject(gate1,2720.3772, -2401.2523, 12.6, 2.0);//Двигаем ворота на позицию открытых ворот
SetTimer("CloseGate1", 7000, false);//Создадим таймер что ворота закрылись автоматически
}
}
Готово!
Автор
PROMO_4ka!™https://pawno-crmp.ru/forum/user/5731-promo-4ka/
Помогал мне (автор): valuch
{
if(IsPlayerInRangeOfPoint(playerid, 10, 2720.3772,-2409.7523,12.6))// Укажите координаты закрытых ворот, 10 - это радиус, где будет действовать открытие ворот
{
MoveDynamicObject(gate1,2720.3772, -2401.2523, 12.6, 2.0);//Двигаем ворота на позицию открытых ворот
SetTimer("CloseGate1", 7000, false);//Создадим таймер что ворота закрылись автоматически
}
}
Готово!
Автор
PROMO_4ka!™https://pawno-crmp.ru/forum/user/5731-promo-4ka/
Помогал мне (автор): valuch