Deltarune (Chapter 4) script viewer

← back to main script listing

gml_Object_obj_dw_church_bookshelfpuzzle_Create_0

(view raw script w/o annotations or w/e)
1
var revroom = false;
2
layer_set_visible("debug_assets", 0);
3
global.flag[7 disable_menu?] = 0;
4
var p = [];
5
var s = [];
6
var spritesArray = layer_get_all_elements("debug_assets");
7
for (var i = 0; i < array_length(spritesArray); i++)
8
{
9
    if (layer_sprite_get_sprite(spritesArray[i]) == 1278)
10
        p[0] = scr_assetgetinfo(spritesArray[i]);
11
    if (layer_sprite_get_sprite(spritesArray[i]) == 5436)
12
        p[1] = scr_assetgetinfo(spritesArray[i]);
13
    if (layer_sprite_get_sprite(spritesArray[i]) == 2301)
14
        p[2] = scr_assetgetinfo(spritesArray[i]);
15
    if (layer_sprite_get_sprite(spritesArray[i]) == 4969)
16
        s[0] = scr_assetgetinfo(spritesArray[i]);
17
    if (layer_sprite_get_sprite(spritesArray[i]) == 4232)
18
        s[1] = scr_assetgetinfo(spritesArray[i]);
19
    if (layer_sprite_get_sprite(spritesArray[i]) == 2267)
20
        s[2] = scr_assetgetinfo(spritesArray[i]);
21
}
22
var shelfpos = [];
23
shelfpos[0] = [0, 0, 1120, 1120];
24
shelfpos[1] = [0, 0, 640, 720];
25
shelfpos[2] = [0, 0, 1200, 520];
26
if (array_length(s) > 0)
27
{
28
    revroom = true;
29
    shelfpos[0] = s[0];
30
    shelfpos[1] = s[1];
31
    shelfpos[2] = s[2];
32
}
33
shelf1 = instance_create(shelfpos[0][2], shelfpos[0][3], obj_bookshelf_moveable2x2);
34
piano1 = instance_create(p[0][2], p[0][3], obj_dw_church_remote_piano);
35
piano1.myshelf[0] = shelf1;
36
piano1.sprite_index = spr_dw_church_remotepiano_blue;
37
piano1.extflag = "bluepiano";
38
shelf1.sprite_index = spr_dw_church_2x2shelf_blue;
39
shelf1.xflag = 876;
40
shelf1.yflag = 877;
41
shelf2 = instance_create(shelfpos[1][2], shelfpos[1][3], obj_bookshelf_moveable2x2);
42
piano2 = instance_create(p[1][2], p[1][3], obj_dw_church_remote_piano);
43
piano2.myshelf[0] = shelf2;
44
piano2.sprite_index = spr_dw_church_remotepiano_red;
45
shelf2.sprite_index = spr_dw_church_2x2shelf_red;
46
shelf2.xflag = 878;
47
shelf2.yflag = 879;
48
piano2.extflag = "redpiano";
49
shelf3 = instance_create(shelfpos[2][2], shelfpos[2][3], obj_bookshelf_moveable2x2);
50
piano3 = instance_create(p[2][2], p[2][3], obj_dw_church_remote_piano);
51
piano3.myshelf[0] = shelf3;
52
piano3.sprite_index = spr_dw_church_remotepiano_green;
53
shelf3.sprite_index = spr_dw_church_2x2shelf_green;
54
shelf3.xflag = 880;
55
shelf3.yflag = 881;
56
piano3.extflag = "greenpiano";
57
if (array_length(s) > 0)
58
{
59
    with (obj_dw_church_remote_piano)
60
    {
61
        var myblock = instance_create(x + 12, y + 44, obj_solid_temp);
62
        myblock.extflag = "FLOOR2";
63
        
scr_size
scr_size

function
scr_size(arg0 = image_xscale, arg1 = image_yscale, arg2 = id)
{ with (arg2) { image_xscale = arg0; image_yscale = arg1; } }
(1.65, 0.6, myblock);
64
        var krmark = instance_create(x + 26, y + 20, obj_krmarker);
65
        krmark.extflag = extflag;
66
    }
67
}
68
scr_depth
scr_depth

function
scr_depth(arg0 = id, arg1 = 0)
{ with (arg0) depth = 100000 - ((y * 10) + (sprite_height * 10) + (arg1 * 10)); }
(piano1, 2000);
69
scr_depth
scr_depth

function
scr_depth(arg0 = id, arg1 = 0)
{ with (arg0) depth = 100000 - ((y * 10) + (sprite_height * 10) + (arg1 * 10)); }
(piano2, 2000);
70
scr_depth
scr_depth

function
scr_depth(arg0 = id, arg1 = 0)
{ with (arg0) depth = 100000 - ((y * 10) + (sprite_height * 10) + (arg1 * 10)); }
(piano3, 2000);
71
wasactive = 0;
72
shelvesinit = 0;
73
sprite_array_size = -1;
74
layersprite = [];
75
treasuremarker = instance_create(924, 872, obj_trigger_interact);
76
instance_create(x, y, obj_tutorial_text);
77
if (
scr_debug
scr_debug

function
scr_debug()
{ if (global.debug == 1) return 1; }
())
78
{
79
    if (keyboard_check(ord("P")))
80
    {
81
        global.flag[876] = 0;
82
        global.flag[877] = 0;
83
        global.flag[878] = 0;
84
        global.flag[879] = 0;
85
        global.flag[880] = 0;
86
        global.flag[881] = 0;
87
        if (global.flag[710] >= 2)
88
            global.flag[710] = 0;
89
        else
90
            global.flag[710] = 2;
91
        var text = "Saw Ralsei's Room";
92
        if (global.flag[710] < 2)
93
            text = "Did not see Ralsei's Room";
94
        debug_print(text);
95
    }
96
}
97
telescope = -4;
98
telecon = 0;
99
drawspotlight = false;
100
teletimer = 0;
101
if (revroom)
102
{
103
    for (var i = 0; i < array_length(spritesArray); i++)
104
    {
105
        if (layer_sprite_get_sprite(spritesArray[i]) == 783)
106
        {
107
            if (layer_sprite_get_blend(spritesArray[i]) == 16056319)
108
            {
109
                var trpos = scr_assetgetinfo(spritesArray[i]);
110
                setxy(trpos[2], trpos[3], treasuremarker);
111
            }
112
        }
113
        if (layer_sprite_get_sprite(spritesArray[i]) == 3352)
114
        {
115
            telescope = scr_makenpc_fromasset(spritesArray[i]);
116
            with (telescope)
117
            {
118
                issolid = false;
119
                marker.depth -= 10000;
120
            }
121
        }
122
    }
123
}
124
flooractive = 1;
125
init = 0;
126
tele_scon = 0;
127
tele_ssaw = false;
128
tele_stimer = 0;
129
tele_rcon = 0;
130
tele_rtimer = 0;
131
tele_rsaw = false;
132
s_remsprite = -4;
133
r_remsprite = -4;