1 |
if (live_call()) |
2 |
return global.live_result; |
3 |
switch (scene) |
4 |
{ |
5 |
case 0: |
6 |
reset_timer--; |
7 |
if (reset_timer <= 0) |
8 |
scene++; |
9 |
break; |
10 |
case 1: |
11 |
speed = lerp(speed, target_speed, 0.07); |
12 |
target_dir = point_direction(x, y, heart.x, heart.y); |
13 |
direction += (angle_difference(target_dir, direction) * 0.1); |
14 |
break; |
15 |
} |
16 |
if (scr_enemy_attack_bullet_hitscr_enemy_attack_bullet_hitfunction scr_enemy_attack_bullet_hit()
{
if (live_call())
return global.live_result;
if (variable_instance_exists(id, "bullet_hit_draw_timer"))
{
if (bullet_hit_draw_timer > 0)
bullet_hit_draw_timer -= 1;
}
var collider_id = instance_place(x, y, obj_heart_yellow_shot);
if (collider_id != -4)
{
var collider_object_index = collider_id.object_index;
instance_create_depth(collider_id.x, collider_id.bbox_top, -999, obj_heart_yellow_shot_destroy);
if (collider_object_index == 690)
{
if (object_index == obj_ceroba_phase_2_bell)
instance_destroy(collider_id);
if (variable_instance_exists(id, "collider_id_last") && collider_id_last == collider_id)
exit;
if (collider_object_index == 690)
collider_id_last = collider_id;
}
else if (collider_object_index == 2561)
{
if (variable_instance_exists(id, "collider_id_last") && collider_id_last == collider_id)
exit;
collider_id_last = collider_id;
}
else if (!variable_instance_exists(id, "collider_id_last") || collider_id != collider_id_last)
{
collider_id.alarm[0] = 1;
collider_id.image_alpha = 0;
collider_id_last = collider_id;
}
audio_play_sound(snd_arc_hit, 0.1, 0);
if (variable_instance_exists(id, "bullet_hit_points"))
{
bullet_hit_draw_timer = 5;
if (collider_object_index == 690)
bullet_hit_points -= 3;
else
bullet_hit_points -= 1;
if (bullet_hit_points <= 0)
bullet_destroy_self = true;
}
return true;
}
} () && speed > speed_min) |
17 |
{ |
18 |
speed -= speed_dec; |
19 |
with (obj_fmartlet_star_medium) |
20 |
collider_id_last = other.collider_id_last; |
21 |
} |
22 |
if (bullet_destroy_self) |
23 |
{ |
24 |
var spawn_count = 3; |
25 |
for (var i = 0; i < spawn_count; i++) |
26 |
{ |
27 |
var star = instance_create_depth(x + random_range(-10, 10), y + random_range(-10, 10), depth, obj_fmartlet_star_small); |
28 |
star.direction = (direction - 180) + (45 * i); |
29 |
star.speed = star.target_speed; |
30 |
} |
31 |
instance_create_depth(x, y, depth - 1, obj_fmartlet_star_destroy); |
32 |
obj_fmartlet_star_destroy.sprite_index = destroy_sprite; |
33 |
instance_destroy(); |
34 |
} |
35 |
target_dir = point_direction(x, y, heart.x, heart.y); |
36 |
direction += (angle_difference(target_dir, direction) * 0.1); |