Стрельба очередями
|
|
|
WhoAmI | Дата: Пятница, 29 Августа 2014, 00:18 | Сообщение # 2 |
Сумасшедший программист
Сейчас нет на сайте
| Используй алармы. В начале надо рассмотреть вот что: room_speed * кол-во секунд - данная формула является формулой секунды. Она эквивалента 30 * кол-во секунд т.к. 30 скорость игрового процесса по умолчанию. Пример: Код alarm[0] = room_speed * 4; //Событие alarm 0 начинается через четыре секунды.
Alarm - событие происходящие через заданный промежуток после его вызова Чтобы твой мерзавец стрелял 3 раза в 3 секунды, затем останавливался на одну секунду и это повторялось по кругу измени последнюю строчку alarm'a 1: Код alarm[2] = room_speed * 1; //Ждём секунду В Alarm 2 скопируй тоже-самое что и в alarm'e 1, и опять измени последнюю строчку: Код alarm[3] = room_speed * 1; Создай Alarm 3 и в третий раз скопируй то что написано в Alarm 1. Последняя строка опять подлежит изменению: Код alarm[0] = room_speed * 1;
Уваля всё получилось. Осталось только расставить промежутки времени на нужные тебе, это легко сделать изменяя room_speed * 1, на то что ты хочешь.
Struggle #Gamiron12
Сообщение отредактировал WhoAmI - Пятница, 29 Августа 2014, 00:22 |
|
| |
hmpr | Дата: Пятница, 29 Августа 2014, 15:54 | Сообщение # 3 |
частый гость
Сейчас нет на сайте
| спасибо большое. теперь все работает. правда возник один вопрос: очередь более чем из 11 патронов вообще нет возможности реализовать?
|
|
| |
LunarPixel | Дата: Пятница, 29 Августа 2014, 16:22 | Сообщение # 4 |
старожил
Сейчас нет на сайте
| WhoAmI, и зачем же столько Алармов!? Заведи переменную, отвечающую за количество патронов в очереди, например N=10
Ну и в alarm 1 пиши что-то типа:
Код if N>0 { N-=1; Твой код создания пули alarm[1] = room_speed * 1; } else { N=100; alarm[0] = room_speed * 1; }
|
|
| |
WhoAmI | Дата: Пятница, 29 Августа 2014, 16:25 | Сообщение # 5 |
Сумасшедший программист
Сейчас нет на сайте
| hmpr, всё можно - для этого используй переменные. Создай переменную count = кол-во выстрелов. Перепиши alarm 1: Код if(count > 0){ /Код стрельбы. //Опять измени последнюю строчку count -= 1 alarm[2] = нужное_тебе_время; }else{ count = кол-во выстрелов; alarm[0] = нужное_тебе_время; } Теперь перепиши Alarm 2: Код if(count > 0){ //Код стрельбы //Измени последнюю строчку count-=1; alarm[1] = нужное_тебе_время; }else{ alarm[0] = нужное_тебе время; count = кол-во выстрелов; } P.S. читай справку GM. Без обид, но такими вопросами ты только засоряешь форум. Перевод справки тут P.S.S От плюсика за проделанные старания не откажусь (извиняюсь за попрошайничество) P.S.S.S LunarPixel,я не успел
Struggle #Gamiron12
Сообщение отредактировал WhoAmI - Пятница, 29 Августа 2014, 16:29 |
|
| |
hmpr | Дата: Суббота, 30 Августа 2014, 23:50 | Сообщение # 6 |
частый гость
Сейчас нет на сайте
| Спасибо. Справку читал, но там о чем-то подобном мало написано (точнее не написано вообще). А на счет засорения форума... так он для того и нужен... или я не прав?
|
|
| |
MrSlap | Дата: Воскресенье, 31 Августа 2014, 12:23 | Сообщение # 7 |
почетный гость
Сейчас нет на сайте
| WhoAmI, а если засунуть проверку в сам аларм, так вообще одним можно обойтись =)
Создаю интерактивную повесть.
|
|
| |