Undertale Yellow script viewer

← back to main script listing

gml_Object_obj_dunes_38_cutscene_manager_Step_0

(view raw script w/o annotations or w/e)
1
if live_call()
2
    return global.live_result;
3
switch scene
4
{
5
    case 0:
6
        if (!audio_is_playing(mus_gunshop))
7
        {
8
            audio_sound_gain(obj_radio.current_song, 0, 0)
9
            music = audio_play_sound(mus_gunshop, 20, 1)
10
        }
11
        if (!instance_exists(obj_starlo_npc))
12
        {
13
            starlo_npc = instance_create(40, 460, obj_starlo_npc)
14
            starlo_npc.npc_direction = "right"
15
            starlo_npc.image_alpha = 0
16
            player_npc = instance_create(40, 460, obj_player_npc)
17
            player_npc.npc_direction = "right"
18
            player_npc.image_alpha = 0
19
            blackjack_npc = instance_create(360, 350, obj_blackjack_npc)
20
            blackjack_npc.image_alpha = 0
21
        }
22
        __view_set((9 << 0), 0, starlo_npc)
23
        with (starlo_npc)
24
        {
25
            if (image_alpha < 1)
26
                image_alpha += 0.1
27
            else
28
            {
29
                x_dest[0] = 360
30
                y_dest[0] = y
31
                axis_override = "x"
32
                end_direction = "up"
33
                can_walk = true
34
                actor_speed = 3
35
                other.scene++
36
                other.timer = 10
37
            }
38
        }
39
        break
40
    case 1:
41
        if (!scr_timer
scr_timer

function scr_timer() //gml_Script_scr_timer { if (timer > 0) { timer-- return false; } else return true; }
())
42
            return;
43
        with (player_npc)
44
        {
45
            if (image_alpha < 1)
46
                image_alpha += 0.1
47
            else
48
            {
49
                x_dest[0] = 320
50
                y_dest[0] = y
51
                axis_override = "x"
52
                end_direction = "up"
53
                can_walk = true
54
                actor_speed = 3
55
                other.scene++
56
                other.timer = 10
57
            }
58
        }
59
        break
60
    case 2:
61
        if (player_npc.npc_arrived == false || (!scr_timer
scr_timer

function scr_timer() //gml_Script_scr_timer { if (timer > 0) { timer-- return false; } else return true; }
()))
62
            return;
63
        with (starlo_npc)
64
        {
65
            npc_arrived = false
66
            x_dest[0] = 360
67
            y_dest[0] = 360
68
            axis_override = "y"
69
            end_direction = "up"
70
            can_walk = true
71
            actor_speed = 2
72
        }
73
        scene++
74
        timer = 20
75
        break
76
    case 3:
77
        if ((!starlo_npc.npc_arrived) || (!scr_timer
scr_timer

function scr_timer() //gml_Script_scr_timer { if (timer > 0) { timer-- return false; } else return true; }
()))
78
            return;
79
        audio_play_sound(snd_locked_door, 1, 0)
80
        timer = 30
81
        scene++
82
        break
83
    case 4:
84
        if (!scr_timer
scr_timer

function scr_timer() //gml_Script_scr_timer { if (timer > 0) { timer-- return false; } else return true; }
())
85
            return;
86
        starlo_npc.npc_direction = "down"
87
        scr_text
scr_text

function scr_text() //gml_Script_scr_text { if (!instance_exists(obj_dialogue)) msg = instance_create(x, y, obj_dialogue) }
()
88
        with (msg)
89
        {
90
            sndfnt = 107
91
            talker[0] = other.starlo_npc
92
            message[0] = "* Hehe, of course."
93
            message[1] = "* Old Blackjack doesn't#  like doin' business#  with me."
94
            message[2] = "* I often \"borrow\" his#  wares and uh... break or#  lose them."
95
            prt[0] = 412
96
            prt[1] = 407
97
            prt[2] = 412
98
        }
99
        if (!global.dialogue_open)
100
        {
101
            timer = 15
102
            scene++
103
        }
104
        break
105
    case 5:
106
        if (!scr_timer
scr_timer

function scr_timer() //gml_Script_scr_timer { if (timer > 0) { timer-- return false; } else return true; }
())
107
            return;
108
        starlo_npc.npc_direction = "up"
109
        audio_play_sound(snd_knock_beautiful, 1, 0)
110
        scene++
111
        break
112
    case 6:
113
        if audio_is_playing(snd_knock_beautiful)
114
            return;
115
        scr_text
scr_text

function scr_text() //gml_Script_scr_text { if (!instance_exists(obj_dialogue)) msg = instance_create(x, y, obj_dialogue) }
()
116
        with (msg)
117
        {
118
            sndfnt = 107
119
            talker[0] = other.starlo_npc
120
            message[0] = "* Open up, Blackjack!"
121
            message[1] = "* Don't make me use force!"
122
            message[2] = "* I make the law so I can#  legally shoot down your#  doors!"
123
            prt[0] = 421
124
            prt[1] = 419
125
            prt[2] = 419
126
        }
127
        if (!global.dialogue_open)
128
        {
129
            timer = 45
130
            scene++
131
        }
132
        break
133
    case 7:
134
        scr_text
scr_text

function scr_text() //gml_Script_scr_text { if (!instance_exists(obj_dialogue)) msg = instance_create(x, y, obj_dialogue) }
()
135
        with (msg)
136
        {
137
            if (talker[message_current] == other.starlo_npc)
138
                position = 0
139
            if (talker[message_current] == other.blackjack_npc)
140
                position = 1
141
            talker[0] = other.blackjack_npc
142
            sndfnt_array[0] = 391
143
            message[0] = "* Get off my property, North#  Star!"
144
            message[1] = "* I told you I wouldn't even sell#  you a gumball!"
145
            talker[2] = other.starlo_npc
146
            sndfnt_array[2] = 107
147
            message[2] = "* Aw, come on, partner."
148
            message[3] = "* I don't even know what#  a \"gumball\" is!"
149
            message[4] = "* And those last#  transactions were ages#  ago!"
150
            message[5] = "* I'm a changed monster!"
151
            prt[2] = 406
152
            prt[3] = 417
153
            prt[4] = 413
154
            prt[5] = 422
155
            talker[6] = other.blackjack_npc
156
            sndfnt_array[6] = 391
157
            message[6] = "* You lost one of my premium#  revolvers last week!"
158
            message[7] = "* Frolicking in your sandstorm#  and whatnot."
159
            talker[8] = other.starlo_npc
160
            talker[9] = other.starlo_npc
161
            sndfnt_array[8] = 107
162
            message[8] = "* Look, I promise this is#  a different scenario,#  Jack."
163
            message[9] = "* I won't even step#  inside. You can meet me#  out here."
164
            prt[8] = 407
165
            prt[9] = 421
166
        }
167
        if (!global.dialogue_open)
168
        {
169
            scene++
170
            timer = 45
171
        }
172
        break
173
    case 8:
174
        if (!scr_timer
scr_timer

function scr_timer() //gml_Script_scr_timer { if (timer > 0) { timer-- return false; } else return true; }
())
175
            return;
176
        scr_text
scr_text

function scr_text() //gml_Script_scr_text { if (!instance_exists(obj_dialogue)) msg = instance_create(x, y, obj_dialogue) }
()
177
        with (msg)
178
            message[0] = "* ..."
179
        if (!global.dialogue_open)
180
        {
181
            scene++
182
            timer = 10
183
        }
184
        break
185
    case 9:
186
        if (!scr_timer
scr_timer

function scr_timer() //gml_Script_scr_timer { if (timer > 0) { timer-- return false; } else return true; }
())
187
            return;
188
        with (starlo_npc)
189
        {
190
            npc_arrived = false
191
            x_dest[0] = x
192
            y_dest[0] = 460
193
            axis_override = "y"
194
            end_direction = "left"
195
            can_walk = true
196
            actor_speed = 2
197
        }
198
        scene++
199
        break
200
    case 10:
201
        if (!starlo_npc.npc_arrived)
202
            return;
203
        scr_text
scr_text

function scr_text() //gml_Script_scr_text { if (!instance_exists(obj_dialogue)) msg = instance_create(x, y, obj_dialogue) }
()
204
        with (msg)
205
        {
206
            sndfnt = 107
207
            talker[0] = other.starlo_npc
208
            message[0] = "* Don't worry, Clover.#  He's comin'."
209
            prt[0] = 417
210
        }
211
        if (!global.dialogue_open)
212
        {
213
            audio_play_sound(snd_doorclose, 1, 0)
214
            scene++
215
            starlo_npc.npc_direction = "up"
216
        }
217
        break
218
    case 11:
219
        with (blackjack_npc)
220
        {
221
            if (image_alpha < 1)
222
                image_alpha += 0.1
223
            else
224
            {
225
                x_dest[0] = x
226
                y_dest[0] = y + 40
227
                axis_override = "y"
228
                end_direction = "down"
229
                can_walk = true
230
                actor_speed = 1
231
                other.timer = 30
232
                other.scene++
233
            }
234
        }
235
        break
236
    case 12:
237
        if ((!blackjack_npc.npc_arrived) || (!scr_timer
scr_timer

function scr_timer() //gml_Script_scr_timer { if (timer > 0) { timer-- return false; } else return true; }
()))
238
            return;
239
        scr_text
scr_text

function scr_text() //gml_Script_scr_text { if (!instance_exists(obj_dialogue)) msg = instance_create(x, y, obj_dialogue) }
()
240
        with (msg)
241
        {
242
            sndfnt_array[0] = 391
243
            message[0] = "* Make it speedy."
244
            sndfnt_array[1] = 107
245
            talker[1] = other.starlo_npc
246
            message[1] = "* Of cooourse, sir!"
247
            message[2] = "* I was just gunna ask#  you to sell a gun to#  this child."
248
            prt[1] = 415
249
            prt[2] = 422
250
        }
251
        if (!global.dialogue_open)
252
        {
253
            scr_music_sudden_stop
scr_music_sudden_stop

function scr_music_sudden_stop(argument0, argument1, argument2) //gml_Script_scr_music_sudden_stop { with (instance_create(0, 0, obj_audio_sudden_stop_helper)) { audio_to_fade = argument0 fade_strength = argument1 / 100 audio_stop = argument2 if (audio_stop == false) audio_resume_sound(argument0) } }
(music, 3, 1)
254
            timer = 60
255
            scene++
256
        }
257
        break
258
    case 13:
259
        if (!scr_timer
scr_timer

function scr_timer() //gml_Script_scr_timer { if (timer > 0) { timer-- return false; } else return true; }
())
260
            return;
261
        with (blackjack_npc)
262
        {
263
            walk_direction_flip = true
264
            npc_arrived = false
265
            x_dest[0] = x
266
            y_dest[0] = y - 40
267
            axis_override = "y"
268
            end_direction = "up"
269
            can_walk = true
270
            actor_speed = 3
271
            other.scene++
272
        }
273
        break
274
    case 14:
275
        if (!blackjack_npc.npc_arrived)
276
            return;
277
        with (blackjack_npc)
278
        {
279
            if (image_alpha > 0)
280
                image_alpha -= 0.2
281
            else
282
            {
283
                audio_play_sound(snd_doorclose, 1, 0)
284
                other.scene++
285
            }
286
        }
287
        break
288
    case 15:
289
        scr_text
scr_text

function scr_text() //gml_Script_scr_text { if (!instance_exists(obj_dialogue)) msg = instance_create(x, y, obj_dialogue) }
()
290
        with (msg)
291
        {
292
            sndfnt = 107
293
            talker[0] = other.starlo_npc
294
            message[0] = "* I worded that poorly,#  hold on!"
295
            message[1] = "* This ain't a child, you#  see. I was jokin'."
296
            message[2] = "* They're just a very#  small, but VERY tough#  monster."
297
            prt[0] = 428
298
            prt[1] = 412
299
            prt[2] = 417
300
        }
301
        if (!global.dialogue_open)
302
        {
303
            timer = 45
304
            scene++
305
        }
306
        break
307
    case 16:
308
        scr_text
scr_text

function scr_text() //gml_Script_scr_text { if (!instance_exists(obj_dialogue)) msg = instance_create(x, y, obj_dialogue) }
()
309
        with (msg)
310
        {
311
            sndfnt_array[0] = 391
312
            message[0] = "* ..."
313
            sndfnt_array[1] = 107
314
            talker[1] = other.starlo_npc
315
            talker[2] = other.starlo_npc
316
            message[1] = "* Sigh..."
317
            message[2] = "* I'll give ya 400G."
318
            prt[1] = 407
319
            prt[2] = 418
320
        }
321
        if (!global.dialogue_open)
322
        {
323
            audio_play_sound(snd_doorclose, 1, 0)
324
            scr_music_sudden_stop
scr_music_sudden_stop

function scr_music_sudden_stop(argument0, argument1, argument2) //gml_Script_scr_music_sudden_stop { with (instance_create(0, 0, obj_audio_sudden_stop_helper)) { audio_to_fade = argument0 fade_strength = argument1 / 100 audio_stop = argument2 if (audio_stop == false) audio_resume_sound(argument0) } }
(music, 5, 0)
325
            scene++
326
        }
327
        break
328
    case 17:
329
        with (blackjack_npc)
330
        {
331
            if (image_alpha < 1)
332
                image_alpha += 0.1
333
            else
334
            {
335
                x_dest[0] = x
336
                y_dest[0] = y + 40
337
                can_walk = true
338
                npc_arrived = false
339
                end_direction = "down"
340
                walk_direction_flip = true
341
                other.scene++
342
            }
343
        }
344
        break
345
    case 18:
346
        if (!blackjack_npc.npc_arrived)
347
            return;
348
        scr_text
scr_text

function scr_text() //gml_Script_scr_text { if (!instance_exists(obj_dialogue)) msg = instance_create(x, y, obj_dialogue) }
()
349
        with (msg)
350
        {
351
            message[0] = "* Well why didn't you open with#  that, kind patron?"
352
            message[1] = "* Come inside with me and I'll#  fetch the paperwork."
353
        }
354
        if (!global.dialogue_open)
355
            scene++
356
        break
357
    case 19:
358
        starlo_npc.npc_direction = "left"
359
        scr_text
scr_text

function scr_text() //gml_Script_scr_text { if (!instance_exists(obj_dialogue)) msg = instance_create(x, y, obj_dialogue) }
()
360
        with (msg)
361
        {
362
            sndfnt = 107
363
            talker[0] = other.starlo_npc
364
            message[0] = "* See? I had it under#  control."
365
            message[1] = "* Wait out here, Clover."
366
            prt[0] = 417
367
            prt[1] = 417
368
        }
369
        if (!global.dialogue_open)
370
            scene++
371
        break
372
    case 20:
373
        with (blackjack_npc)
374
        {
375
            x_dest[0] = x
376
            y_dest[0] = y - 20
377
            can_walk = true
378
            npc_arrived = false
379
            end_direction = "up"
380
        }
381
        with (starlo_npc)
382
        {
383
            x_dest[0] = other.blackjack_npc.x_dest[0]
384
            y_dest[0] = other.blackjack_npc.y_dest[0]
385
            can_walk = true
386
            npc_arrived = false
387
            end_direction = "up"
388
        }
389
        scene++
390
        break
391
    case 21:
392
        if (blackjack_npc.npc_arrived == true)
393
        {
394
            if (blackjack_npc.image_alpha > 0)
395
                blackjack_npc.image_alpha -= 0.1
396
        }
397
        if (starlo_npc.npc_arrived == true)
398
        {
399
            if (starlo_npc.image_alpha > 0)
400
                starlo_npc.image_alpha -= 0.1
401
            else
402
            {
403
                timer = 40
404
                scene += 0.5
405
            }
406
        }
407
        break
408
    case 21.5:
409
        if (!scr_timer
scr_timer

function scr_timer() //gml_Script_scr_timer { if (timer > 0) { timer-- return false; } else return true; }
())
410
            return;
411
        cutscene_sfx_play(snd_starlo_buys_gun, 1)
412
        cutscene_advance(22)
413
        timer = 40
414
        break
415
    case 22:
416
        if audio_is_playing(snd_starlo_buys_gun)
417
            return;
418
        if (!scr_timer
scr_timer

function scr_timer() //gml_Script_scr_timer { if (timer > 0) { timer-- return false; } else return true; }
())
419
            return;
420
        starlo_npc.npc_direction = "down"
421
        if (starlo_npc.image_alpha < 1)
422
            starlo_npc.image_alpha += 0.1
423
        else
424
        {
425
            with (starlo_npc)
426
            {
427
                x_dest[0] = x
428
                y_dest[0] = 420
429
                can_walk = true
430
                npc_arrived = false
431
                end_direction = "down"
432
                other.scene++
433
            }
434
        }
435
        break
436
    case 23:
437
        if (!starlo_npc.npc_arrived)
438
            return;
439
        scr_text
scr_text

function scr_text() //gml_Script_scr_text { if (!instance_exists(obj_dialogue)) msg = instance_create(x, y, obj_dialogue) }
()
440
        with (msg)
441
        {
442
            sndfnt = 107
443
            talker[0] = other.starlo_npc
444
            message[0] = "* Done and done."
445
            message[1] = "* Can I get a#  yeehaw?"
446
            prt[0] = 417
447
            prt[1] = 424
448
        }
449
        if (!global.dialogue_open)
450
        {
451
            timer = 30
452
            scene++
453
        }
454
        break
455
    case 24:
456
        cutscene_npc_action_sprite(1169, 202, (1/3), true, 0, 232, 4)
457
        break
458
    case 25:
459
        if (!scr_timer
scr_timer

function scr_timer() //gml_Script_scr_timer { if (timer > 0) { timer-- return false; } else return true; }
())
460
            return;
461
        scr_text
scr_text

function scr_text() //gml_Script_scr_text { if (!instance_exists(obj_dialogue)) msg = instance_create(x, y, obj_dialogue) }
()
462
        with (msg)
463
        {
464
            sndfnt = 107
465
            talker[0] = other.starlo_npc
466
            message[0] = "* ..."
467
            message[1] = "* Right. Movin' along."
468
            prt[0] = 421
469
            prt[1] = 407
470
            if (message_current == 1)
471
                obj_starlo_npc.action_sprite = false
472
        }
473
        if (!global.dialogue_open)
474
            scene++
475
        break
476
    case 26:
477
        with (starlo_npc)
478
        {
479
            x_dest[0] = 110
480
            y_dest[0] = 400
481
            axis_override = "x"
482
            can_walk = true
483
            actor_speed = 3
484
            npc_arrived = false
485
            end_direction = "right"
486
        }
487
        timer = 30
488
        scene++
489
        break
490
    case 27:
491
        if (!scr_timer
scr_timer

function scr_timer() //gml_Script_scr_timer { if (timer > 0) { timer-- return false; } else return true; }
())
492
            return;
493
        with (player_npc)
494
        {
495
            x_dest[0] = 160
496
            y_dest[0] = 400
497
            axis_override = "x"
498
            can_walk = true
499
            actor_speed = 3
500
            npc_arrived = false
501
            end_direction = "left"
502
        }
503
        scene++
504
        break
505
    case 28:
506
        if ((!player_npc.npc_arrived) || (!starlo_npc.npc_arrived) || (!scr_timer
scr_timer

function scr_timer() //gml_Script_scr_timer { if (timer > 0) { timer-- return false; } else return true; }
()))
507
            return;
508
        scr_text
scr_text

function scr_text() //gml_Script_scr_text { if (!instance_exists(obj_dialogue)) msg = instance_create(x, y, obj_dialogue) }
()
509
        with (msg)
510
        {
511
            sndfnt_array[0] = 107
512
            talker[0] = other.starlo_npc
513
            message[0] = "* Let's see what you got!"
514
            message[1] = "* Take this trusty#  six-shooter as a gift#  from me."
515
            prt[0] = 419
516
            prt[1] = 422
517
        }
518
        if (!global.dialogue_open)
519
            scene++
520
        break
521
    case 29:
522
        player_npc.npc_direction = "left"
523
        cutscene_npc_walk(starlo_npc, (obj_pl.x - 20), obj_pl.y, 2, "y", "right")
524
        break
525
    case 30:
526
        cutscene_wait(0.25)
527
        break
528
    case 31:
529
        scr_text
scr_text

function scr_text() //gml_Script_scr_text { if (!instance_exists(obj_dialogue)) msg = instance_create(x, y, obj_dialogue) }
()
530
        with (msg)
531
        {
532
            sndfnt_array[0] = 391
533
            talker[0] = -4
534
            message[0] = "* (You got a Wild Revolver!)"
535
        }
536
        if (global.player_weapon != "Wild Revolver")
537
        {
538
            global.player_weapon = "Wild Revolver"
539
            audio_play_sound(snd_success, 1, 0)
540
        }
541
        if (!global.dialogue_open)
542
            scene++
543
        break
544
    case 32:
545
        cutscene_wait(0.25)
546
        break
547
    case 33:
548
        player_npc.npc_direction = "up"
549
        cutscene_npc_walk(starlo_npc, 110, 400, 3, "x", "right")
550
        break
551
    case 34:
552
        scr_audio_fade_out
scr_audio_fade_out

function scr_audio_fade_out(argument0, argument1) //gml_Script_scr_audio_fade_out { var snd = argument0 var fade_len = argument1 if (!audio_is_playing(snd)) return false; audio_sound_gain(snd, 0, fade_len) if instance_exists(obj_audio_fade_helper) { with (obj_audio_fade_helper) { if (audio_to_fade == snd) return false; } } with (instance_create(0, 0, obj_audio_fade_helper)) audio_to_fade = snd }
(music, 300)
553
        global.sound_carry_overworld = false
554
        global.battle_enemy_name = "dummy training pacifist"
555
        global.battling_enemy = false
556
        global.battling_boss = true
557
        global.battle_start = true
558
        global.current_room_overworld = room_get_name(room)
559
        instance_create(obj_pl.x, obj_pl.y, obj_heart_initiate_battle)
560
        obj_pl.direction = 90
561
        obj_pl.sprite_index = spr_pl_up
562
        obj_heart_initiate_battle.flash_delay = 6
563
        scene++
564
        break
565
    case 35:
566
        if (room != rm_battle)
567
            return;
568
        global.radio_pause = true
569
        scene++
570
        break
571
    case 36:
572
        if (room == rm_battle)
573
            return;
574
        global.radio_pause = false
575
        obj_radio.music_position = 0
576
        obj_pl.direction = 180
577
        if (!instance_exists(obj_starlo_npc))
578
        {
579
            starlo_npc = instance_create(110, 400, obj_starlo_npc)
580
            starlo_npc.npc_direction = "right"
581
            player_npc = instance_create(160, 400, obj_player_npc)
582
        }
583
        if (!instance_exists(obj_overworld_fade_in_screen))
584
            return;
585
        scr_audio_fade_out
scr_audio_fade_out

function scr_audio_fade_out(argument0, argument1) //gml_Script_scr_audio_fade_out { var snd = argument0 var fade_len = argument1 if (!audio_is_playing(snd)) return false; audio_sound_gain(snd, 0, fade_len) if instance_exists(obj_audio_fade_helper) { with (obj_audio_fade_helper) { if (audio_to_fade == snd) return false; } } with (instance_create(0, 0, obj_audio_fade_helper)) audio_to_fade = snd }
(music, 1000)
586
        timer = 50
587
        scene++
588
        break
589
    case 37:
590
        if (!scr_timer
scr_timer

function scr_timer() //gml_Script_scr_timer { if (timer > 0) { timer-- return false; } else return true; }
())
591
            return;
592
        scr_text
scr_text

function scr_text() //gml_Script_scr_text { if (!instance_exists(obj_dialogue)) msg = instance_create(x, y, obj_dialogue) }
()
593
        with (msg)
594
        {
595
            sndfnt = 107
596
            talker[0] = other.starlo_npc
597
            message[0] = "* Ya definitely pass this#  part of trainin'!"
598
            message[1] = "* I gotta go tell Ceroba#  'bout this."
599
            message[2] = "* She's a big doubter when#  it comes to you."
600
            message[3] = "* Let's ride on!"
601
            prt[0] = 417
602
            prt[1] = 422
603
            prt[2] = 424
604
            prt[3] = 417
605
        }
606
        if (!global.dialogue_open)
607
        {
608
            timer = 30
609
            scene++
610
        }
611
        break
612
    case 38:
613
        trn = instance_create(0, 0, obj_transition_clock)
614
        trn.newRoom = 128
615
        trn.xx = 182
616
        trn.yy = 195
617
        instance_destroy()
618
        break
619
}