Deltarune (Chapter 4) script viewer

← back to main script listing

gml_Object_obj_dw_church_pianopuzzle_Step_0

(view raw script w/o annotations or w/e)
1
scr_populatechars
scr_populatechars

function
scr_populatechars()
{ if (!variable_instance_exists(id, "kris")) kris = 0; if (!variable_instance_exists(id, "ralsei")) ralsei = 0; if (!variable_instance_exists(id, "susie")) susie = 0; if (!variable_instance_exists(id, "noelle")) noelle = 0; if (kris == 0) { with (obj_mainchara) other.kris = id; } if (susie == 0) { with (obj_caterpillarchara) { if (name == "susie") other.susie = id; } } if (ralsei == 0) { with (obj_caterpillarchara) { if (name == "ralsei") other.ralsei = id; } } if (noelle == 0) { with (obj_caterpillarchara) { if (name == "noelle") other.noelle = id; } } }
();
2
if (!init)
3
{
4
    if (makecage)
5
    {
6
        var pos = findspriteinfo(spr_dw_church_steelstaff);
7
        blackoverlay = instance_create(pos.x, pos.y, obj_dw_church_steelstaff);
8
    }
9
    if (global.flag[891] == 1)
10
    {
11
        with (instance_create(200, 120, obj_church_piano_hint))
12
        {
13
            hint = "1315";
14
            hintno = 0;
15
            hintslots = 1;
16
            range = 1;
17
            createlight = false;
18
            alpha = 1;
19
            active = 1;
20
            depth = 49999;
21
        }
22
    }
23
    if (global.flag[886] == 1)
24
    {
25
        with (instance_create(440, 120, obj_church_piano_hint))
26
        {
27
            hint = "3355";
28
            hintno = 1;
29
            hintslots = 1;
30
            range = 1;
31
            createlight = false;
32
            alpha = 1;
33
            active = 1;
34
            depth = 49999;
35
        }
36
    }
37
    init = 1;
38
}
39
if (con == 0)
40
{
41
    var trig = 0;
42
    with (obj_church_piano_playable)
43
    {
44
        if (solved)
45
            trig = 1;
46
    }
47
    if (trig == 1)
48
    {
49
        global.flag[892] = 1;
50
        timer = 0;
51
        snd_play(snd_sparkle_gem);
52
        var doomtime = 30;
53
        var style = 2;
54
        var kind = "out";
55
        with (obj_church_piano_playable)
56
            forceend = 1;
57
        with (blackoverlay)
58
            instance_destroy();
59
        with (obj_church_piano_hint)
60
        {
61
            
scr_lerpvar
scr_lerpvar

function
scr_lerpvar()
{ if (argument_count < 6) ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3]);
else ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3], argument[4], argument[5]);
return ___lerpvar; } function scr_lerpvar_respect() { if (argument_count < 6) ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3]);
else ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3], argument[4], argument[5]);
___lerpvar.respectglobalinteract = true; return ___lerpvar; }
("alpha", 1, 0, doomtime, style, kind);
62
            
scr_doom
scr_doom

function
scr_doom(arg0 = id, arg1)
{ with (instance_create_depth(0, 0, 0, obj_doom)) { alarm[0] target = arg0; persistent = arg0.persistent; } }
(id, doomtime);
63
        }
64
        with (obj_church_piano_playable)
65
        {
66
            dontresetproperly = true;
67
            dontdrawmenu = true;
68
        }
69
        con = 1;
70
    }
71
}
72
if (con == 1)
73
{
74
    global.interact = 1;
75
    timer++;
76
    if (timer == 15)
77
    {
78
        with (obj_ch4_DCA08B)
79
            con = 0;
80
        con = 2;
81
        timer = 0;
82
    }
83
}
84
if (rhint == 0)
85
{
86
    if (obj_church_piano_playable.con > 0)
87
        rhint = 1;
88
}
89
if (rhint == 1)
90
{
91
    if (obj_church_piano_playable.con == 0 && obj_church_piano_playable.solved == 0 && global.interact == 0)
92
    {
93
        if (obj_church_piano_playable.notesplayed == true)
94
        {
95
            global.interact = 1;
96
            rhinttimer = 0;
97
            rhint = 2;
98
            global.facing = 3;
99
            ralsei.fun = true;
100
            ralsei.sprite_index = spr_ralsei_right;
101
            susie.fun = true;
102
            susie.sprite_index = spr_susie_left_dw;
103
        }
104
        else
105
        {
106
            rhint = 0;
107
        }
108
    }
109
}
110
if (rhint == 2)
111
{
112
    rhinttimer++;
113
    if (rhinttimer == 10)
114
    {
115
        rhint = 3;
116
        if (hinttoget == 0)
117
        {
118
            if (global.flag[893] == 0)
119
            {
120
                
scr_speaker
scr_speaker

function
scr_speaker(arg0)
{ _speaker = arg0; global.typer = 5; if (global.darkzone == 1) global.typer = 6; if (global.fighting == 1) global.typer = 4; global.fc = 0; global.fe = 0; if (_speaker == "silent" && global.darkzone == 0) global.typer = 2; if (_speaker == "silent" && global.darkzone == 1) global.typer = 36; if (_speaker == "balloon" || _speaker == "enemy") global.typer = 50; if (_speaker == "sans") { global.typer = 14; global.fc = 6; } if (_speaker == "undyne" || _speaker == "und") { global.typer = 17; global.fc = 9; } if (_speaker == "temmie" || _speaker == "tem") global.typer = 21; if (_speaker == "jevil") global.typer = 35; if (_speaker == "catti") global.fc = 13; if (_speaker == "jockington" || _speaker == "joc") global.fc = 14; if (_speaker == "catty" || _speaker == "caddy") global.fc = 16; if (_speaker == "bratty" || _speaker == "bra") global.fc = 17; if (_speaker == "rouxls" || _speaker == "rou") global.fc = 18; if (_speaker == "burgerpants" || _speaker == "bur") global.fc = 19; if (_speaker == "spamton") { if (global.fighting == 0) global.typer = 66; else global.typer = 68; } if (_speaker == "sneo") global.typer = 67; if (_speaker == "gerson" || _speaker == "ger" || _speaker == "gers") global.typer = 85; if (_speaker == "susie" || _speaker == "sus") { global.fc = 1; global.typer = 10; if (global.darkzone == 1) { global.typer = 30; if (global.fighting == 1) global.typer = 47; } } if (_speaker == "ralsei" || _speaker == "ral") { global.fc = 2; global.typer = 31; if (global.fighting == 1) global.typer = 45; if (global.flag[30 ralsei_hat_state] == 1) global.typer = 6; } if (_speaker == "noelle" || _speaker == "noe") { global.fc = 3; if (global.darkzone == 0) global.typer = 12; else global.typer = 56; if (global.fighting == 1) global.typer = 59; } if (_speaker == "toriel" || _speaker == "tor") { global.fc = 4; global.typer = 7; } if (_speaker == "asgore" || _speaker == "asg") { global.fc = 10; global.typer = 18; } if (_speaker == "king" || _speaker == "kin") { global.fc = 20; global.typer = 33; if (global.chapter == 1) { if (global.plot < 235) global.typer = 36; ...
("ralsei");
121
                msgsetloc(0, 
Face Q* Hmm...Delay 11 I wonder if we need to play something specific?Wait for input
"\\EQ* Hmm..^1. I wonder if we need to play something specific?/", "obj_dw_church_pianopuzzle_slash_Step_0_gml_143_0"
);
122
                msgnextloc(
Face Q* Perhaps there's a hint somewhere...Wait for input
"\\EQ* Perhaps there's a hint somewhere.../", "obj_dw_church_pianopuzzle_slash_Step_0_gml_144_0"
);
123
                
scr_anyface_next
scr_anyface_next

function
scr_anyface_next(arg0, arg1)
{ global.msgno++;
scr_anyface(arg0, global.msgno, arg1);
}
("susie", "K");
124
                msgnextloc(
Face K* ...Delay 11 wait,Delay 11 it's a puzzle? Thought Kris was just jamming.Wait for inputClose Message
"\\EK* ..^1. wait^1, it's a puzzle? Thought Kris was just jamming./%", "obj_dw_church_pianopuzzle_slash_Step_0_gml_146_0"
);
125
                global.flag[893] = 1;
126
            }
127
            else
128
            {
129
                
scr_speaker
scr_speaker

function
scr_speaker(arg0)
{ _speaker = arg0; global.typer = 5; if (global.darkzone == 1) global.typer = 6; if (global.fighting == 1) global.typer = 4; global.fc = 0; global.fe = 0; if (_speaker == "silent" && global.darkzone == 0) global.typer = 2; if (_speaker == "silent" && global.darkzone == 1) global.typer = 36; if (_speaker == "balloon" || _speaker == "enemy") global.typer = 50; if (_speaker == "sans") { global.typer = 14; global.fc = 6; } if (_speaker == "undyne" || _speaker == "und") { global.typer = 17; global.fc = 9; } if (_speaker == "temmie" || _speaker == "tem") global.typer = 21; if (_speaker == "jevil") global.typer = 35; if (_speaker == "catti") global.fc = 13; if (_speaker == "jockington" || _speaker == "joc") global.fc = 14; if (_speaker == "catty" || _speaker == "caddy") global.fc = 16; if (_speaker == "bratty" || _speaker == "bra") global.fc = 17; if (_speaker == "rouxls" || _speaker == "rou") global.fc = 18; if (_speaker == "burgerpants" || _speaker == "bur") global.fc = 19; if (_speaker == "spamton") { if (global.fighting == 0) global.typer = 66; else global.typer = 68; } if (_speaker == "sneo") global.typer = 67; if (_speaker == "gerson" || _speaker == "ger" || _speaker == "gers") global.typer = 85; if (_speaker == "susie" || _speaker == "sus") { global.fc = 1; global.typer = 10; if (global.darkzone == 1) { global.typer = 30; if (global.fighting == 1) global.typer = 47; } } if (_speaker == "ralsei" || _speaker == "ral") { global.fc = 2; global.typer = 31; if (global.fighting == 1) global.typer = 45; if (global.flag[30 ralsei_hat_state] == 1) global.typer = 6; } if (_speaker == "noelle" || _speaker == "noe") { global.fc = 3; if (global.darkzone == 0) global.typer = 12; else global.typer = 56; if (global.fighting == 1) global.typer = 59; } if (_speaker == "toriel" || _speaker == "tor") { global.fc = 4; global.typer = 7; } if (_speaker == "asgore" || _speaker == "asg") { global.fc = 10; global.typer = 18; } if (_speaker == "king" || _speaker == "kin") { global.fc = 20; global.typer = 33; if (global.chapter == 1) { if (global.plot < 235) global.typer = 36; ...
("susie");
130
                msgsetloc(0, 
Face 7* Dude,Delay 11 what if you just smashed all the keys?Wait for input
"\\E7* Dude^1, what if you just smashed all the keys?/", "obj_dw_church_pianopuzzle_slash_Step_0_gml_152_0"
);
131
                msgnextloc(
Face A* That'll probably work,Delay 11 right?Wait for inputClose Message
"\\EA* That'll probably work^1, right?/%", "obj_dw_church_pianopuzzle_slash_Step_0_gml_153_0"
);
132
                global.flag[893] = 1.1;
133
            }
134
        }
135
        if (hinttoget == 1)
136
        {
137
            
scr_speaker
scr_speaker

function
scr_speaker(arg0)
{ _speaker = arg0; global.typer = 5; if (global.darkzone == 1) global.typer = 6; if (global.fighting == 1) global.typer = 4; global.fc = 0; global.fe = 0; if (_speaker == "silent" && global.darkzone == 0) global.typer = 2; if (_speaker == "silent" && global.darkzone == 1) global.typer = 36; if (_speaker == "balloon" || _speaker == "enemy") global.typer = 50; if (_speaker == "sans") { global.typer = 14; global.fc = 6; } if (_speaker == "undyne" || _speaker == "und") { global.typer = 17; global.fc = 9; } if (_speaker == "temmie" || _speaker == "tem") global.typer = 21; if (_speaker == "jevil") global.typer = 35; if (_speaker == "catti") global.fc = 13; if (_speaker == "jockington" || _speaker == "joc") global.fc = 14; if (_speaker == "catty" || _speaker == "caddy") global.fc = 16; if (_speaker == "bratty" || _speaker == "bra") global.fc = 17; if (_speaker == "rouxls" || _speaker == "rou") global.fc = 18; if (_speaker == "burgerpants" || _speaker == "bur") global.fc = 19; if (_speaker == "spamton") { if (global.fighting == 0) global.typer = 66; else global.typer = 68; } if (_speaker == "sneo") global.typer = 67; if (_speaker == "gerson" || _speaker == "ger" || _speaker == "gers") global.typer = 85; if (_speaker == "susie" || _speaker == "sus") { global.fc = 1; global.typer = 10; if (global.darkzone == 1) { global.typer = 30; if (global.fighting == 1) global.typer = 47; } } if (_speaker == "ralsei" || _speaker == "ral") { global.fc = 2; global.typer = 31; if (global.fighting == 1) global.typer = 45; if (global.flag[30 ralsei_hat_state] == 1) global.typer = 6; } if (_speaker == "noelle" || _speaker == "noe") { global.fc = 3; if (global.darkzone == 0) global.typer = 12; else global.typer = 56; if (global.fighting == 1) global.typer = 59; } if (_speaker == "toriel" || _speaker == "tor") { global.fc = 4; global.typer = 7; } if (_speaker == "asgore" || _speaker == "asg") { global.fc = 10; global.typer = 18; } if (_speaker == "king" || _speaker == "kin") { global.fc = 20; global.typer = 33; if (global.chapter == 1) { if (global.plot < 235) global.typer = 36; ...
("ralsei");
138
            msgsetloc(0, 
Face 6* ...Delay 11 Looks like the music is incomplete.Wait for input
"\\E6* ..^1. Looks like the music is incomplete./", "obj_dw_church_pianopuzzle_slash_Step_0_gml_160_0"
);
139
            msgnextloc(
Face 2* Maybe we need another hint...?Wait for input
"\\E2* Maybe we need another hint...?/", "obj_dw_church_pianopuzzle_slash_Step_0_gml_161_0"
);
140
            
scr_anyface_next
scr_anyface_next

function
scr_anyface_next(arg0, arg1)
{ global.msgno++;
scr_anyface(arg0, global.msgno, arg1);
}
("susie", "2");
141
            msgnextloc(
Face 2* Or,Delay 11 maybe you just gotta play something cooler.Wait for inputClose Message
"\\E2* Or^1, maybe you just gotta play something cooler./%", "obj_dw_church_pianopuzzle_slash_Step_0_gml_163_0"
);
142
        }
143
        d_make();
144
    }
145
}
146
if (rhint == 3 && !d_ex())
147
{
148
    rhint = 999;
149
    if (global.flag[893] == 1)
150
        rhint = 0;
151
    global.facing = 0;
152
    global.interact = 0;
153
    ralsei.fun = false;
154
    susie.fun = false;
155
}