Undertale Yellow script viewer

← back to main script listing

gml_Object_obj_martlet_snowdin_21_Step_0

related scripts: Alarm_0Alarm_1Alarm_2Create_0Other_76Step_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_speed) >= (image_number - 1))
27
                {
28
                    action_sprite = false;
29
                    image_speed = 0.2;
30
                    image_index = image_number - 1;
31
                    scene++;
32
                }
33
            }
34
            break;
35
        case 1:
36
            
scr_text
scr_text

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

function
scr_text()
{ if (!instance_exists(obj_dialogue)) msg = instance_create(x, y, obj_dialogue); }
();
103
            is_talking = true;
104
            with (msg)
105
            {
106
                prt = false;
107
                sndfnt = 102;
108
                message[0] = "* Are you ready for some#  Royal Guard protocol?";
109
                message[1] = "* I hope you are, 'cause#  I memorized it!";
110
                prt[0] = 313;
111
                prt[1] = 313;
112
            }
113
            scene++;
114
            break;
115
        case 4:
116
            if (!instance_exists(obj_dialogue))
117
            {
118
                action_sprite = true;
119
                sprite_index = spr_martlet_book;
120
                image_index = 0;
121
                image_speed = 0.33;
122
                scene++;
123
            }
124
            break;
125
        case 5:
126
            if (image_index >= (image_number - 1))
127
            {
128
                image_speed = 0;
129
                sprite_index = spr_martlet_book_talk;
130
                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;
131
                scene++;
132
            }
133
            break;
134
    }
135
}
136
if (global.snowdin_flag[13] == 1)
137
{
138
    switch (scene)
139
    {
140
        case 1:
141
            
scr_text
scr_text

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

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

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

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

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