Deltarune (Chapter 4) script viewer

← back to main script listing

gml_Object_obj_ch4_PDC01B_Step_0

(view raw script w/o annotations or w/e)
1
if (skip_intro)
2
{
3
    if (global.interact == 0)
4
        global.interact = 1;
5
    if (skip_intro_con == 0 && !d_ex())
6
    {
7
        skip_intro_con = 1;
8
        scr_delay_var("skip_intro_con", 2, 15);
9
        blackall = 
scr_dark_marker
scr_dark_marker

function
scr_dark_marker(arg0, arg1, arg2)
{ thismarker = instance_create(arg0, arg1, obj_marker); with (thismarker) { sprite_index = arg2; image_speed = 0; image_xscale = 2; image_yscale = 2; } return thismarker; }
(-10, -10, spr_pixel_white);
10
        blackall.image_xscale = 999;
11
        blackall.image_yscale = 999;
12
        blackall.depth = 100;
13
        blackall.image_blend = c_black;
14
        blackall.image_alpha = 0;
15
        blackall.visible = 1;
16
        with (blackall)
17
            
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; }
("image_alpha", 0, 1, 60);
18
        mus_fade(global.currentsong[1], 60);
19
    }
20
    if (skip_intro_con == 2)
21
    {
22
        skip_intro_con = 3;
23
        
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; ...
("no_name");
24
        msgsetloc(0, 
* (Just looking at the chair,Delay 11 your eyes began to close...)Wait for inputClose Message
"* (Just looking at the chair^1, your eyes began to close...)/%", "obj_ch4_PDC01B_slash_Step_0_gml_34_0"
);
25
        d_make();
26
    }
27
    if (skip_intro_con == 3 && !d_ex() && blackall.image_alpha == 1)
28
    {
29
        skip_intro_con = 4;
30
        scr_delay_var("skip_intro_con", 5, 60);
31
    }
32
    if (skip_intro_con == 5)
33
    {
34
        skip_intro_con = -1;
35
        
scr_flag_set
scr_flag_set

function
scr_flag_set(arg0, arg1)
{ global.flag[arg0] = arg1; if (
scr_debug())
show_debug_message("*** flag [" + string(arg0) + "] updated: " + string(arg1) + " | " + scr_flag_name_get(arg0)); } function scr_setflag(arg0, arg1) {
scr_flag_set(arg0, arg1);
}
(1628, 1);
36
        global.plot = 105;
37
        snd_free_all();
38
        
scr_become_dark
scr_become_dark

function
scr_become_dark()
{ global.darkzone = 1; scr_equip_dw_weapon_by_lw_id(global.lweapon); for (var i = 0; i < 8; i++) { var weapon = get_weapon_by_lw_id(global.litem[i]); if (weapon != -4) { if (!
scr_weaponcheck_inventory(weapon.dw_id) && !
scr_weaponcheck_equipped_any(weapon.dw_id))
scr_weaponget(weapon.dw_id);
} } global.hp[1] = ceil((global.lhp / global.lmaxhp) * global.maxhp[1]); if (global.hp[1] < 1) global.hp[1] = 1; if (global.hp[1] > global.maxhp[1]) global.hp[1] = global.maxhp[1]; }
();
39
        room_goto(room_dw_church_intro1);
40
    }
41
}
42
if (con < 0)
43
    exit;
44
if (con == 0)
45
{
46
    con = 1;
47
    alarm[0]
 = 1;
gml_Object_obj_ch4_PDC01B_Alarm_0.gml

con++;
48
    global.interact = 1;
49
    global.facing = 0;
50
    kris_marker = 
scr_marker
scr_marker

function
scr_marker(arg0, arg1, arg2)
{ thismarker = instance_create(arg0, arg1, obj_marker); with (thismarker) { sprite_index = arg2; image_speed = 0; } return thismarker; }
(525, 108, spr_kris_chair_sleep);
51
    kris_marker.depth = 80000;
52
    toriel_marker = 
scr_marker
scr_marker

function
scr_marker(arg0, arg1, arg2)
{ thismarker = instance_create(arg0, arg1, obj_marker); with (thismarker) { sprite_index = arg2; image_speed = 0; } return thismarker; }
(560, 109, spr_toriel_plate_left);
53
    toriel_marker.depth = kris_marker.depth - 10;
54
    blanket_marker = 
scr_marker
scr_marker

function
scr_marker(arg0, arg1, arg2)
{ thismarker = instance_create(arg0, arg1, obj_marker); with (thismarker) { sprite_index = arg2; image_speed = 0; } return thismarker; }
(520, 120, spr_kris_chair_sleep_blanket_fly);
55
    blanket_marker.visible = 0;
56
}
57
if (con == 2)
58
{
59
    con = 3;
60
    obj_mainchara.y = -40;
61
    cutscene_master = 
scr_cutscene_make
scr_cutscene_make

function
scr_cutscene_make()
{ _cutscene_master = instance_create(0, 0, obj_cutscene_master); _cutscene_master.master_object = id; return _cutscene_master; }
();
62
    
scr_maincharacters_actors
scr_maincharacters_actors

function
scr_maincharacters_actors()
{ actor_count = 0; kr = 0; kr_actor = instance_create(obj_mainchara.x, obj_mainchara.y, obj_actor);
scr_actor_setup(kr, kr_actor, "kris");
kr_actor.sprite_index = obj_mainchara.sprite_index; kr_actor.depth = obj_mainchara.depth; with (obj_mainchara) visible = 0; for (__jj = 0; __jj < array_length_1d(global.cinstance); __jj++) { if (i_ex(global.cinstance[__jj])) { if (global.cinstance[__jj].name == "susie") { actor_count++; su = __jj + 1; su_actor = instance_create(global.cinstance[__jj].x, global.cinstance[__jj].y, obj_actor);
scr_actor_setup(su, su_actor, "susie");
su_actor.sprite_index = global.cinstance[__jj].sprite_index; su_actor.depth = global.cinstance[__jj].depth; with (global.cinstance[__jj]) visible = 0; } if (global.cinstance[__jj].name == "ralsei") { actor_count++; ra = __jj + 1; ra_actor = instance_create(global.cinstance[__jj].x, global.cinstance[__jj].y, obj_actor);
scr_actor_setup(ra, ra_actor, "ralsei");
ra_actor.sprite_index = global.cinstance[__jj].sprite_index; ra_actor.depth = global.cinstance[__jj].depth; with (global.cinstance[__jj]) visible = 0; } if (global.cinstance[__jj].name == "noelle") { actor_count++; no = __jj + 1; no_actor = instance_create(global.cinstance[__jj].x, global.cinstance[__jj].y, obj_actor);
scr_actor_setup(no, no_actor, "noelle");
no_actor.sprite_index = global.cinstance[__jj].sprite_index; no_actor.depth = global.cinstance[__jj].depth; with (global.cinstance[__jj]) visible = 0; } } } }
();
63
    to = actor_count + 1;
64
    to_actor = instance_create(560, 109, obj_actor);
65
    
scr_actor_setup
scr_actor_setup

function
scr_actor_setup(arg0, arg1, arg2)
{ _actorid = arg0; _actorinstance = arg1; _actorname = arg2; obj_cutscene_master.actor_id[_actorid] = _actorinstance; obj_cutscene_master.actor_name[_actorid] = _actorname; with (_actorinstance) { number = arg0;
scr_set_facing_sprites(arg2);
} }
(to, to_actor, "toriel");
66
    to_actor.sprite_index = spr_toriel_plate_left;
67
    
c_sel
c_sel

function
c_sel(arg0)
{
c_cmd("select", arg0, 0, 0, 0);
}
(to);
68
    
c_autodepth
c_autodepth

function
c_autodepth(arg0)
{
c_cmd("autodepth", arg0, 0, 0, 0);
}
(0);
69
    
c_depth
c_depth

function
c_depth(arg0)
{
c_cmd("depth", arg0, 0, 0, 0);
}
(toriel_marker.depth);
70
    
c_autowalk
c_autowalk

function
c_autowalk(arg0)
{
c_cmd("autowalk", arg0, 0, 0, 0);
}
(0);
71
    
c_sel
c_sel

function
c_sel(arg0)
{
c_cmd("select", arg0, 0, 0, 0);
}
(kr);
72
    
c_autodepth
c_autodepth

function
c_autodepth(arg0)
{
c_cmd("autodepth", arg0, 0, 0, 0);
}
(0);
73
    
c_depth
c_depth

function
c_depth(arg0)
{
c_cmd("depth", arg0, 0, 0, 0);
}
(kris_marker.depth);
74
    
c_sprite
c_sprite

function
c_sprite(arg0)
{
c_cmd("sprite", arg0, 0, 0, 0);
}
(spr_kris_chair_sleep);
75
    
c_setxy
c_setxy

function
c_setxy(arg0, arg1)
{
c_cmd("setxy", arg0, arg1, 0, 0);
}
(kris_marker.x, kris_marker.y);
76
    
c_var_instance
c_var_instance

function
c_var_instance(arg0, arg1, arg2)
{
c_cmd_x("var", arg0, arg1, arg2, 0, 0, 0);
}
(kris_marker, "visible", 0);
77
    
c_var_instance
c_var_instance

function
c_var_instance(arg0, arg1, arg2)
{
c_cmd_x("var", arg0, arg1, arg2, 0, 0, 0);
}
(toriel_marker, "visible", 0);
78
    
c_var_instance
c_var_instance

function
c_var_instance(arg0, arg1, arg2)
{
c_cmd_x("var", arg0, arg1, arg2, 0, 0, 0);
}
(id, "slow_writer", true);
79
    
c_msgside
c_msgside

function
c_msgside(arg0)
{
c_cmd("msgside", arg0, 0, 0, 0);
}
("top");
80
    
c_speaker
c_speaker

function
c_speaker(arg0)
{
c_cmd("speaker", arg0, 0, 0, 0);
}
("toriel");
81
    
c_msgsetloc
c_msgsetloc

function
c_msgsetloc(arg0, arg1, arg2)
{ var msg_index = arg0; var english = arg1; var localized_string_id = arg2; var str = english; if (!is_english()) str =
scr_84_get_lang_string(localized_string_id);
c_msgset(msg_index, str);
}
(0,
Face 0* Wake up!Wait for inputClose Message
"\\E0* Wake up!/%", "obj_ch4_PDC01B_slash_Step_0_gml_112_0"
);
82
    
c_talk_wait
c_talk_wait

function
c_talk_wait()
{
c_talk();
c_waittalk();
} function c_talkwait() {
c_talk_wait();
}
();
83
    
c_var_instance
c_var_instance

function
c_var_instance(arg0, arg1, arg2)
{
c_cmd_x("var", arg0, arg1, arg2, 0, 0, 0);
}
(id, "slow_writer", false);
84
    
c_sel
c_sel

function
c_sel(arg0)
{
c_cmd("select", arg0, 0, 0, 0);
}
(to);
85
    
c_halt
c_halt

function
c_halt()
{
c_cmd("halt", 0, 0, 0, 0);
}
();
86
    
c_sprite
c_sprite

function
c_sprite(arg0)
{
c_cmd("sprite", arg0, 0, 0, 0);
}
(spr_toriel_plate_left_ruffle);
87
    
c_imagespeed
c_imagespeed

function
c_imagespeed(arg0)
{
c_cmd("imagespeed", arg0, 0, 0, 0);
}
(0.2);
88
    
c_wait
c_wait

function
c_wait(arg0)
{
c_cmd("wait", arg0, 0, 0, 0);
}
(5);
89
    
c_speaker
c_speaker

function
c_speaker(arg0)
{
c_cmd("speaker", arg0, 0, 0, 0);
}
("toriel");
90
    
c_msgsetloc
c_msgsetloc

function
c_msgsetloc(arg0, arg1, arg2)
{ var msg_index = arg0; var english = arg1; var localized_string_id = arg2; var str = english; if (!is_english()) str =
scr_84_get_lang_string(localized_string_id);
c_msgset(msg_index, str);
}
(0,
Face 4* Good morning,Delay 11 sleepyhead!Delay 11 Breakfast is waiting!Wait for inputClose Message
"\\E4* Good morning^1, sleepyhead^1! Breakfast is waiting!/%", "obj_ch4_PDC01B_slash_Step_0_gml_124_0"
);
91
    
c_talk_wait
c_talk_wait

function
c_talk_wait()
{
c_talk();
c_waittalk();
} function c_talkwait() {
c_talk_wait();
}
();
92
    
c_halt
c_halt

function
c_halt()
{
c_cmd("halt", 0, 0, 0, 0);
}
();
93
    
c_sprite
c_sprite

function
c_sprite(arg0)
{
c_cmd("sprite", arg0, 0, 0, 0);
}
(spr_toriel_plate_left);
94
    
c_wait
c_wait

function
c_wait(arg0)
{
c_cmd("wait", arg0, 0, 0, 0);
}
(15);
95
    
c_sprite
c_sprite

function
c_sprite(arg0)
{
c_cmd("sprite", arg0, 0, 0, 0);
}
(spr_toriel_plate_down);
96
    
c_addxy
c_addxy

function
c_addxy(arg0, arg1)
{
c_cmd("addxy", arg0, arg1, 0, 0);
}
(4, 0);
97
    
c_imagespeed
c_imagespeed

function
c_imagespeed(arg0)
{
c_cmd("imagespeed", arg0, 0, 0, 0);
}
(0.2);
98
    
c_walkdirect_speed_wait
c_walkdirect_speed_wait

function
c_walkdirect_speed_wait(arg0, arg1, arg2)
{
c_cmd("walkdirect", arg0, arg1, -arg2, 1);
}
(564, 120, 1);
99
    
c_sprite
c_sprite

function
c_sprite(arg0)
{
c_cmd("sprite", arg0, 0, 0, 0);
}
(spr_toriel_plate_left);
100
    
c_walkdirect_speed_wait
c_walkdirect_speed_wait

function
c_walkdirect_speed_wait(arg0, arg1, arg2)
{
c_cmd("walkdirect", arg0, arg1, -arg2, 1);
}
(340, 120, 2);
101
    
c_wait
c_wait

function
c_wait(arg0)
{
c_cmd("wait", arg0, 0, 0, 0);
}
(15);
102
    
c_speaker
c_speaker

function
c_speaker(arg0)
{
c_cmd("speaker", arg0, 0, 0, 0);
}
("susie");
103
    
c_msgsetloc
c_msgsetloc

function
c_msgsetloc(arg0, arg1, arg2)
{ var msg_index = arg0; var english = arg1; var localized_string_id = arg2; var str = english; if (!is_english()) str =
scr_84_get_lang_string(localized_string_id);
c_msgset(msg_index, str);
}
(0,
Face 2* Kris!Delay 11 Hurry up or someone else'll eat it!Wait for inputClose Message
"\\E2* Kris^1! Hurry up or someone else'll eat it!/%", "obj_ch4_PDC01B_slash_Step_0_gml_140_0"
);
104
    
c_talk_wait
c_talk_wait

function
c_talk_wait()
{
c_talk();
c_waittalk();
} function c_talkwait() {
c_talk_wait();
}
();
105
    
c_wait
c_wait

function
c_wait(arg0)
{
c_cmd("wait", arg0, 0, 0, 0);
}
(15);
106
    
c_sel
c_sel

function
c_sel(arg0)
{
c_cmd("select", arg0, 0, 0, 0);
}
(to);
107
    
c_visible
c_visible

function
c_visible(arg0)
{
c_cmd("visible", arg0, 0, 0, 0);
}
(0);
108
    c_snd_play(snd_wing);
109
    
c_var_instance
c_var_instance

function
c_var_instance(arg0, arg1, arg2)
{
c_cmd_x("var", arg0, arg1, arg2, 0, 0, 0);
}
(id, "blanket_fly", true);
110
    
c_sel
c_sel

function
c_sel(arg0)
{
c_cmd("select", arg0, 0, 0, 0);
}
(kr);
111
    
c_autowalk
c_autowalk

function
c_autowalk(arg0)
{
c_cmd("autowalk", arg0, 0, 0, 0);
}
(1);
112
    
c_facing
c_facing

function
c_facing(arg0)
{
c_cmd("facing", arg0, 0, 0, 0);
}
("d");
113
    
c_setxy
c_setxy

function
c_setxy(arg0, arg1)
{
c_cmd("setxy", arg0, arg1, 0, 0);
}
(535, 106);
114
    
c_wait
c_wait

function
c_wait(arg0)
{
c_cmd("wait", arg0, 0, 0, 0);
}
(10);
115
    
c_walkdirect_speed_wait
c_walkdirect_speed_wait

function
c_walkdirect_speed_wait(arg0, arg1, arg2)
{
c_cmd("walkdirect", arg0, arg1, -arg2, 1);
}
(535, 135, 1);
116
    
c_walkdirect_wait
c_walkdirect_wait

function
c_walkdirect_wait(arg0, arg1, arg2)
{
c_walkdirect(arg0, arg1, arg2);
c_wait(arg2);
}
(488, 135, 30);
117
    
c_facing
c_facing

function
c_facing(arg0)
{
c_cmd("facing", arg0, 0, 0, 0);
}
("d");
118
    
c_var_instance
c_var_instance

function
c_var_instance(arg0, arg1, arg2)
{
c_cmd_x("var", arg0, arg1, arg2, 0, 0, 0);
}
(kris_marker, "sprite_index", spr_krisd);
119
    
c_var_instance
c_var_instance

function
c_var_instance(arg0, arg1, arg2)
{
c_cmd_x("var", arg0, arg1, arg2, 0, 0, 0);
}
(kris_marker, "x", 488);
120
    
c_var_instance
c_var_instance

function
c_var_instance(arg0, arg1, arg2)
{
c_cmd_x("var", arg0, arg1, arg2, 0, 0, 0);
}
(kris_marker, "y", 135);
121
    
c_var_instance
c_var_instance

function
c_var_instance(arg0, arg1, arg2)
{
c_cmd_x("var", arg0, arg1, arg2, 0, 0, 0);
}
(kris_marker, "visible", 1);
122
    
c_var_instance
c_var_instance

function
c_var_instance(arg0, arg1, arg2)
{
c_cmd_x("var", arg0, arg1, arg2, 0, 0, 0);
}
(id, "susie_sfx", true);
123
    
c_pannable
c_pannable

function
c_pannable(arg0)
{
c_cmd("pannable", arg0, 0, 0, 0);
}
(1);
124
    
c_panobj
c_panobj

function
c_panobj(arg0, arg1)
{
c_cmd("panobj", arg0, arg1, 0, 0);
}
(kr_actor, 30);
125
    
c_wait
c_wait

function
c_wait(arg0)
{
c_cmd("wait", arg0, 0, 0, 0);
}
(31);
126
    
c_pannable
c_pannable

function
c_pannable(arg0)
{
c_cmd("pannable", arg0, 0, 0, 0);
}
(0);
127
    
c_mus2
c_mus2

function
c_mus2(arg0, arg1, arg2)
{
c_cmd("mus", arg0, arg1, arg2, 0);
}
("initloop", "home.ogg", 0);
128
    
c_actortokris
c_actortokris

function
c_actortokris()
{
c_cmd("actortokris", 0, 0, 0, 0);
}
();
129
    
c_actortocaterpillar
c_actortocaterpillar

function
c_actortocaterpillar()
{
c_cmd("actortocaterpillar", 0, 0, 0, 0);
}
();
130
    
c_terminatekillactors
c_terminatekillactors

function
c_terminatekillactors()
{
c_cmd("terminatekillactors", 0, 0, 0, 0);
}
();
131
}
132
if (con == 3 && !i_ex(obj_cutscene_master))
133
{
134
    global.interact = 0;
135
    global.facing = 0;
136
    global.plot = 10;
137
    with (kris_marker)
138
        instance_destroy();
139
    blanket_marker.depth = 100000;
140
    if (can_sleep)
141
    {
142
        sparkle_marker = 
scr_marker
scr_marker

function
scr_marker(arg0, arg1, arg2)
{ thismarker = instance_create(arg0, arg1, obj_marker); with (thismarker) { sprite_index = arg2; image_speed = 0; } return thismarker; }
(545, 135, spr_shine_white);
143
        sparkle_marker.depth = blanket_marker.depth - 10;
144
        with (sparkle_marker)
145
            image_speed = 0.1;
146
        sparkle_readable = instance_create(sparkle_marker.x - 10, sparkle_marker.y - 10, obj_readable_room1);
147
        with (sparkle_readable)
148
            extflag = "skip_intro";
149
    }
150
    con = -1;
151
}
152
if (blanket_fly)
153
{
154
    blanket_fly_timer++;
155
    if (blanket_fly_timer == 1)
156
    {
157
        blanket_marker.depth = kr_actor.depth + 10;
158
        blanket_marker.sprite_index = spr_kris_chair_sleep_blanket_fly;
159
        blanket_marker.visible = 1;
160
        with (blanket_marker)
161
        {
162
            vspeed = -10;
163
            gravity = 1;
164
        }
165
    }
166
    if (blanket_fly_timer == 20)
167
    {
168
        with (blanket_marker)
169
        {
170
            vspeed = 0;
171
            gravity = 0;
172
            sprite_index = spr_torhouse_chair_blanket;
173
            x = 525;
174
            y = 108;
175
        }
176
        blanket_fly = false;
177
    }
178
}
179
if (slow_writer && i_ex(obj_writer))
180
{
181
    with (obj_writer)
182
    {
183
        rate = 4;
184
        skippable = 0;
185
    }
186
}
187
if (susie_sfx)
188
{
189
    susie_sfx = false;
190
    with (obj_ch4_PDC01C)
191
        susie_sfx = true;
192
}