Undertale Yellow script viewer

← back to main script listing

gml_Object_obj_martlet_snowdin_21_geno_Step_0

(view raw script w/o annotations or w/e)
1
event_inherited();
2
if (global.snowdin_flag[13] == 0)
3
{
4
    switch (scene)
5
    {
6
        case 1:
7
            if (!instance_exists(obj_dialogue))
8
            {
9
                x_dest[0] = x;
10
                y_dest[0] = 320;
11
                axis_override = "y";
12
                can_walk = true;
13
                if (npc_arrived)
14
                {
15
                    can_walk = false;
16
                    scene++;
17
                }
18
            }
19
            break;
20
        case 2:
21
            scr_text
scr_text

function scr_text() { if (!instance_exists(obj_dialogue)) msg = instance_create(x, y, obj_dialogue); }
();
22
            is_talking = true;
23
            with (msg)
24
            {
25
                prt = false;
26
                sndfnt = 102;
27
                message[0] = "* Oh my goodness! Did you#  get left behind?";
28
                prt[0] = 333;
29
            }
30
            scene++;
31
            break;
32
        case 3:
33
            if (!instance_exists(obj_dialogue))
34
            {
35
                action_sprite = true;
36
                sprite_index = spr_martlet_book;
37
                image_index = 0;
38
                image_speed = 0.2;
39
                scene++;
40
            }
41
            break;
42
        case 4:
43
            if (image_index >= (image_number - 1))
44
            {
45
                image_speed = 0;
46
                action_sprite = false;
47
                down_sprite_idle = 875;
48
                scene++;
49
            }
50
            break;
51
        case 5:
52
            scr_text
scr_text

function scr_text() { if (!instance_exists(obj_dialogue)) msg = instance_create(x, y, obj_dialogue); }
();
53
            is_talking = true;
54
            timer = 30;
55
            with (msg)
56
            {
57
                prt = false;
58
                sndfnt = 102;
59
                message[0] = "* Might I ask your name?";
60
                ch_msg = 0;
61
                ch[1] = "Clover";
62
                message[1] = "* Hmm... not on the#  resident list...";
63
                message[2] = "* Ummm... see, this is#  tough. I can't leave my#  post.";
64
                message[3] = "* I'm supposed to wait#  here until this bad#  person comes.";
65
                message[4] = "* The troublemaker who#  caused all this, ya#  know?";
66
                message[5] = "* But I can't just leave#  you to find the others#  alone!";
67
                message[6] = "* You're a child! I could#  never do that!";
68
                prt[0] = 321;
69
                prt[1] = 338;
70
                prt[2] = 311;
71
                prt[3] = 317;
72
                prt[4] = 317;
73
                prt[5] = 338;
74
                prt[6] = 313;
75
            }
76
            scene++;
77
            break;
78
        case 6:
79
            if (global.dialogue_open || !scr_timer
scr_timer

function scr_timer() { if (timer > 0) { timer--; return false; } else { return true; } }
())
80
                exit;
81
            scene++;
82
            break;
83
        case 7:
84
            scr_text
scr_text

function scr_text() { if (!instance_exists(obj_dialogue)) msg = instance_create(x, y, obj_dialogue); }
();
85
            is_talking = true;
86
            with (msg)
87
            {
88
                sndfnt = 102;
89
                message[0] = "* Okay, how 'bout we#  hurry and catch up#  with the others...";
90
                message[1] = "* Then I come back and#  no one will ever#  know!";
91
                message[2] = "* Ready?";
92
                prt[0] = 320;
93
                prt[1] = 321;
94
                prt[2] = 321;
95
            }
96
            if (!global.dialogue_open)
97
                scene++;
98
            break;
99
        case 8:
100
            if (!alarm[0])
101
                alarm[0] = 20;
gml_Object_obj_martlet_snowdin_21_geno_Alarm_0.gml

instance_create(obj_pl.x, obj_pl.y, obj_heart_initiate_battle); global.battle_enemy_name = "martlet genocide"; global.battling_enemy = false; global.battling_boss = true; global.battle_start = true; global.current_room_overworld = room_get_name(room);
102
            scene++;
103
            break;
104
    }
105
}
106
if (global.snowdin_flag[13] == 3 && global.snowdin_flag[21] == 0)
107
{
108
    switch (scene)
109
    {
110
        case 1:
111
            scr_text
scr_text

function scr_text() { if (!instance_exists(obj_dialogue)) msg = instance_create(x, y, obj_dialogue); }
();
112
            is_talking = true;
113
            with (msg)
114
            {
115
                sndfnt = 102;
116
                message[0] = "* I... I have no idea how#  to handle this.";
117
                message[1] = "* ...";
118
                message[2] = "* ASGORE would know what#  to do.";
119
                message[3] = "* You should go talk to#  him.";
120
                message[4] = "* There's a river up#  ahead. A raft is docked#  there.";
121
                message[5] = "* The current should lead#  to Hotland.";
122
                message[6] = "* I'll meet up with you#  once you get there.";
123
                message[7] = "* In the meantime...#  I have work to#  attend to.";
124
                message[8] = "* See you later.";
125
                prt[0] = 317;
126
                prt[1] = 317;
127
                prt[2] = 329;
128
                prt[3] = 321;
129
                prt[4] = 321;
130
                prt[5] = 338;
131
                prt[6] = 321;
132
                prt[7] = 321;
133
                prt[8] = 321;
134
            }
135
            if (!global.dialogue_open)
136
                scene++;
137
            break;
138
        case 2:
139
            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; }
();
140
            action_sprite = true;
141
            sprite_index = spr_martlet_fly_away;
142
            image_speed = 0.4;
143
            scene++;
144
            break;
145
        case 3:
146
            if (image_index >= (image_number - 1))
147
            {
148
                image_speed = 0;
149
                if (scr_camera_move
scr_camera_move

function scr_camera_move(arg0, arg1, arg2) { if (!instance_exists(obj_camera)) { instance_create(__view_get(e__VW.Object, 0).x, __view_get(e__VW.Object, 0).y, obj_camera); __view_set(e__VW.Object, 0, obj_camera); } else { obj_camera.x = __view_get(e__VW.Object, 0).x; obj_camera.y = __view_get(e__VW.Object, 0).y; __view_set(e__VW.Object, 0, obj_camera); } obj_camera.move = true; obj_camera.xx = arg0; obj_camera.yy = arg1; obj_camera.spd = arg2; if (abs(arg0 - obj_camera.x) <= arg2 && abs(arg1 - obj_camera.y) <= arg2) return true; else return false; } enum e__VW { XView, YView, WView, HView, Angle, HBorder, VBorder, HSpeed, VSpeed, Object, Visible, XPort, YPort, WPort, HPort, Camera, SurfaceID }
(obj_pl.x, obj_pl.y, 2))
150
                {
151
                    global.route = 1;
152
                    global.snowdin_flag[14] = 1;
153
                    scr_cutscene_end
scr_cutscene_end

function scr_cutscene_end() { global.cutscene = false; obj_pl.alarm[0] = 1; }
();
154
                    scr_radio_restart
scr_radio_restart

function scr_radio_restart() { with (obj_radio) event_user(0); }
();
155
                    __view_set(e__VW.Object, 0, obj_pl);
156
                    instance_destroy();
157
                }
158
            }
159
            break;
160
    }
161
}
162
else if (global.snowdin_flag[13] == 3 && global.snowdin_flag[21] == 1)
163
{
164
    switch (scene)
165
    {
166
        case 1:
167
            scr_text
scr_text

function scr_text() { if (!instance_exists(obj_dialogue)) msg = instance_create(x, y, obj_dialogue); }
();
168
            is_talking = true;
169
            with (msg)
170
            {
171
                sndfnt = 102;
172
                message[0] = "* You're not off the#  hook, Clover.";
173
                message[1] = "* Unless you decide right#  now to change your#  ways...";
174
                message[2] = "* The Royal Guard will#  find you. ";
175
                message[3] = "* It could be me or#  someone much, much#  worse.";
176
                message[4] = "* How your life plays out#  from this moment is up#  to you.";
177
                message[5] = "* I don't know what the#  humans taught you but...";
178
                message[6] = "* A child your age#  shouldn't be corrupted#  by violence.";
179
                message[7] = "* Please... Please choose#  wisely...";
180
                prt[0] = 321;
181
                prt[1] = 338;
182
                prt[2] = 321;
183
                prt[3] = 317;
184
                prt[4] = 338;
185
                prt[5] = 338;
186
                prt[6] = 321;
187
                prt[7] = 317;
188
            }
189
            if (!global.dialogue_open)
190
                scene++;
191
            break;
192
        case 2:
193
            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; }
();
194
            action_sprite = true;
195
            sprite_index = spr_martlet_fly_away;
196
            image_speed = 0.4;
197
            scene++;
198
            break;
199
        case 3:
200
            if (image_index >= (image_number - 1))
201
            {
202
                image_speed = 0;
203
                if (scr_camera_move
scr_camera_move

function scr_camera_move(arg0, arg1, arg2) { if (!instance_exists(obj_camera)) { instance_create(__view_get(e__VW.Object, 0).x, __view_get(e__VW.Object, 0).y, obj_camera); __view_set(e__VW.Object, 0, obj_camera); } else { obj_camera.x = __view_get(e__VW.Object, 0).x; obj_camera.y = __view_get(e__VW.Object, 0).y; __view_set(e__VW.Object, 0, obj_camera); } obj_camera.move = true; obj_camera.xx = arg0; obj_camera.yy = arg1; obj_camera.spd = arg2; if (abs(arg0 - obj_camera.x) <= arg2 && abs(arg1 - obj_camera.y) <= arg2) return true; else return false; } enum e__VW { XView, YView, WView, HView, Angle, HBorder, VBorder, HSpeed, VSpeed, Object, Visible, XPort, YPort, WPort, HPort, Camera, SurfaceID }
(obj_pl.x, obj_pl.y, 2))
204
                {
205
                    global.snowdin_flag[14] = 1;
206
                    scr_cutscene_end
scr_cutscene_end

function scr_cutscene_end() { global.cutscene = false; obj_pl.alarm[0] = 1; }
();
207
                    scr_radio_restart
scr_radio_restart

function scr_radio_restart() { with (obj_radio) event_user(0); }
();
208
                    __view_set(e__VW.Object, 0, obj_pl);
209
                    instance_destroy();
210
                }
211
            }
212
            break;
213
    }
214
}
215
216
enum e__VW
217
{
218
    XView,
219
    YView,
220
    WView,
221
    HView,
222
    Angle,
223
    HBorder,
224
    VBorder,
225
    HSpeed,
226
    VSpeed,
227
    Object,
228
    Visible,
229
    XPort,
230
    YPort,
231
    WPort,
232
    HPort,
233
    Camera,
234
    SurfaceID
235
}