Как в GM сделать перерыв между выстрелами?
|
|
hasutinus1 | Дата: Среда, 25 Августа 2010, 15:25 | Сообщение # 1 |
был не раз
Сейчас нет на сайте
| Помогите пожалуйста. Как сделать перерыв между выстрелами? (желательно без программирования)
KS
Сообщение отредактировал hasutinus1 - Среда, 25 Августа 2010, 15:26 |
|
| |
Lex4990 | Дата: Среда, 25 Августа 2010, 16:30 | Сообщение # 2 |
почетный гость
Сейчас нет на сайте
| как выстрел устроин, просто instance_create?
|
|
| |
hasutinus1 | Дата: Среда, 25 Августа 2010, 16:38 | Сообщение # 3 |
был не раз
Сейчас нет на сайте
| Lex4990, С помощью image_index. Куда объект повёрнут там и пуля создаётся. Добавил в событие нажатия пробела: если переменная равна значению, создаётся объект со скоростью и направлением.(только без скриптов)
KS
|
|
| |
Lex4990 | Дата: Среда, 25 Августа 2010, 19:50 | Сообщение # 4 |
почетный гость
Сейчас нет на сайте
| Ты нажимаешь пробел и у тя пули залпом летят? Тогда нужно в событие ставить не клавиша нажата... а просто где клавиатура. Если нет, то используй будильник или таймер. Последнее я сам толком хз.
|
|
| |
QWER56 | Дата: Среда, 25 Августа 2010, 21:12 | Сообщение # 5 |
старожил
Сейчас нет на сайте
| Автар смени название темы но более информатировное. Quote (hasutinus1) Как сделать перерыв между выстрелами? Вы хотите, что бы при зажатии клавиши между выстрелами были передышки?
ConsMark - поисковик по интернет магазинам.
|
|
| |
hasutinus1 | Дата: Четверг, 26 Августа 2010, 09:18 | Сообщение # 6 |
был не раз
Сейчас нет на сайте
| QWER56, Да
KS
|
|
| |
Xageu | Дата: Четверг, 26 Августа 2010, 17:50 | Сообщение # 7 |
Хадей - Друг Детей
Сейчас нет на сайте
| Самый лёгкий способ - создай переменную, к примеру, attackspeed=10 Затем в событии кнопки выстрела: if attackspeed=10 then блаблабла(делаешь выстрел) and attackspeed=0 В Step надо прописать: if attackspeed!=10 then attackspeed+=1 Всё, теперь ты можешь менять промежуток между выстрелами меняя эти значения.
|
|
| |
XPOHb | Дата: Четверг, 26 Августа 2010, 18:02 | Сообщение # 8 |
был не раз
Сейчас нет на сайте
| Второй способ с таймером может быть более удобен тем, кто не хочет прибегать к большему количеству скриптов, заменяя их на одну единственную управляющую конструкцию. Этот способ может быть реализован как с помощью GML, так и без него. В Create создаем переменную can_shoot и присваиваем ей значение 1 (или значение true, так как суть будет аналогичная. Я же использую циферный вариант, так как написать один символ проще, чем четыре, а работая с многими логическими операциями в общей сложности разница в количестве написанных символов будет достаточно велика). Так же, создаем переменную cooldown, присваивая ей, например, значение 5. В событии нажатия пробела устанавливаем проверку переменной can_shoot и, если она равна 1, то присваиваем ей значение 0, задаем таймеру время, равное cooldown и создаем обьект пули. В событии таймера присваиваем can_shoot значение 1. Скриптом это будет выглядеть так: Code if (can_shoot = 1) { can_shoot = 0 alarm[0] = cooldown instance_create(x,y,o_bullet) }
Сообщение отредактировал XPOHb - Четверг, 26 Августа 2010, 18:03 |
|
| |
MIKEL922 | Дата: Четверг, 26 Августа 2010, 19:45 | Сообщение # 9 |
заслуженный участник
Сейчас нет на сайте
| Чего вы не слушаете человека, что он сказал Quote (hasutinus1) (желательно без программирования) . Вот
Нет не чего не возможного. uncog.ru
|
|
| |
Xageu | Дата: Четверг, 26 Августа 2010, 19:53 | Сообщение # 10 |
Хадей - Друг Детей
Сейчас нет на сайте
| желательно!=обязательно
|
|
| |
MIKEL922 | Дата: Четверг, 26 Августа 2010, 19:58 | Сообщение # 11 |
заслуженный участник
Сейчас нет на сайте
| Но мой пример же без программирование!
Нет не чего не возможного. uncog.ru
|
|
| |
hasutinus1 | Дата: Четверг, 26 Августа 2010, 20:10 | Сообщение # 12 |
был не раз
Сейчас нет на сайте
| MIKEL922, Спасибо, если бы ещё время задержки можно было менять и при зажатии пробела стрелять пока не отпущу
KS
Сообщение отредактировал hasutinus1 - Четверг, 26 Августа 2010, 20:10 |
|
| |
MIKEL922 | Дата: Четверг, 26 Августа 2010, 20:52 | Сообщение # 13 |
заслуженный участник
Сейчас нет на сайте
| это я уже не знаю
Нет не чего не возможного. uncog.ru
|
|
| |
XPOHb | Дата: Четверг, 26 Августа 2010, 21:07 | Сообщение # 14 |
был не раз
Сейчас нет на сайте
| hasutinus1, Мой способ вам отлично подходит. Меняйте переменную cooldown нужными клавишами (или как Вы сами захотите) и время задержки будет меняться. В событии нажатия клавиши "1" пропишите Code cooldown = (нужное значение)
|
|
| |