Deltarune (Chapter 2) script viewer

← back to main script listing

gml_Object_obj_ch2_room_mansion_entrance_Create_0

(view raw script w/o annotations or w/e)
1
southcon = 0;
2
weird = false;
3
con = 0;
4
if (global.flag[915 snowgrave_plot] == 7 && global.flag[916 snowgrave_fail] == 0)
5
{
6
    global.flag[346 solved_saucer_shortcut] = 1;
7
    global.flag[340 found_shortcut_out] = 1;
8
    weird = true;
9
    scr_losechar
scr_losechar

function scr_losechar() { global.char[2] = 0; global.char[1] = 0; with (obj_darkcontroller) { chartotal = 0; havechar[0] = 0; havechar[1] = 0; havechar[2] = 0; havechar[3] = 0; for (i = 0; i < 3; i += 1) { global.faceaction[i] = 0; if (global.char[i] != 0) chartotal += 1; if (global.char[i] == 1) { havechar[0] = 1; charpos[0] = i; } if (global.char[i] == 2) { havechar[1] = 1; charpos[1] = i; } if (global.char[i] == 3) { havechar[2] = 1; charpos[2] = i; } if (global.char[i] == 4) { havechar[3] = 1; charpos[3] = i; } } } global.submenu = 0; global.charselect = -1; for (i = 0; i < 36; i += 1) global.submenucoord[i] = 0; }
();
10
    scr_getchar
scr_getchar

function scr_getchar(arg0) { getchar = 0; if (global.char[0] == 0) { global.char[0] = arg0; getchar = 1; } if (global.char[1] == 0 && getchar == 0) { global.char[1] = arg0; getchar = 1; } if (global.char[2] == 0 && getchar == 0) { global.char[2] = arg0; getchar = 1; } with (obj_darkcontroller) { chartotal = 0; havechar[0] = 0; havechar[1] = 0; havechar[2] = 0; havechar[3] = 0; for (i = 0; i < 3; i += 1) { global.faceaction[i] = 0; if (global.char[i] != 0) chartotal += 1; if (global.char[i] == 1) { havechar[0] = 1; charpos[0] = i; } if (global.char[i] == 2) { havechar[1] = 1; charpos[1] = i; } if (global.char[i] == 3) { havechar[2] = 1; charpos[2] = i; } if (global.char[i] == 4) { havechar[3] = 1; charpos[3] = i; } } } }
(2);
11
    scr_getchar
scr_getchar

function scr_getchar(arg0) { getchar = 0; if (global.char[0] == 0) { global.char[0] = arg0; getchar = 1; } if (global.char[1] == 0 && getchar == 0) { global.char[1] = arg0; getchar = 1; } if (global.char[2] == 0 && getchar == 0) { global.char[2] = arg0; getchar = 1; } with (obj_darkcontroller) { chartotal = 0; havechar[0] = 0; havechar[1] = 0; havechar[2] = 0; havechar[3] = 0; for (i = 0; i < 3; i += 1) { global.faceaction[i] = 0; if (global.char[i] != 0) chartotal += 1; if (global.char[i] == 1) { havechar[0] = 1; charpos[0] = i; } if (global.char[i] == 2) { havechar[1] = 1; charpos[1] = i; } if (global.char[i] == 3) { havechar[2] = 1; charpos[2] = i; } if (global.char[i] == 4) { havechar[3] = 1; charpos[3] = i; } } } }
(3);
12
    with (obj_caterpillarchara)
13
        instance_destroy();
14
    obj_mainchara.x = 440;
15
    obj_mainchara.y = 690;
16
    scr_makecaterpillar
scr_makecaterpillar

function scr_makecaterpillar(arg0, arg1, arg2, arg3) { global.cinstance[arg3] = instance_create(arg0, arg1, obj_caterpillarchara); global.cinstance[arg3].target = 12 + (arg3 * 12); if (arg2 == 3) { with (global.cinstance[arg3]) { usprite = spr_ralseiu; dsprite = spr_ralseid; rsprite = spr_ralseir; lsprite = spr_ralseil; if (global.chapter >= 2) { name = "ralsei"; usprite = spr_ralsei_walk_up; dsprite = spr_ralsei_walk_down; rsprite = spr_ralsei_walk_right; lsprite = spr_ralsei_walk_left; } } } if (arg2 == 4) { with (global.cinstance[arg3]) { name = "noelle"; usprite = spr_noelle_walk_up_dw; dsprite = spr_noelle_walk_down_dw; rsprite = spr_noelle_walk_right_dw; lsprite = spr_noelle_walk_left_dw; if (global.chapter == 2 && global.plot == 95) { dsprite = spr_noelle_walk_down_blush_dw; rsprite = spr_noelle_walk_right_blush_dw; lsprite = spr_noelle_walk_left_blush_dw; } } } if (arg2 == 5) { with (global.cinstance[arg3]) { name = "berdly"; usprite = spr_berdly_walk_up_dw; dsprite = spr_berdly_walk_down_dw; rsprite = spr_berdly_walk_right_dw; lsprite = spr_berdly_walk_left_dw; } } if (arg2 == 6) { with (global.cinstance[arg3]) { name = "starwalker"; usprite = spr_npc_originalstarwalker; dsprite = spr_npc_originalstarwalker; rsprite = spr_npc_originalstarwalker; lsprite = spr_npc_originalstarwalker; } } return global.cinstance[arg3]; }
(obj_mainchara.x - 6, (obj_mainchara.y + 10) - 2, 2, 0);
17
    scr_makecaterpillar
scr_makecaterpillar

function scr_makecaterpillar(arg0, arg1, arg2, arg3) { global.cinstance[arg3] = instance_create(arg0, arg1, obj_caterpillarchara); global.cinstance[arg3].target = 12 + (arg3 * 12); if (arg2 == 3) { with (global.cinstance[arg3]) { usprite = spr_ralseiu; dsprite = spr_ralseid; rsprite = spr_ralseir; lsprite = spr_ralseil; if (global.chapter >= 2) { name = "ralsei"; usprite = spr_ralsei_walk_up; dsprite = spr_ralsei_walk_down; rsprite = spr_ralsei_walk_right; lsprite = spr_ralsei_walk_left; } } } if (arg2 == 4) { with (global.cinstance[arg3]) { name = "noelle"; usprite = spr_noelle_walk_up_dw; dsprite = spr_noelle_walk_down_dw; rsprite = spr_noelle_walk_right_dw; lsprite = spr_noelle_walk_left_dw; if (global.chapter == 2 && global.plot == 95) { dsprite = spr_noelle_walk_down_blush_dw; rsprite = spr_noelle_walk_right_blush_dw; lsprite = spr_noelle_walk_left_blush_dw; } } } if (arg2 == 5) { with (global.cinstance[arg3]) { name = "berdly"; usprite = spr_berdly_walk_up_dw; dsprite = spr_berdly_walk_down_dw; rsprite = spr_berdly_walk_right_dw; lsprite = spr_berdly_walk_left_dw; } } if (arg2 == 6) { with (global.cinstance[arg3]) { name = "starwalker"; usprite = spr_npc_originalstarwalker; dsprite = spr_npc_originalstarwalker; rsprite = spr_npc_originalstarwalker; lsprite = spr_npc_originalstarwalker; } } return global.cinstance[arg3]; }
(obj_mainchara.x - 2, obj_mainchara.y + 20 + 2, 3, 1);
18
    with (obj_caterpillarchara)
19
        scr_caterpillar_interpolate
scr_caterpillar_interpolate

function scr_caterpillar_interpolate() { _newfacing = scr_facing_letter_to_number(scr_get_cardinal_direction(point_direction(x, y, obj_mainchara.x, obj_mainchara.y))); remx[0] = obj_mainchara.x; remy[0] = obj_mainchara.y; facing[0] = _newfacing; for (_iaia = target; _iaia > 0; _iaia -= 1) { remx[_iaia] = lerp(obj_mainchara.x, x, _iaia / target); if (global.darkzone == 1) remy[_iaia] = lerp(obj_mainchara.y, y + 16, _iaia / target); else remy[_iaia] = lerp(obj_mainchara.y, y + 6, _iaia / target); facing[_iaia] = _newfacing; } }
();
20
    scr_fadein
scr_fadein

function scr_fadein(arg0) { __fadeouter = instance_create(0, 0, obj_fadein); __fadeouter.fadespeed = -1 / arg0; __fadeouter.depth = 3; return __fadeouter; }
(30);
21
}
22
if (global.chapter != 2)
23
{
24
    instance_destroy();
25
}
26
else if (global.flag[340 found_shortcut_out] == 1)
27
{
28
    layer_set_visible("TILES_Secret", false);
29
}
30
else
31
{
32
    southcollider = instance_create(839, 720, obj_solidblock);
33
    southcollider.image_xscale = 4;
34
    southcollider.image_yscale = 4;
35
}
36
if (global.flag[346 solved_saucer_shortcut] == 0)
37
{
38
    bookcase_left = instance_create(616, 400, obj_npc_sign);
39
    bookcase_left.sprite_index = spr_dw_mansion_bookcase;
40
    bookcase_left.depth = 899999;
41
}
42
if (global.plot < 160)
43
{
44
    bookcase_right = instance_create(737, 400, obj_npc_sign);
45
    bookcase_right.sprite_index = spr_dw_mansion_bookcase;
46
    bookcase_right.depth = 899999;
47
}
48
if (global.flag[418 got_shoe] == 0)
49
{
50
    global.flag[418 got_shoe] = 1;
51
    scr_tempsave
scr_tempsave

function scr_tempsave() { filechoicebk2 = global.filechoice; global.filechoice = 9; scr_saveprocess(global.filechoice); global.filechoice = filechoicebk2; }
();
52
}