Undertale Yellow script viewer

← back to main script listing

gml_GlobalScript_scr_enemy_attack_bullet_hit

(view raw script w/o annotations or w/e)
1
function scr_enemy_attack_bullet_hit
scr_enemy_attack_bullet_hit

function scr_enemy_attack_bullet_hit() //gml_Script_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 != noone) { 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) return; 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) return; 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; } }
() //gml_Script_scr_enemy_attack_bullet_hit
2
{
3
    if live_call()
4
        return global.live_result;
5
    if variable_instance_exists(id, "bullet_hit_draw_timer")
6
    {
7
        if (bullet_hit_draw_timer > 0)
8
            bullet_hit_draw_timer -= 1
9
    }
10
    var collider_id = instance_place(x, y, obj_heart_yellow_shot)
11
    if (collider_id != noone)
12
    {
13
        var collider_object_index = collider_id.object_index
14
        instance_create_depth(collider_id.x, collider_id.bbox_top, -999, obj_heart_yellow_shot_destroy)
15
        if (collider_object_index == 690)
16
        {
17
            if (object_index == obj_ceroba_phase_2_bell)
18
                instance_destroy(collider_id)
19
            if (variable_instance_exists(id, "collider_id_last") && collider_id_last == collider_id)
20
                return;
21
            if (collider_object_index == 690)
22
                collider_id_last = collider_id
23
        }
24
        else if (collider_object_index == 2561)
25
        {
26
            if (variable_instance_exists(id, "collider_id_last") && collider_id_last == collider_id)
27
                return;
28
            collider_id_last = collider_id
29
        }
30
        else if ((!(variable_instance_exists(id, "collider_id_last"))) || collider_id != collider_id_last)
31
        {
32
            collider_id.alarm[0] = 1
33
            collider_id.image_alpha = 0
34
            collider_id_last = collider_id
35
        }
36
        audio_play_sound(snd_arc_hit, 0.1, 0)
37
        if variable_instance_exists(id, "bullet_hit_points")
38
        {
39
            bullet_hit_draw_timer = 5
40
            if (collider_object_index == 690)
41
                bullet_hit_points -= 3
42
            else
43
                bullet_hit_points -= 1
44
            if (bullet_hit_points <= 0)
45
                bullet_destroy_self = true
46
        }
47
        return true;
48
    }
49
}