• Страница 1 из 1
  • 1
Форум » Мастерская » В помощь картоделу » Вопросы и ответы » Таймер (Скрипты)
Таймер
Distrak
Воскресенье, 06.12.2015, 21:04
Пост №: 1
Пользователь
Одиночка
Нужен скрипт который после окончания фризтайма запустит таймер на 3-4 минуты, пока будут идти эти 3-4 минуты определённая техника будет либо заблокирована, либо у неё не будет запускаться двигатель, ну или в этой технике заспавнится топливо.
Ещё было бы хорошо узнать чтоб по истечению этих 3-4 минут появился текст, который повествует игрокам что либо.

Автор темы
 
Vinypuh
Воскресенье, 06.12.2015, 22:24
Пост №: 2
Попробуй в тригере написать - Имя машины машины setfuel 1; hint "твое сообщение" а слева в тригере поставь везде 4 минуты. Если сообщение только для 1 стороны, то тут где то тема есть про это.
 
Zealot
Понедельник, 07.12.2015, 00:13
Пост №: 3
Цитата Vinypuh ()
Попробуй в тригере написать - Имя машины машины setfuel 1; hint "твое сообщение" а слева в тригере поставь везде 4 минуты. Если сообщение только для 1 стороны, то тут где то тема есть про это.

Только триггер надо ставить на daytime > число . Время фризтайма не повлияет, т.к. во время фризтайма оно отматывается назад.

 
Marksman
Понедельник, 07.12.2015, 00:29
Пост №: 4
Участник сообщества
Одиночка
Код
_veh1 = _this select 0;

_Delay = 0;
_ScriptDone = 0;
_veh1 setVehicleLock "LOCKED";

while {_ScriptDone == 0} do {
   sleep 1;
   _Delay = _Delay + 1;
   if (_Delay == 180) then {
       _ScriptDone = 1;
       _veh1 setVehicleLock "UNLOCKED";
    };
};
Почаще читай бисовскую библиотеку команд.
Сообщение отредактировал Marksman - Понедельник, 07.12.2015, 00:34

 
Vinypuh
Понедельник, 07.12.2015, 00:38
Пост №: 5
Цитата Zealot ()
Только триггер надо ставить на daytime > число . Время фризтайма не повлияет, т.к. во время фризтайма оно отматывается назад.

А по моему все счетчики начинают отсчитывать только после окончания фризтайма, как и команда time. Так что мне кажется можно так и так. Я может не до конца с daytime разобрался, но по моему там гемор указывать минуты судя по примеру  https://community.bistudio.com/wiki/daytime
Сообщение отредактировал Vinypuh - Понедельник, 07.12.2015, 00:39

 
Distrak
Понедельник, 07.12.2015, 12:32
Пост №: 6
Пользователь
Одиночка
Цитата Vinypuh ()
-Попробуй в тригере написать - Имя машины машины setfuel 1; hint "твое сообщение" а слева в тригере поставь везде 4 минуты. Если сообщение только для 1 стороны, то тут где то тема есть про это.
Спасибо то что искал! Но возникла ещё проблема, как сделать так чтоб этот тригер не учитывал фризтаим? Потому что многие могут проголосовать за старт игры, а кто ты может отложить игру. Надо чтоб скрипт начал работать строго после окончания фризтайма.

Автор темы
 
Vinypuh
Понедельник, 07.12.2015, 13:55
Пост №: 7
Цитата Distrak ()
Спасибо то что искал! Но возникла ещё проблема, как сделать так чтоб этот тригер не учитывал фризтаим? Потому что многие могут проголосовать за старт игры, а кто ты может отложить игру. Надо чтоб скрипт начал работать строго после окончания фризтайма.
Я сейчас ради интереса сам попробовал, и понял что РБ сборка кривая и на ней отсчитывается время во время фризтайма по 5 секунд а потом сбрасывается из-за чего все сбивается. Поэтому у тебя только 2 выхода:
1) использовать команду daytime как предложил Zealot
2) Можно сделать срабатывания тригера на переменную или нахождения солдат в зоне.

П.С. Можно еще попросить администрацию попробовать починить фризтайм, тогда все команды с временем должны отсчитываться после окончания фризтайма когда пойдут тикать часы на карте.
Сообщение отредактировал Vinypuh - Понедельник, 07.12.2015, 13:58

 
Distrak
Понедельник, 07.12.2015, 14:32
Пост №: 8
Пользователь
Одиночка
Цитата Vinypuh ()
Я сейчас ради интереса сам попробовал, и понял что РБ сборка кривая и на ней отсчитывается время во время фризтайма по 5 секунд а потом сбрасывается из-за чего все сбивается. Поэтому у тебя только 2 выхода:1) использовать команду daytime как предложил Zealot
2) Можно сделать срабатывания тригера на переменную или нахождения солдат в зоне.

П.С. Можно еще попросить администрацию попробовать починить фризтайм, тогда все команды с временем должны отсчитываться после окончания фризтайма когда пойдут тикать часы на карте.

C dayTime вообще чёт не робит, то пишет что Потеряны ;, то пишет Тип Число, ожидался Ничего.

Автор темы
 
Vinypuh
Понедельник, 07.12.2015, 15:31
Пост №: 9
Я так понимаю у тебя техника на базе стоит, раз с daytime не получается, ты можешь еще 1 тригер сделать например на выезде из базы, туда написать (например если у тебя есть БТР) BTR in thislist; benzin = true; Получается как техника попадет  в тригер после фризтайма у тебя появится переменная benzin. Ты эту переменную вставляешь в первый тригер в условие пишешь  benzin, а в активацию пишешь car setfuel 1; hint "blablabla" и слева по времени ставишь задержку на активацию на те же 4 минуты
 
Distrak
Понедельник, 07.12.2015, 16:33
Пост №: 10
Пользователь
Одиночка
Цитата Vinypuh ()
Я так понимаю у тебя техника на базе стоит, раз с daytime не получается, ты можешь еще 1 тригер сделать например на выезде из базы, туда написать (например если у тебя есть БТР) BTR in thislist; benzin = true; Получается как техника попадет  в тригер после фризтайма у тебя появится переменная benzin. Ты эту переменную вставляешь в первый тригер в условие пишешь  benzin, а в активацию пишешь car setfuel 1; hint "blablabla" и слева по времени ставишь задержку на активацию на те же 4 минуты.
Короче не пашет и твой способ, пишет о типе булево и не робит попробую объяснить иначе.
У меня в миссии есть самолёт надо сделать так чтобы после фризтайма у самолёта либо пропал бенз на 4 минуты, либо чтоб не запускался движок. Я понимаю что уже надоел. Если последний способ который ты напишешь мне не поможет, я сделаю задержку самолётам на 10 мин. учитываю что фризтаим может идти максимум 5-6 мин.

Автор темы
 
Vinypuh
Понедельник, 07.12.2015, 16:41
Пост №: 11
Так тут можно в 1 скрипт сделать. Сделай тригер 20х20 например что бы зона была вокруг самолета. Там впишешь твои строки про бензин и выставишь  задержку в исполнении, а игроков отодвинь подальше от технике и в модуле Main выставь радиус зоны во время фризтайма 20 метров например, что бы они не могли до техники добежать.
 
def
Вторник, 08.12.2015, 03:13
Пост №: 12
Цитата Vinypuh ()
Если сообщение только для 1 стороны, то тут где то тема есть про это.
вроде такого
expActiv="if (side player == independent) then {hint ""Устройство уничтожено!"";}; ";

 
def
Вторник, 08.12.2015, 03:14
Пост №: 13
Цитата Distrak ()
Короче не пашет
ты бы скинул пример, а то ссылаешься на ошибки, а мы их увидеть не можем :(

 
Форум » Мастерская » В помощь картоделу » Вопросы и ответы » Таймер (Скрипты)
  • Страница 1 из 1
  • 1
Поиск: