Undertale Yellow script viewer

← back to main script listing

gml_Object_obj_shadow_master_Step_2

(view raw script w/o annotations or w/e)
1
if live_call()
2
    return global.live_result;
3
inst_number = instance_number(all)
4
var drawer_object = obj_shadow_drawer
5
switch object_index
6
{
7
    case obj_light_master:
8
        drawer_object = obj_light_drawer
9
        break
10
    default:
11
        drawer_object = obj_shadow_drawer
12
        break
13
}
14
15
if instance_exists(obj_dialogue)
16
    inst_number -= 1
17
if instance_exists(obj_pause_menu)
18
    inst_number -= 1
19
if instance_exists(obj_camera)
20
    inst_number -= 1
21
if (inst_number != inst_number_last)
22
{
23
    inst_number_last = inst_number
24
    var j = 0
25
    for (var i = 0; i < instance_number(all); i += 1)
26
    {
27
        var inst = instance_find(all, i)
28
        var object_found = false
29
        var repeat_check = false
30
        with (drawer_object)
31
        {
32
            if (shadow_actor == inst)
33
                repeat_check = true
34
        }
35
        if repeat_check
36
        {
37
        }
38
        else
39
        {
40
            switch inst.object_index
41
            {
42
                case obj_pl:
43
                case global.party_member:
44
                    shadow_actor = inst
45
                    var shadow_drawer = instance_create_depth(inst.x, inst.y, inst.depth, drawer_object)
46
                    object_found = true
47
                    break
48
            }
49
50
            switch object_get_parent(inst.object_index)
51
            {
52
                case 1130:
53
                case 1133:
54
                case 1191:
55
                    shadow_actor = inst
56
                    shadow_drawer = instance_create_depth(inst.x, inst.y, inst.depth, drawer_object)
57
                    object_found = true
58
                    break
59
            }
60
61
            if (object_found == true)
62
            {
63
                with (shadow_drawer.shadow_actor)
64
                {
65
                    if place_meeting(x, y, obj_shadow_collider)
66
                    {
67
                        shadow_drawer.shadow_active = true
68
                        if (shadow_drawer.reverse == false)
69
                            shadow_drawer.draw_alpha = 0.5
70
                    }
71
                    else if (shadow_drawer.reverse == true)
72
                        shadow_drawer.draw_alpha = 0.5
73
                }
74
            }
75
        }
76
    }
77
}
78
if (instance_exists(obj_savefl) && save_flowey_noloop == false)
79
{
80
    shadow_actor = 1192
81
    shadow_drawer = instance_create_depth(obj_savefl.x, obj_savefl.y, obj_savefl.depth, drawer_object)
82
    save_flowey_noloop = true
83
}
84
if (save_flowey_noloop && (!instance_exists(obj_savefl)))
85
    save_flowey_noloop = false