Undertale Yellow script viewer

← back to main script listing

gml_Object_obj_dalv_Step_0

(view raw script w/o annotations or w/e)
1
script_execute(gml_Script_scr_depth, 0, 0, 0, 0, 0)
2
if (fadeout == true)
3
    scr_npc_fade
scr_npc_fade

function scr_npc_fade() //gml_Script_scr_npc_fade { solid = false if (image_alpha > 0) image_alpha -= 0.2 if (image_alpha == 0 && fade_kill == true) instance_destroy() }
()
4
if (room == rm_darkruins_07 && global.flag[25 Dalv meeting cutscene] == 1)
5
{
6
    instance_destroy()
7
    return;
8
}
9
if (!instance_exists(obj_pl))
10
    return;
11
if (room == rm_darkruins_07)
12
{
13
    if (global.flag[25 Dalv meeting cutscene] == 0)
14
    {
15
        if (obj_pl.x > 800)
16
        {
17
            with (obj_radio)
18
                audio_sound_gain(bgm, 0, 1000)
19
            obj_pl.state = gml_Script_scr_frozen_state
20
            global.cutscene = true
21
            obj_pl.image_speed = 0
22
            obj_pl.image_index = 0
23
            if (timer < 130 || (timer >= 132 && timer < 210) || (timer >= 212 && timer < 235) || (timer >= 237 && timer < 350))
24
                timer++
25
            if (timer == 30)
26
            {
27
                cam = instance_create(obj_pl.x, obj_pl.y, obj_camera)
28
                cam.speed = 2
29
                __view_set((9 << 0), 0, 1120)
30
                direction = 0
31
            }
32
            if (timer == 130)
33
            {
34
                speed = 0
35
                image_speed = 0
36
                image_index = 0
37
                if (!instance_exists(obj_dialogue))
38
                    msg = instance_create(x, y, obj_dialogue)
39
                with (msg)
40
                {
41
                    sndfnt = 100
42
                    message[0] = "* Hello..."
43
                    message[1] = "* I'm happy to finally meet you#  face to face."
44
                    message[2] = "* How long has it been?"
45
                    message[3] = "* I was wondering if you'd ever#  come back..."
46
                    message[4] = "* ..."
47
                    message[5] = "* No... too forward."
48
                    message[6] = "* Who am I kidding? I'll never#  be able to meet you in this#  state."
49
                    message[7] = "* I just hope you know... I had#  no choice. It must be this way."
50
                    portrait = false
51
                }
52
                timer++
53
            }
54
            if (timer == 131 && (!instance_exists(obj_dialogue)))
55
            {
56
                speed = 0.6
57
                timer++
58
            }
59
            if (timer == 210)
60
            {
61
                image_speed = 0
62
                image_index = 0
63
                speed = 0
64
                if (!instance_exists(obj_dialogue))
65
                    msg = instance_create(x, y, obj_dialogue)
66
                with (msg)
67
                {
68
                    sndfnt = 100
69
                    message[0] = "* ..."
70
                    message[1] = "* Huh?"
71
                    portrait = false
72
                }
73
                timer++
74
            }
75
        }
76
        if (timer == 211 && (!instance_exists(obj_dialogue)))
77
        {
78
            direction = 270
79
            timer++
80
        }
81
        if (timer == 221 && (!instance_exists(obj_dialogue)))
82
            direction = 180
83
        if (timer == 235 && (!instance_exists(obj_dialogue)))
84
        {
85
            if (!instance_exists(obj_dialogue))
86
                msg = instance_create(x, y, obj_dialogue)
87
            with (msg)
88
            {
89
                portrait = false
90
                sndfnt = 100
91
                message[0] = "* Who...?"
92
                message[1] = "* I-I must be seeing things..."
93
            }
94
            timer++
95
        }
96
        if (timer == 236 && (!instance_exists(obj_dialogue)))
97
        {
98
            direction = 180
99
            image_speed = 0.1
100
            speed = -0.25
101
            timer++
102
        }
103
        if (timer == 270 && (!instance_exists(obj_dialogue)))
104
        {
105
            image_speed = 0
106
            image_index = 0
107
            direction = 180
108
            speed = 0
109
        }
110
        if (timer == 310 && (!instance_exists(obj_dialogue)))
111
        {
112
            direction = 0
113
            speed = 2
114
        }
115
        if (timer == 350)
116
        {
117
            if (!instance_exists(obj_camera))
118
                cam2 = instance_create(1000, obj_pl.y, obj_camera)
119
            __view_set((9 << 0), 0, cam2)
120
            with (cam2)
121
            {
122
                direction = 180
123
                speed = 3
124
            }
125
            if (obj_camera.x <= obj_pl.x)
126
            {
127
                timer++
128
                __view_set((9 << 0), 0, 1031)
129
                global.cutscene = false
130
                obj_pl.state = gml_Script_scr_normal_state
131
                global.flag[25 Dalv meeting cutscene] = 1
132
                with (obj_radio)
133
                    audio_sound_gain(bgm, 1, 2000)
134
                with (cam2)
135
                    instance_destroy()
136
            }
137
        }
138
    }
139
}
140
if (room == rm_darkruins_10 && global.flag[3 Dalv second cutscene completion status] == true)
141
{
142
    instance_destroy()
143
    return;
144
}
145
if (room == rm_darkruins_10 && global.flag[3 Dalv second cutscene completion status] == false)
146
{
147
    obj_rndenc.disabled = true
148
    if (obj_pl.x > 420 && obj_pl.y < 240)
149
    {
150
        scr_cutscene_start
scr_cutscene_start

function scr_cutscene_start() //gml_Script_scr_cutscene_start { global.cutscene = true obj_pl.state = gml_Script_scr_frozen_state obj_pl.image_index = 0 obj_pl.image_speed = 0 }
()
151
        obj_pl.image_speed = 0
152
        obj_pl.image_index = 0
153
        if (timer < 30 || (timer >= 32 && timer < 110) || (timer >= 112 && timer < 250) || (timer >= 252 && timer < 310))
154
            timer++
155
        if (timer == 30)
156
        {
157
            if (!instance_exists(obj_dialogue))
158
                msg = instance_create(x, y, obj_dialogue)
159
            with (msg)
160
            {
161
                sndfnt = 100
162
                message[0] = "* Is it wrong to hold doubt in#  my actions?"
163
                portrait = false
164
            }
165
            timer++
166
        }
167
        if (timer == 31 && (!instance_exists(obj_dialogue)))
168
        {
169
            cam = instance_create(obj_pl.x, obj_pl.y, obj_camera)
170
            if (cam.x < 600)
171
                cam.speed = 3
172
            else
173
                cam.speed = 0
174
            __view_set((9 << 0), 0, 1120)
175
            timer++
176
        }
177
        if (timer == 110)
178
        {
179
            if (!instance_exists(obj_dialogue))
180
                msg = instance_create(x, y, obj_dialogue)
181
            with (msg)
182
            {
183
                sndfnt = 100
184
                position = 1
185
                message[0] = "* I enjoyed life before... I#  did... But I can't go back."
186
                message[1] = "* What happened that day would#  only repeat."
187
                message[2] = "* ..."
188
                portrait = false
189
            }
190
            timer++
191
        }
192
        if (timer == 111 && (!instance_exists(obj_dialogue)))
193
            timer++
194
        if (timer == 151 && (!instance_exists(obj_dialogue)))
195
        {
196
            direction = 270
197
            timer++
198
        }
199
        if (timer == 190 && (!instance_exists(obj_dialogue)))
200
            direction = 180
201
        if (timer == 250 && (!instance_exists(obj_dialogue)))
202
        {
203
            if (!instance_exists(obj_dialogue))
204
                msg = instance_create(x, y, obj_dialogue)
205
            with (msg)
206
            {
207
                sndfnt = 100
208
                position = 1
209
                message[0] = "* !"
210
                message[1] = "* What is this?"
211
                message[2] = "* Why do they appear every time#  I start monologuing? "
212
                message[3] = "* I need more rest."
213
                portrait = false
214
            }
215
            timer++
216
        }
217
        if (timer == 251 && (!instance_exists(obj_dialogue)))
218
        {
219
            direction = 0
220
            speed = 3
221
            image_speed = 0.2
222
            timer++
223
        }
224
        if (timer == 310)
225
        {
226
            if (!instance_exists(obj_camera))
227
                cam2 = instance_create(600, obj_pl.y, obj_camera)
228
            if (cam2.x >= obj_pl.x)
229
                cam2.speed = -2
230
            else
231
            {
232
                with (cam2)
233
                    instance_destroy()
234
                __view_set((9 << 0), 0, 1031)
235
                scr_cutscene_end
scr_cutscene_end

function scr_cutscene_end() //gml_Script_scr_cutscene_end { global.cutscene = false obj_pl.alarm[0] = 1 }
()
236
                global.flag[3 Dalv second cutscene completion status] = true
237
                obj_rndenc.disabled = false
238
                instance_destroy()
239
            }
240
        }
241
    }
242
}
243
if (room == rm_darkruins_16 && global.flag[26 Dalv cutscene outside his house completed] == 1)
244
{
245
    if (global.flag[17 Dalv fate] != 0 && global.dalv_house_enter_count == 0)
246
        global.dalv_house_enter_count = 1
247
    instance_destroy()
248
    return;
249
}
250
if (room == rm_darkruins_16 && global.flag[26 Dalv cutscene outside his house completed] == 0)
251
{
252
    if (obj_pl.x < 520 && timer == 0)
253
    {
254
        with (obj_radio)
255
            audio_sound_gain(bgm, 0, 1000)
256
        global.cutscene = true
257
        obj_pl.image_speed = 0
258
        obj_pl.image_index = 0
259
        timer++
260
    }
261
    if ((timer > 3 && timer < 60) || (timer > 61 && timer < 70) || (timer > 71 && timer < 80) || (timer > 81 && timer < 110) || (timer > 111 && timer < 140))
262
        timer++
263
    if (timer == 1)
264
    {
265
        direction = 90
266
        with (obj_pl)
267
        {
268
            direction = 180
269
            speed = 2
270
            image_speed = 0.2
271
        }
272
        timer++
273
    }
274
    if (obj_pl.x <= 380 && timer == 2)
275
    {
276
        with (obj_pl)
277
        {
278
            direction = 90
279
            speed = 2
280
        }
281
        speed = 0.5
282
        timer++
283
    }
284
    if (obj_pl.y < 260 && timer == 3)
285
    {
286
        with (obj_pl)
287
        {
288
            direction = 90
289
            speed = 0
290
            image_speed = 0
291
            image_index = 0
292
        }
293
        timer++
294
    }
295
    if (timer == 30)
296
        speed = 1
297
    if (timer == 60)
298
    {
299
        if (!instance_exists(obj_dialogue))
300
            msg = instance_create(x, y, obj_dialogue)
301
        with (msg)
302
        {
303
            sndfnt = 100
304
            message[0] = "* Ah!"
305
            portrait = false
306
        }
307
        speed = 0
308
        image_index = 0
309
        image_speed = 0
310
        timer++
311
    }
312
    if (timer == 61 && (!instance_exists(obj_dialogue)))
313
    {
314
        direction = 270
315
        timer++
316
    }
317
    if (timer == 70)
318
    {
319
        if (!instance_exists(obj_camera))
320
            cam = instance_create(obj_pl.x, obj_pl.y, obj_camera)
321
        cam.direction = 90
322
        cam.speed = 4
323
        __view_set((9 << 0), 0, cam)
324
        timer++
325
    }
326
    if (timer == 71 && obj_camera.y < y)
327
    {
328
        timer = 72
329
        obj_camera.speed = 0
330
    }
331
    if (timer == 80)
332
    {
333
        if (!instance_exists(obj_dialogue))
334
            msg = instance_create(x, y, obj_dialogue)
335
        with (msg)
336
        {
337
            sndfnt = 100
338
            message[0] = "* Umm..."
339
            portrait = false
340
        }
341
        timer++
342
    }
343
    if (timer == 81 && (!instance_exists(obj_dialogue)))
344
    {
345
        speed = -0.3
346
        image_speed = 0.2
347
        timer++
348
    }
349
    if (timer == 110)
350
    {
351
        speed = 0
352
        image_speed = 0
353
        image_index = 0
354
        if (!instance_exists(obj_dialogue))
355
            msg = instance_create(x, y, obj_dialogue)
356
        with (msg)
357
        {
358
            sndfnt = 100
359
            portrait = false
360
            message[0] = "* I don't know who you are but I#  ask you..."
361
            message[1] = "* Please leave!"
362
        }
363
        timer++
364
    }
365
    if (timer == 111 && (!instance_exists(obj_dialogue)))
366
    {
367
        image_speed = 0.2
368
        path_start(pt_dalv, 3, path_action_stop, 0)
369
        timer++
370
    }
371
    if (timer == 140)
372
    {
373
        cam.direction = 270
374
        cam.speed = 3
375
        if (cam.y > obj_pl.y)
376
        {
377
            with (cam)
378
                instance_destroy()
379
            __view_set((9 << 0), 0, 1031)
380
            global.cutscene = false
381
            obj_pl.state = gml_Script_scr_normal_state
382
            global.flag[26 Dalv cutscene outside his house completed] = 1
383
            with (obj_radio)
384
                audio_sound_gain(bgm, 1, 2000)
385
            instance_destroy()
386
        }
387
    }
388
}
389
if (room == rm_darkruins_18 && global.flag[27 Cutscene surrounding the Dalv fight completed] == 1)
390
{
391
    instance_destroy()
392
    return;
393
}
394
if (room == rm_darkruins_18 && global.flag[27 Cutscene surrounding the Dalv fight completed] == 0)
395
{
396
    if (global.flag[17 Dalv fate] == 0)
397
    {
398
        if (obj_pl.y < 370 && timer == 0)
399
        {
400
            global.cutscene = true
401
            with (obj_radio)
402
                audio_sound_gain(bgm, 0, 4000)
403
            obj_pl.image_speed = 0
404
            obj_pl.image_index = 0
405
            obj_pl.direction = 90
406
            cam = instance_create(obj_pl.x, obj_pl.y, obj_camera)
407
            __view_set((9 << 0), 0, 1120)
408
            cam.vspeed = -1
409
            timer++
410
        }
411
        if (timer == 1 && cam.y < 320)
412
        {
413
            timer++
414
            cam.vspeed = 0
415
        }
416
        if ((timer > 1 && timer < 60) || (timer > 61 && timer < 90) || (timer > 91 && timer < 140) || (timer > 141 && timer < 230) || (timer > 231 && timer < 400))
417
            timer++
418
        if (timer == 60)
419
        {
420
            scr_text
scr_text

function scr_text() //gml_Script_scr_text { if (!instance_exists(obj_dialogue)) msg = instance_create(x, y, obj_dialogue) }
()
421
            with (msg)
422
            {
423
                sndfnt = 100
424
                message[0] = "* You're... still following me?"
425
                message[1] = "* I thought I made it clear that#  I want to be left alone."
426
                portrait = false
427
                position = 0
428
            }
429
            timer++
430
        }
431
        if (timer == 61 && (!instance_exists(obj_dialogue)))
432
            timer++
433
        if (timer == 90)
434
        {
435
            direction = 270
436
            scr_text
scr_text

function scr_text() //gml_Script_scr_text { if (!instance_exists(obj_dialogue)) msg = instance_create(x, y, obj_dialogue) }
()
437
            with (msg)
438
            {
439
                sndfnt = 100
440
                message[0] = "* I don't understand... You...#  you look just like them."
441
                message[1] = "* Is this some sort of haunting?#  Or have you come to finish the#  job?"
442
                message[2] = "* Retreating here wasn't enough#  so you hunted me down..."
443
                message[3] = "* Right?"
444
                ch_msg = 3
445
                ch[1] = "What?"
446
                ch[2] = "..."
447
                portrait = false
448
                position = 0
449
            }
450
            timer++
451
        }
452
        if (timer == 91 && (!instance_exists(obj_dialogue)))
453
            timer++
454
        if (timer == 100)
455
            direction = 90
456
        if (timer == 140)
457
        {
458
            scr_text
scr_text

function scr_text() //gml_Script_scr_text { if (!instance_exists(obj_dialogue)) msg = instance_create(x, y, obj_dialogue) }
()
459
            with (msg)
460
            {
461
                sndfnt = 100
462
                message[0] = "* And I was just starting to#  accept my reality.#  The cruelty..."
463
                message[1] = "* ..."
464
                message[2] = "* Whatever I did to you that day#  was not my intention, I was#  only..."
465
                message[3] = "* Nevermind. Words aren't#  enough."
466
                portrait = false
467
                position = 0
468
            }
469
            timer++
470
        }
471
        if (timer == 141 && (!instance_exists(obj_dialogue)))
472
            timer++
473
        if (timer == 160)
474
            direction = 0
475
        if (timer == 190)
476
            direction = 270
477
        if (timer == 220)
478
            direction = 90
479
        if (timer == 230)
480
        {
481
            scr_text
scr_text

function scr_text() //gml_Script_scr_text { if (!instance_exists(obj_dialogue)) msg = instance_create(x, y, obj_dialogue) }
()
482
            with (msg)
483
            {
484
                sndfnt = 100
485
                message[0] = "* I... I don't want to fight#  anybody, but you've invaded#  my home."
486
                message[1] = "* The exit is blocked and you#  can't stay here. I will not#  allow it."
487
                portrait = false
488
                position = 0
489
            }
490
            timer++
491
        }
492
        if (timer == 231 && (!instance_exists(obj_dialogue)))
493
        {
494
            spritelock = false
495
            direction = 45
496
            sprite_index = spr_hoodoff
497
            image_speed = 0.2
498
            hood = false
499
            timer++
500
        }
501
        if (timer == 370)
502
        {
503
            spritelock = true
504
            direction = 0
505
        }
506
        if (timer == 390)
507
        {
508
            spritelock = true
509
            direction = 270
510
        }
511
        if (timer == 400)
512
        {
513
            scr_text
scr_text

function scr_text() //gml_Script_scr_text { if (!instance_exists(obj_dialogue)) msg = instance_create(x, y, obj_dialogue) }
()
514
            with (msg)
515
            {
516
                sndfnt = 100
517
                message[0] = "* Only one thing to#  do..."
518
                prt[0] = 1759
519
                portrait = true
520
                position = 0
521
            }
522
            timer++
523
        }
524
        if (timer == 401 && (!instance_exists(obj_dialogue)))
525
        {
526
            image_speed = 0
527
            instance_create(x, y, obj_flash)
528
            timer++
529
        }
530
    }
531
    else if (global.flag[17 Dalv fate] == 1 || global.flag[17 Dalv fate] == 4)
532
    {
533
        scr_cutscene_start
scr_cutscene_start

function scr_cutscene_start() //gml_Script_scr_cutscene_start { global.cutscene = true obj_pl.state = gml_Script_scr_frozen_state obj_pl.image_index = 0 obj_pl.image_speed = 0 }
()
534
        if (global.geno_complete[1] == false)
535
        {
536
            if (timer == 0)
537
            {
538
                direction = 270
539
                hood = false
540
                global.cutscene = true
541
                scr_text
scr_text

function scr_text() //gml_Script_scr_text { if (!instance_exists(obj_dialogue)) msg = instance_create(x, y, obj_dialogue) }
()
542
                with (msg)
543
                {
544
                    sndfnt = 100
545
                    message[0] = "* ..."
546
                    message[1] = "* ..."
547
                    message[2] = "* ..."
548
                    message[3] = "* What do friends do#  actually?"
549
                    message[4] = "* Do you want to, um,#  see my house?#  Or something?"
550
                    message[5] = "* I have to go there#  anyway so I guess stop#  by if you have time. "
551
                    prt[0] = 1755
552
                    prt[1] = 1780
553
                    prt[2] = 1763
554
                    prt[3] = 1755
555
                    prt[4] = 1776
556
                    prt[5] = 1769
557
                    position = 0
558
                }
559
                timer = 1
560
            }
561
            if ((!instance_exists(obj_dialogue)) && timer == 1)
562
                vspeed = -2
563
            if (y < 160 && timer == 1)
564
            {
565
                global.flag[27 Cutscene surrounding the Dalv fight completed] = 1
566
                global.cutscene = false
567
                obj_pl.state = gml_Script_scr_normal_state
568
                timer = 2
569
            }
570
        }
571
        else
572
        {
573
            scr_cutscene_start
scr_cutscene_start

function scr_cutscene_start() //gml_Script_scr_cutscene_start { global.cutscene = true obj_pl.state = gml_Script_scr_frozen_state obj_pl.image_index = 0 obj_pl.image_speed = 0 }
()
574
            if (timer == 0)
575
            {
576
                direction = 270
577
                hood = false
578
                global.cutscene = true
579
                scr_text
scr_text

function scr_text() //gml_Script_scr_text { if (!instance_exists(obj_dialogue)) msg = instance_create(x, y, obj_dialogue) }
()
580
                with (msg)
581
                {
582
                    sndfnt = 100
583
                    message[0] = "You're... sparing me?"
584
                    message[1] = "But... what about them?"
585
                    message[2] = "Why only me?"
586
                    message[3] = "What makes me so#special!"
587
                    message[4] = "Or is this how you#plan to hurt me?"
588
                    message[5] = "By taking them all#away..."
589
                    message[6] = "..."
590
                    message[7] = "...I don't need them.#I'll be fine on my own."
591
                    message[8] = "I've been doing it#long enough..."
592
                    message[9] = "..."
593
                    message[10] = "I think you should leave."
594
                    message[11] = "You've already done#enough damage here."
595
                    prt[0] = 1763
596
                    prt[1] = 1764
597
                    prt[2] = 1763
598
                    prt[3] = 1763
599
                    prt[4] = 1762
600
                    prt[5] = 1762
601
                    prt[6] = 1786
602
                    prt[7] = 1781
603
                    prt[8] = 1780
604
                    prt[9] = 1763
605
                    prt[10] = 1763
606
                    prt[11] = 1781
607
                    position = 0
608
                }
609
                timer = 1
610
            }
611
            if ((!instance_exists(obj_dialogue)) && timer == 1)
612
                vspeed = -0.5
613
            if (y < 220 && timer == 1)
614
            {
615
                timer = 2
616
                image_speed = 0
617
                vspeed = 0
618
                direction = 90
619
            }
620
            if (timer > 1 && timer < 75)
621
                timer++
622
            if (timer == 75)
623
            {
624
                scr_text
scr_text

function scr_text() //gml_Script_scr_text { if (!instance_exists(obj_dialogue)) msg = instance_create(x, y, obj_dialogue) }
()
625
                with (msg)
626
                {
627
                    sndfnt = 100
628
                    message[0] = "* ..."
629
                    message[1] = "* I guess... I truly am#  alone now..."
630
                    portrait = false
631
                    position = 0
632
                }
633
                timer = 76
634
            }
635
            if ((!instance_exists(obj_dialogue)) && timer == 76)
636
            {
637
                vspeed = -1
638
                alarm[1] = 45
alarm[1]

global.flag[27 Cutscene surrounding the Dalv fight completed] = 1 genoCount = 0 if (global.route == 3) global.route = 1 global.flag[17 Dalv fate] = 4 global.cutscene = false obj_pl.state = gml_Script_scr_normal_state instance_destroy()
639
                timer = 77
640
            }
641
        }
642
    }
643
    else if (global.flag[17 Dalv fate] == 3)
644
    {
645
        scr_cutscene_start
scr_cutscene_start

function scr_cutscene_start() //gml_Script_scr_cutscene_start { global.cutscene = true obj_pl.state = gml_Script_scr_frozen_state obj_pl.image_index = 0 obj_pl.image_speed = 0 }
()
646
        if (timer == 0)
647
        {
648
            global.route = 1
649
            direction = 270
650
            sprite_index = spr_hoodoff
651
            hood = false
652
            global.cutscene = true
653
            scr_text
scr_text

function scr_text() //gml_Script_scr_text { if (!instance_exists(obj_dialogue)) msg = instance_create(x, y, obj_dialogue) }
()
654
            with (msg)
655
            {
656
                sndfnt = 100
657
                message[0] = "* This was all a#  misunderstanding, right?"
658
                message[1] = "* ..."
659
                message[2] = "* I'll be waiting in my#  house."
660
                message[3] = "* Come whenever you feel#  like it."
661
                prt[0] = 1755
662
                prt[1] = 1780
663
                prt[2] = 1755
664
                prt[3] = 1755
665
                position = 0
666
            }
667
            timer = 1
668
        }
669
        if ((!instance_exists(obj_dialogue)) && timer == 1)
670
            vspeed = -2
671
        if (y < 160 && timer == 1)
672
        {
673
            global.flag[27 Cutscene surrounding the Dalv fight completed] = 1
674
            global.cutscene = false
675
            obj_pl.state = gml_Script_scr_normal_state
676
            timer = 2
677
        }
678
    }
679
    else if (global.flag[17 Dalv fate] == 2)
680
    {
681
        instance_destroy()
682
        scr_cutscene_end
scr_cutscene_end

function scr_cutscene_end() //gml_Script_scr_cutscene_end { global.cutscene = false obj_pl.alarm[0] = 1 }
()
683
        global.flag[27 Cutscene surrounding the Dalv fight completed] = 1
684
    }
685
}
686
if (room == rm_dalvshouse && global.flag[28 Spoken to Dalv in his house] == 0)
687
{
688
    if (timer == 0)
689
    {
690
        global.cutscene = true
691
        obj_pl.direction = 90
692
        obj_pl.image_speed = 0
693
        obj_pl.image_index = 0
694
        timer = 4
695
    }
696
    if (timer > 3 && timer < 30)
697
        timer++
698
    if (timer == 30)
699
    {
700
        scr_text
scr_text

function scr_text() //gml_Script_scr_text { if (!instance_exists(obj_dialogue)) msg = instance_create(x, y, obj_dialogue) }
()
701
        with (msg)
702
        {
703
            if (global.flag[17 Dalv fate] == 3)
704
            {
705
                global.route = 1
706
                genoCount = 0
707
                sndfnt = 100
708
                message[0] = "* Welcome..."
709
                message[1] = "* Make yourself at home."
710
                message[2] = "* I'm going to my room to#  rest."
711
                message[3] = "* I feel a bit ill."
712
                message[4] = "* We're... friends now#  so..."
713
                message[5] = "* Look at whatever you#  like."
714
                message[6] = "* See you... later."
715
                prt[0] = 1780
716
                prt[1] = 1755
717
                prt[2] = 1780
718
                prt[3] = 1781
719
                prt[4] = 1755
720
                prt[5] = 1755
721
                prt[6] = 1780
722
            }
723
            else if (global.dalv_house_enter_count == 0)
724
            {
725
                sndfnt = 100
726
                message[0] = "* I have to um...#  fix something in the#  other room."
727
                message[1] = "* Sit down,#  get comfortable,#  take your shoes off."
728
                message[2] = "* ..."
729
                message[3] = "* Actually please leave#  them on, the floors are#  a bit dirty."
730
                message[4] = "* I haven't swept since #  this morning."
731
                prt[0] = 1780
732
                prt[1] = 1776
733
                prt[2] = 1755
734
                prt[3] = 1763
735
                prt[4] = 1763
736
            }
737
            else if (global.dalv_house_enter_count == 1)
738
            {
739
                sndfnt = 100
740
                message[0] = "* It seems like you#  took your time."
741
                message[1] = "* Oh, but don't worry, I'm#  used to standing around#  by my lonesome."
742
                message[2] = "* I keep myself occupied#  by cleaning around#  the house."
743
                message[3] = "* It's my hourly routine!"
744
                message[4] = "* ..."
745
                message[5] = "* I have to um...#  fix something..."
746
                prt[0] = 1755
747
                prt[1] = 1780
748
                prt[2] = 1776
749
                prt[3] = 1776
750
                prt[4] = 1755
751
                prt[5] = 1780
752
            }
753
        }
754
        timer++
755
    }
756
    if (timer == 31 && (!instance_exists(obj_dialogue)))
757
    {
758
        timer++
759
        hood = false
760
        image_speed = 0.2
761
        path_start(pt_dalvhouse, 3, path_action_stop, false)
762
        if (global.flag[17 Dalv fate] != 3)
763
            obj_dalv2.alarm[0] = 150
764
        alarm[0] = 75
alarm[0]

if (door_open_alarm_counter == 0) { audio_play_sound(snd_doorclose, 1, 0) alarm[0] = 25 door_open_alarm_counter++ } else if (door_open_alarm_counter == 1) { audio_play_sound(snd_doorlock, 1, 0) if (global.flag[17 Dalv fate] == 3) { audio_play_sound(snd_doorlock, 1, 0) alarm[0] = 25 door_open_alarm_counter++ global.flag[17 Dalv fate] = 4 } } else { global.cutscene = false obj_pl.state = gml_Script_scr_normal_state with (obj_dalv2) instance_destroy() instance_destroy() }
765
    }
766
}