Undertale Yellow script viewer

← back to main script listing

gml_Object_obj_martlet_snowdin_21_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 0:
7
            if (sprite_index == spr_martlet_wake && floor(image_index) == 3)
8
            {
9
                if (!instance_exists(obj_cutscene_ex))
10
                {
11
                    instance_create(x, y - 29, obj_cutscene_ex);
12
                    audio_play_sound(snd_martlet_wake, 1, 0);
13
                }
14
            }
15
            if (image_index >= (image_number - 1))
16
            {
17
                if (sprite_index == spr_martlet_wake)
18
                {
19
                    sprite_index = spr_martlet_stand_up;
20
                    image_index = 0;
21
                    instance_destroy(obj_cutscene_ex);
22
                }
23
            }
24
            if (sprite_index == spr_martlet_stand_up)
25
            {
26
                if (image_index >= image_number)
27
                {
28
                    action_sprite = false;
29
                    image_speed = 0.2;
30
                    scene++;
31
                }
32
            }
33
            break;
34
        case 1:
35
            scr_text
scr_text

function scr_text() { if (!instance_exists(obj_dialogue)) msg = instance_create(x, y, obj_dialogue); }
();
36
            is_talking = true;
37
            with (msg)
38
            {
39
                position = 0;
40
                sndfnt = 102;
41
                message[0] = "* Hm? Oh, uh, hello!";
42
                message[1] = "* Sorry, I don't know#  where my head was right#  there.";
43
                message[2] = "* It seems I have#  a summer home in lala#  land these days!";
44
                message[3] = "* You look a bit lost,#  are you looking for#  directions?";
45
                message[4] = "* I'll let you in on a#  little secret,";
46
                message[5] = "* I'm not actually an#  information kiosk!";
47
                message[6] = "* I know this place like#  the back of my wing#  though!";
48
                message[7] = "* I don't get#  lost much at all#  anymore!";
49
                message[8] = "* I can get you#  wherever you want to go!";
50
                message[9] = "* Wait...";
51
                message[10] = "* I'm gonna take a shot#  in the dark here, but...";
52
                message[11] = "* You're human! Right?";
53
                message[12] = "* I knew it! I knew I'd#  find a human! You must#  be human! Right? Right? ";
54
                message[13] = "* You look just like this#  guy on this poster I#  saw once!";
55
                message[14] = "* He had a hat#  just like you!";
56
                message[15] = "* And he was totally human,#  so, like,";
57
                message[16] = "* transitive property or#  something like that?";
58
                message[17] = "* Actually, I think he#  was from space... are#  there space humans?";
59
                message[18] = "* You know what, I'll#  have plenty of time to#  ask you questions later.";
60
                prt[0] = 333;
61
                prt[1] = 323;
62
                prt[2] = 318;
63
                prt[3] = 331;
64
                prt[4] = 313;
65
                prt[5] = 313;
66
                prt[6] = 331;
67
                prt[7] = 312;
68
                prt[8] = 312;
69
                prt[9] = 334;
70
                prt[10] = 335;
71
                prt[11] = 313;
72
                prt[12] = 313;
73
                prt[13] = 318;
74
                prt[14] = 318;
75
                prt[15] = 312;
76
                prt[16] = 312;
77
                prt[17] = 324;
78
                prt[18] = 313;
79
            }
80
            scene++;
81
            break;
82
        case 2:
83
            if (!instance_exists(obj_dialogue))
84
            {
85
                x_dest[0] = 280;
86
                y_dest[0] = y;
87
                x_dest[1] = 220;
88
                y_dest[1] = 200;
89
                axis_override = "y";
90
                can_walk = true;
91
                if (npc_arrived)
92
                {
93
                    can_walk = false;
94
                    scene++;
95
                }
96
            }
97
            break;
98
        case 3:
99
            scr_text
scr_text

function scr_text() { if (!instance_exists(obj_dialogue)) msg = instance_create(x, y, obj_dialogue); }
();
100
            is_talking = true;
101
            with (msg)
102
            {
103
                prt = false;
104
                sndfnt = 102;
105
                message[0] = "* Are you ready for some#  Royal Guard protocol?";
106
                message[1] = "* I hope you are, 'cause#  I memorized it!";
107
                prt[0] = 313;
108
                prt[1] = 313;
109
            }
110
            scene++;
111
            break;
112
        case 4:
113
            if (!instance_exists(obj_dialogue))
114
            {
115
                action_sprite = true;
116
                sprite_index = spr_martlet_book;
117
                image_index = 0;
118
                image_speed = 0.2;
119
                scene++;
120
            }
121
            break;
122
        case 5:
123
            if (image_index >= (image_number - 1))
124
            {
125
                image_speed = 0;
126
                sprite_index = spr_martlet_book_talk;
127
                alarm[1] = 30;
gml_Object_obj_martlet_snowdin_21_Alarm_1.gml

instance_create(obj_pl.x, obj_pl.y, obj_heart_initiate_battle); global.battle_enemy_name = "martlet pacifist"; global.battling_enemy = false; global.battling_boss = true; global.battle_start = true; global.current_room_overworld = room_get_name(room); if (global.geno_complete[2] == false && global.route == 3) global.route = 1;
128
                scene++;
129
            }
130
            break;
131
    }
132
}
133
if (global.snowdin_flag[13] == 1)
134
{
135
    switch (scene)
136
    {
137
        case 1:
138
            scr_text
scr_text

function scr_text() { if (!instance_exists(obj_dialogue)) msg = instance_create(x, y, obj_dialogue); }
();
139
            is_talking = true;
140
            with (msg)
141
            {
142
                sndfnt = 102;
143
                message[0] = "* If the Royal Guard#  doesn't know you're#  here...";
144
                message[1] = "* ...they won't know I#  broke protocol!";
145
                message[2] = "* Instead, we'll just get#  you home before any of#  them see you!";
146
                message[3] = "* You'll be home in time#  for dinner!";
147
                message[4] = "* ...";
148
                message[5] = "* I mean... maybe not#  TODAY'S dinner, but for#  sure A dinner!";
149
                message[6] = "* Anyway, we'll bypass the#  Royal Guard and plead#  your case to ASGORE!";
150
                message[7] = "* There's no way he can#  say no to a cute little#  face like yours!";
151
                message[8] = "* Meet me up ahead and#  I'll show you my plan#  to get you home!";
152
                prt[0] = 328;
153
                prt[1] = 318;
154
                prt[2] = 328;
155
                prt[3] = 328;
156
                prt[4] = 321;
157
                prt[5] = 338;
158
                prt[6] = 328;
159
                prt[7] = 318;
160
                prt[8] = 312;
161
            }
162
            scene++;
163
            break;
164
        case 2:
165
            if (!instance_exists(obj_dialogue))
166
            {
167
                can_walk = true;
168
                x_dest[0] = 280;
169
                y_dest[0] = -30;
170
                axis_override = "x";
171
                if (npc_arrived)
172
                {
173
                    npc_arrived = false;
174
                    scene++;
175
                }
176
            }
177
            break;
178
        case 3:
179
            if (y < 0)
180
            {
181
                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))
182
                {
183
                    global.snowdin_flag[14] = 1;
184
                    __view_set(e__VW.Object, 0, obj_pl);
185
                    scr_cutscene_end
scr_cutscene_end

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

function scr_radio_restart() { with (obj_radio) event_user(0); }
();
187
                    instance_destroy(obj_camera);
188
                    instance_destroy();
189
                }
190
            }
191
            break;
192
    }
193
}
194
if (global.snowdin_flag[13] == 2)
195
{
196
    switch (scene)
197
    {
198
        case 1:
199
            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; }
();
200
            action_sprite = true;
201
            sprite_index = spr_martlet_fly_away;
202
            image_speed = 0.4;
203
            scene++;
204
            break;
205
        case 2:
206
            if (image_index >= (image_number - 1))
207
            {
208
                image_speed = 0;
209
                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))
210
                {
211
                    global.snowdin_flag[14] = 1;
212
                    __view_set(e__VW.Object, 0, obj_pl);
213
                    scr_cutscene_end
scr_cutscene_end

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

function scr_radio_restart() { with (obj_radio) event_user(0); }
();
215
                    instance_destroy();
216
                }
217
            }
218
            break;
219
    }
220
}
221
222
enum e__VW
223
{
224
    XView,
225
    YView,
226
    WView,
227
    HView,
228
    Angle,
229
    HBorder,
230
    VBorder,
231
    HSpeed,
232
    VSpeed,
233
    Object,
234
    Visible,
235
    XPort,
236
    YPort,
237
    WPort,
238
    HPort,
239
    Camera,
240
    SurfaceID
241
}