1. Создаем необходимые спрайты. Все выровнять по центру.
1. Полный спрайт нужного объекта. 2. Спрайт из нескольких кадров, в каждом из которых будет кусочек полного спрайта. См. рисунок.
3. Спрайт для создания эффекта крови - красный квадрат 16х16 с анимацией исчезновения (вкладка "Анимация" в редакторе кадров спрайта). См. рисунок.
2. Код.
Создаем obj_player. Добавляем ему первый созданный спрайт. Пишем в "Левая нажата":
Код instance_destroy()//Уничтожение. repeat 5//Кол-во повторений действия. Замените на кол-во кадров во втором спрайте + 1. {instance_create(x,y,obj_part)}//Создаем (5) объектов obj_part в координатах obj_player.
Теперь создаем obj_part; Присваиваем ему второй спрайт из нескольких кадров. В Create пишем следующее:
Код gravity=0.2//Гравитация равно 0.2. gravity_direction=random(270)//Случайное направление гравитации в диапазоне от 0 до 270. image_index=instance_number(obj_part)+1//Номер кадра равен количеству obj_part в комнате+1. +1 - во избежание повторения первого кадра.
Далее пишем в Step:
Код instance_create(x,y,obj_blood)//Постоянно создаем obj_blood в координатах объекта. image_speed=0//Скорость анимации равна нулю. Самая главная строка, отвечающая за весь механизм. image_angle=gravity_direction//Поворот изображения равен направлению гравитации. Думаю, все и так понятно.
Теперь создаем obj_blood с последним спрайтом. Добавьте событие "При завершении анимации", пропишите: Код instance_destroy()//Уничтожение.
Создаем комнату и тестируем. При нажатии на человечка он разбивается на 5 частей, от каждой из которых исходит кровь. Мы сделали это!
Спасибо за прочтение!
|