Автор | Сообщение |
|
| |
Пост N: 1
Зарегистрирован: 15.01.11
|
|
Отправлено: 25.03.11 11:42. Заголовок: [Game Maker] Как создать жизни для монстров?
Как создать жизни для монстров? Например попал в монстра 5 раз и он здох. А ешё как создать промежуток стрельбы например 1 выстрел в секунду?
|
|
|
Ответов - 6
[только новые]
|
|
|
| |
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 25.03.11 12:09. Заголовок: 1) Монстр = event, a..
1) Монстр = event, action пишеш код: Level_monstr=5 (нужное количество жизней) Создаеш событие для пули, при столкновении с монстром Level_monstr-=1; Если = 0 можеш еще заменить на другой спрайт = умирающего монстра или оставь как есть. 2) Промежуток выстрелов можно реализовать следующим образом, проверять расстояние до пули, если больше 150, тогда есть выстрел, иначе - нет. P.S. Если недостаточно алгоритма, жди до Пн скину код
|
|
|
|
| |
Пост N: 384
Зарегистрирован: 04.03.09
Откуда: Россия, Ростов-на-Дону
|
|
Отправлено: 25.03.11 15:26. Заголовок: Volotar пишет: 2) П..
Volotar пишет: цитата: | 2) Промежуток выстрелов можно реализовать следующим образом, проверять расстояние до пули, если больше 150, тогда есть выстрел, иначе - нет. |
| Весьма оригинально =) Но если игрок будет двигаться в сторону стрельбы (бежать за пулями), то промежуток между выстрелами будет больше, и наоборот.
|
|
|
|
| |
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 25.03.11 16:44. Заголовок: D(e)N пишет: Но есл..
D(e)N пишет: цитата: | Но если игрок будет двигаться в сторону стрельбы (бежать за пулями), то промежуток между выстрелами будет больше, и наоборот. |
| Согласен! Но я привел пример для стоящего игрока, который может либо идти либо стрелять, но никак все сразу. :)
|
|
|
|
| |
Пост N: 3
Зарегистрирован: 15.01.11
|
|
Отправлено: 25.03.11 16:55. Заголовок: Volotar пишет: P.S...
Volotar пишет: цитата: | P.S. Если недостаточно алгоритма, жди до Пн скину код |
| Буду ждать до понедельника, хотя про монстра всё понятно.
|
|
|
|
| |
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 28.03.11 08:30. Заголовок: Игрок - event -step,..
Игрок - event -step, пиши: // Вверх if keyboard_check(vk_space) and sprite_index=s_pl_ent_up { if distance_to_object (o_pulla_up)>130 { instance_create (x+5,y-44,o_pulla_up); image_speed=1.5; sprite_index=s_pl_ent_up; sound_play (s_sound_vistrel); } } // Вниз if keyboard_check(vk_space) and sprite_index=s_pl_ent_down { if distance_to_object (o_pulla_down)>130 { instance_create (x-8,y+28,o_pulla_down); image_speed=1.5; sprite_index=s_pl_ent_down; sound_play (s_sound_vistrel); } } // Влево if keyboard_check(vk_space) and sprite_index=s_pl_ent_left { if distance_to_object (o_pulla_left)>130 { instance_create (x-39,y-6,o_pulla_left); image_speed=1.5; sprite_index=s_pl_ent_left; sound_play (s_sound_vistrel); } } // Вправо if keyboard_check(vk_space) and sprite_index=s_pl_ent_right { if distance_to_object (o_pulla_right)>130 { instance_create (x+24,y+4,o_pulla_right); image_speed=1.5; sprite_index=s_pl_ent_right; sound_play (s_sound_vistrel); } } где: 1) s_pl_ent_up - спрайт игрока стреляющего вверх 2) s_pl_ent_down - спрайт игрока стреляющего вниз и т.д. (влево - left, вправо-right) 3) o_pulla_up - объект пули летящей ввверх (и т.д. вниз-down, вправо-right, влево-left) 4) if distance_to_object (o_pulla_up)>130 - проверяю дистанцию к выпущенной пули, если больше 130 тогда выстрел иначе - нет. 5) instance_create (x+24,y+4,o_pulla_right) - это смещение объекта пули по отношению оружия игрока, чтобы пуля вылетала не из ноги или головы. 6) sound_play (s_sound_vistrel); - звук выстрела 7) image_speed=1.5; - скорость пули Р.S. необходимо создать объект пули, спрайты для игрока (ну это понятно из описания). Удачи!
|
|
|
|
| |
Пост N: 4
Зарегистрирован: 15.01.11
|
|
Отправлено: 30.03.11 08:53. Заголовок: Спасиьо..
Спасибо
|
|
|
|