• Страница 1 из 2
  • 1
  • 2
  • »
[FAQ]Создание ворот на кнопку
valychДата: Воскресенье, 25.09.2011, 16:19 | Сообщение # 1
.::Offline::.
Гангстер
Сообщений: 171
[ 205 ]
Награды: 15

Статус отсутствует
И так, для начала вам нужно создать объекты открытых и закрытых ворот. Для этого используется функция CreateObject
Я для примера возьму ворота в Доках:

Code
CreateObject(969, 2720.3772,-2409.7523,12.6,0, 0.0000, 90);//Закрытые ворота
CreateObject(969, 2720.3772,-2508.3069,12.6,0, 0.0000, 90);//Открытые ворота

После этого вам нужно создать переменнe., которая будет хранить в себе порядковый ID ворот

Code
new gate1;

Теперь создадим объект ворот на сервере
В public OnGameModeInit засуньте строчку с функцией CreateObject:

Code
gate1 = CreateObject(ид_объекта, x,y,z, поворот_x, поворот_y, поворот_z);// Укажите ваши данные о ЗАКРЫТЫХ воротаx


Для простого примера я создам ворота в доках (координаты открытых и закрытых ворот смотрите выше)

Code
public OnGameModeInit()
{
      gate1 = CreateObject(969, 2720.3772,-2409.7523,12.6,0, 0.0000, 90);//Если у вас есть этот public то просто вставте эту строчку с созданием объекта
      return 1;
}

Так, ворота созданы, но теперь их надо заставить двигаться
в public OnPlayerCommandText

Code
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 чтоб ворота закрылись самостоятельно
Вверх мода

Code
forward CloseGate1();

Потом можно в низ мода

Code
public CloseGate1()
{
MoveDynamicObject(gate1, 2720.3772,-2409.7523,12.6, 2.0);//Двигаем ворота на позицию закрытых ворот
return 1;
}

И так, ворота созданы и вы теперь можете их открыть командой /opengate

Теперь делаем открытие ворот кнопкой. Есть два способа
1-й Способ:

Можно сказать самый объемный и подходит для того, если в моде нет команды с открытием ворот или пишет (если вы не возле ворот) "Вы далеко от ворот"...
В public OnPlayerKeyStateChange
Code
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);//Создадим таймер что ворота закрылись автоматически
}
}

Опять же, ворота закроются автоматически
2-й Способ

Подходит для того, если в моде есть команда с открыванием ворот
В public OnPlayerKeyStateChange
Code
if(newkeys & KEY_WALK) // На кнопку АЛЬТ (alt)
{
OnPlayerCommandText(playerid, "/opengate");// Просто запустим команду /opengate от игрока playerid
}

Вот и все. Если что не понятно или есть вопросы - пишите

Автор: valych


Мои друзья на ST: [Tre9, UDAV, ZioHik,Seva008]
-=Чтоб добавится ко мне в друзья дайте мне + с сообщение "Хочу в друзья"=-

-=Те кто будут у меня в друзьях, тем будет делаться скидка на платные работы=-

Мои разработки:
[FS]Transmission 70%
[INC]Anti-Fly 50%
[INC]Anti-Cheat 95%

[FAQ]Ответы на часто задаваемые вопросы


Сообщение отредактировал valych - Воскресенье, 25.09.2011, 16:21
 
SANTA9223Дата: Суббота, 30.06.2012, 16:20 | Сообщение # 2
.::Offline::.
Новичок
Сообщений: 4
[ 0 ]
Награды: 0

Статус отсутствует
давно искал как это сделать! Спасибо! Хороший сайт
 
Bred_PitДата: Вторник, 15.01.2013, 17:55 | Сообщение # 3
.::Offline::.
Новичок
Сообщений: 1
[ 0 ]
Награды: 0

Статус отсутствует
Помогите вот делаю ворота
и дают 3 ошибки
error 021: symbol already defined: "Streamer_OnGameModeInit" -символ уже определён (дважды встречается new одного и того же символа);( вот как это понять???)
потом вот
error 010: invalid function or declaration - вот это что ;


Сообщение отредактировал Bred_Pit - Вторник, 15.01.2013, 18:22
 
[S]ilverbac[k]Дата: Вторник, 15.01.2013, 20:45 | Сообщение # 4
.::Offline::.
Пахан
Сообщений: 723
[ 86 ]
Награды: 17

Статус отсутствует
Посмотри внимательно на ошибки (там где указаны номера строчек), скопируй их, нажми ctrl+g -> ctrl+v -> Enter. Там увидишь строчку, где ошибка. Ее скидывай сюда.


[FS]Neon[APP]FCP[APP]Vehicle Tuning Generator ||||| 20% -- Работа приостановленаОбложка:
 
SeeneДата: Пятница, 22.03.2013, 19:26 | Сообщение # 5
.::Offline::.
Бандит
Сообщений: 21
[ 0 ]
Награды: 0

Статус отсутствует
Спасибо!
 
[PM]LiveДата: Суббота, 06.04.2013, 10:34 | Сообщение # 6
.::Offline::.
Новичок
Сообщений: 3
[ 0 ]
Награды: 0

Статус отсутствует
Спасибо! пробую создать свою сервер, но пока не получаться. теперь ворота знаю как создовать
 
katalistДата: Вторник, 14.05.2013, 14:54 | Сообщение # 7
.::Offline::.
Новичок
Сообщений: 5
[ 0 ]
Награды: 0

Статус отсутствует
Помогло. Лови плюс.
 
Nikko2976Дата: Четверг, 11.07.2013, 12:05 | Сообщение # 8
.::Offline::.
Новичок
Сообщений: 3
[ 0 ]
Награды: 0

Статус отсутствует
Да безусловно хороший урок,раньше долго искал вобще хороший сайт happy
 
VanchelДата: Воскресенье, 24.11.2013, 00:56 | Сообщение # 9
.::Offline::.
Новичок
Сообщений: 1
[ 0 ]
Награды: 0

Статус отсутствует
Оно то помогло) и не пашет) почему-то у меня ошибка помогите вот скайп vanyagnatko
 
krysilittleДата: Среда, 25.06.2014, 15:32 | Сообщение # 10
.::Offline::.
Новичок
Сообщений: 1
[ 0 ]
Награды: 0

Статус отсутствует
У меня проблема с таймером
собственно , када он в режиме false они не открываются вообще , а када в режиме true открываются но один раз( , не подскаите в чем проблем?
 
[S]ilverbac[k]Дата: Четверг, 26.06.2014, 22:58 | Сообщение # 11
.::Offline::.
Пахан
Сообщений: 723
[ 86 ]
Награды: 17

Статус отсутствует
Попробуй изменить время работы таймера


[FS]Neon[APP]FCP[APP]Vehicle Tuning Generator ||||| 20% -- Работа приостановленаОбложка:
 
PasharusДата: Среда, 06.08.2014, 15:56 | Сообщение # 12
.::Offline::.
Новичок
Сообщений: 6
[ 0 ]
Награды: 0

Статус отсутствует
Все норм
 
pro100aimДата: Среда, 22.10.2014, 14:32 | Сообщение # 13
.::Offline::.
Новичок
Сообщений: 1
[ 0 ]
Награды: 0

Статус отсутствует
как сделать чтоб меню окрывалос на кнопку Y?????? cry для Игровое меню
 
ZioHikДата: Четверг, 23.10.2014, 21:31 | Сообщение # 14
.::Offline::.
http://u.to/N46EAw
Сообщений: 831
[ 82 ]
Награды: 29

Статус отсутствует
http://www.samp-team.com/forum/53-8198-1. Y - это кнопка "Да"
 
No_NameДата: Вторник, 09.06.2015, 09:20 | Сообщение # 15
.::Offline::.
Новичок
Сообщений: 6
[ 0 ]
Награды: 0

Статус отсутствует
Знаю, что тема старая, но все же.

Искал давно, но можешь сделать, чтобы только администрация могла открыть их?
Буду очень благодарен. wink


Сообщение отредактировал No_Name - Вторник, 09.06.2015, 09:21
 
  • Страница 1 из 2
  • 1
  • 2
  • »
Поиск:


Copyright www.SAMP-TEAM.com (c) 2009-2024
Правила использования материалов сайта

При копировании материалов из нашего сайта
ссылка на www.SAMP-TEAM.com обязательна!
Нарушители правил будут строго наказаны!

Хостинг от uCoz   
Для корректного просмотра мы рекомендуем Вам использовать браузер Google Chrome.
Яндекс.Метрика
Яндекс.Метрика