Undertale Yellow script viewer

← back to main script listing

gml_Object_obj_puzzleresetlever_Step_0

(view raw script w/o annotations or w/e)
1
if ((room == rm_darkruins_06 && global.flag[2 First Dark Ruins light puzzle completion] == true) || (room == rm_darkruins_10 && global.flag06 == true))
2
    exit;
3
if (keyboard_multicheck_pressed(0))
4
{
5
    if (scr_interact
scr_interact

function scr_interact() { if (distance_to_object(obj_pl) < 20 && obj_pl.state == scr_normal_state) { var pl_dir = obj_pl.direction; var pl_x = 0; var pl_y = 0; var check_distance_x = 0; var check_distance_y = 0; switch (pl_dir) { case 0: pl_x = obj_pl.bbox_right; pl_y = obj_pl.bbox_top + 1; check_distance_x = 20; break; case 180: pl_x = obj_pl.bbox_left; pl_y = obj_pl.bbox_top + 1; check_distance_x = -20; break; case 90: pl_x = obj_pl.x; pl_y = obj_pl.bbox_top; check_distance_y = -20; break; case 270: pl_x = obj_pl.x; pl_y = obj_pl.bbox_bottom; check_distance_y = 20; break; } if (collision_line_first(pl_x, pl_y, pl_x + check_distance_x, pl_y + check_distance_y, id, false, false)) return true; } }
() == true && obj_pl.direction == 90 && image_index == 0)
6
    {
7
        if (room == rm_darkruins_06)
8
        {
9
            with (obj_lightp)
10
            {
11
                if (i == 1 || i == 4)
12
                    turn = false;
13
                else
14
                    turn = true;
15
            }
16
        }
17
        if (room == rm_darkruins_12)
18
        {
19
            with (obj_lightp2)
20
            {
21
                if (i == 6 || i == 2 || i == 4 || i == 5)
22
                    turn = false;
23
                else
24
                    turn = true;
25
            }
26
        }
27
        audio_play_sound(snd_switch, 1, 0);
28
        image_index = 1;
29
        alarm[0] = 20;
30
    }
31
}