Undertale Yellow script viewer

← back to main script listing

gml_Object_obj_steam_walk_blocker_Step_0

(view raw script w/o annotations or w/e)
1
if (live_call())
2
    return global.live_result;
3
if (room == rm_steamworks_07_v2)
4
    flag_check = global.sworks_flag[8];
5
else if (room == rm_steamworks_17b)
6
    flag_check = global.sworks_flag[53];
7
else if (room == rm_steamworks_25_b)
8
    flag_check = global.sworks_flag[54];
9
else if (room == rm_steamworks_23)
10
    flag_check = 1;
11
if (flag_check != 1)
12
    exit;
13
switch (scene)
14
{
15
    case 0:
16
        if (!global.cutscene && place_meeting(x, y, obj_pl))
17
        {
18
            scr_cutscene_start
scr_cutscene_start

function scr_cutscene_start() { global.cutscene = true; obj_pl.state = scr_frozen_state; obj_pl.image_index = 0; obj_pl.image_speed = 0; }
();
19
            cutscene_advance();
20
        }
21
        break;
22
    case 1:
23
        cutscene_dialogue();
24
        with (msg)
25
        {
26
            talker[0] = 1161;
27
            for (var i = 0; i < array_length(other.message); i++)
28
            {
29
                message[i] = other.message[i];
30
                prt[i] = other.prt[i];
31
            }
32
        }
33
        break;
34
    case 2:
35
        with (obj_pl)
36
        {
37
            clover_walk_backwards = false;
38
            autowalk_direction = other.walk_dir;
39
            switch (other.walk_dir)
40
            {
41
                case "down":
42
                    direction = 270;
43
                    break;
44
                case "right":
45
                    direction = 0;
46
                    break;
47
                case "left":
48
                    direction = 180;
49
                    break;
50
                case "up":
51
                    direction = 90;
52
                    break;
53
            }
54
            state = scr_autowalk_state;
55
alarm[1]
56
        }
57
        cutscene_advance();
58
        break;
59
    case 3:
60
        scr_cutscene_end
scr_cutscene_end

function scr_cutscene_end() { global.cutscene = false; obj_pl.alarm[0] = 1; }
();
61
        scene = 0;
62
        break;
63
}