Deltarune (Chapter 4) script viewer

← back to main script listing

gml_Object_obj_dw_gerson_study_Create_0

(view raw script w/o annotations or w/e)
1
layer_set_visible("DEBUG_ASSETS", 0);
2
con = -1;
3
convo_flag = "";
4
customcon = 0;
5
var bg_lights = instance_create(0, 0, obj_dw_gerson_study_lights);
6
bg_lights.depth = 5100;
7
var desk_marker = 
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; }
(366, 770, bg_dw_gerson_desk);
8
with (desk_marker)
9
    depth = 91640;
10
var chair_marker = 
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; }
(430, 740, bg_dw_gerson_chair);
11
chair_marker.depth = desk_marker.depth + 10;
12
table_active = false;
13
fountain_active = false;
14
var item_fountain_marker = 
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; }
(722, 196, spr_dw_gerson_fountain);
15
with (item_fountain_marker)
16
{
17
    image_speed = 0.2;
18
    
scr_depth
scr_depth

function
scr_depth(arg0 = id, arg1 = 0)
{ with (arg0) depth = 100000 - ((y * 10) + (sprite_height * 10) + (arg1 * 10)); }
();
19
}
20
var fountain_readable = instance_create(730, 207, obj_readable_room1);
21
with (fountain_readable)
22
{
23
    image_xscale = 4;
24
    image_yscale = 2;
25
    extflag = "item_fountain";
26
}
27
paper_marker = -4;
28
jack_look = false;
29
cute_active = false;
30
cute_timer = 0;
31
_blush = -4;
32
gerson_door = 
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; }
(400, 120, spr_dw_gerson_study_door);
33
with (gerson_door)
34
    depth = 100000;
35
if (
scr_flag_get
scr_flag_get

function
scr_flag_get(arg0)
{ var flag_value = global.flag[arg0]; return flag_value; } function scr_flag_name_get(arg0) { if (!global.is_console) { var v = global.flagname[arg0]; return is_undefined(v) ? "*unknown flag*" : v; } else { return ""; } } function scr_getflag(arg0) { return
scr_flag_get(arg0);
}
(847) > 0)
36
{
37
    gerson_door.image_index = 1;
38
}
39
else
40
{
41
    var door_block = instance_create(gerson_door.x, gerson_door.y + 120, obj_solidblocksized);
42
    with (door_block)
43
        image_xscale = 4;
44
    var door_readable = instance_create(door_block.x, door_block.y, obj_readable_room1);
45
    with (door_readable)
46
    {
47
        extflag = "central_door";
48
        image_xscale = 8;
49
        image_yscale = 2;
50
    }
51
}
52
if (global.plot >= 230)
53
{
54
    if (
scr_flag_get
scr_flag_get

function
scr_flag_get(arg0)
{ var flag_value = global.flag[arg0]; return flag_value; } function scr_flag_name_get(arg0) { if (!global.is_console) { var v = global.flagname[arg0]; return is_undefined(v) ? "*unknown flag*" : v; } else { return ""; } } function scr_getflag(arg0) { return
scr_flag_get(arg0);
}
(1642) == 1)
55
    {
56
        gerson_door.image_index = 0;
57
        var door_block = instance_create(gerson_door.x, gerson_door.y + 120, obj_solidblocksized);
58
        with (door_block)
59
            image_xscale = 4;
60
        var door_readable = instance_create(door_block.x, door_block.y, obj_readable_room1);
61
        with (door_readable)
62
        {
63
            extflag = "central_door_dog";
64
            image_xscale = 8;
65
            image_yscale = 2;
66
        }
67
    }
68
}
69
gerson_npc = instance_create(446, 750, obj_npc_gerson);
70
with (gerson_npc)
71
{
72
    current_state = 17;
73
    
scr_depth
scr_depth

function
scr_depth(arg0 = id, arg1 = 0)
{ with (arg0) depth = 100000 - ((y * 10) + (sprite_height * 10) + (arg1 * 10)); }
();
74
}
75
gerson_npc.depth = desk_marker.depth - 10;
76
paper_marker = 
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; }
(gerson_npc.x - 4, gerson_npc.y + 50, spr_gerson_writing_paper);
77
paper_marker.depth = gerson_npc.depth + 4;
78
sparkle_marker = -4;
79
if (global.plot >= 242)
80
{
81
    with (gerson_npc)
82
        instance_destroy();
83
    with (paper_marker)
84
        instance_destroy();
85
}
86
87
show_fireplace = function()
88
{
89
    var fireplace_marker = 
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; }
(414, 616, spr_dw_gerson_study_fireplace);
90
    with (fireplace_marker)
91
    {
92
        depth = 999990;
93
        image_speed = 0.2;
94
    }
95
    fireplace_block = instance_create(400, 640, obj_solidblocksized);
96
    with (fireplace_block)
97
        image_xscale = 4;
98
    plaque_marker = 
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; }
(444, 570, spr_dw_gerson_study_plaque);
99
    with (plaque_marker)
100
        
scr_depth
scr_depth

function
scr_depth(arg0 = id, arg1 = 0)
{ with (arg0) depth = 100000 - ((y * 10) + (sprite_height * 10) + (arg1 * 10)); }
();
101
    var plaque_readable = instance_create(plaque_marker.x, plaque_marker.y + 20, obj_readable_room1);
102
    with (plaque_readable)
103
    {
104
        image_xscale = 4;
105
        image_yscale = 4;
106
        extflag = "plaque";
107
    }
108
    if (
scr_flag_get
scr_flag_get

function
scr_flag_get(arg0)
{ var flag_value = global.flag[arg0]; return flag_value; } function scr_flag_name_get(arg0) { if (!global.is_console) { var v = global.flagname[arg0]; return is_undefined(v) ? "*unknown flag*" : v; } else { return ""; } } function scr_getflag(arg0) { return
scr_flag_get(arg0);
}
(1548) == 0)
109
    {
110
        sparkle_marker = 
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; }
(plaque_marker.x + 34, plaque_marker.y + 20, spr_shine_white);
111
        sparkle_marker.depth = plaque_marker.depth - 10;
112
        with (sparkle_marker)
113
            image_speed = 0.1;
114
    }
115
    if (global.plot >= 242)
116
    {
117
        with (plaque_readable)
118
            instance_destroy();
119
        with (sparkle_marker)
120
            instance_destroy();
121
    }
122
};
123
124
hide_fireplace = function()
125
{
126
    var fireplace_marker = 
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; }
(280, 520, spr_dw_gerson_study_fireplace_empty);
127
    with (fireplace_marker)
128
        depth = 999990;
129
    plaque_marker = 
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; }
(444, 522, spr_dw_gerson_study_plaque);
130
    with (plaque_marker)
131
        
scr_depth
scr_depth

function
scr_depth(arg0 = id, arg1 = 0)
{ with (arg0) depth = 100000 - ((y * 10) + (sprite_height * 10) + (arg1 * 10)); }
();
132
};
133
134
hide_sparkle = function()
135
{
136
    if (sparkle_marker == -4)
137
        exit;
138
    with (sparkle_marker)
139
        instance_destroy();
140
};
141
142
if (
scr_flag_get
scr_flag_get

function
scr_flag_get(arg0)
{ var flag_value = global.flag[arg0]; return flag_value; } function scr_flag_name_get(arg0) { if (!global.is_console) { var v = global.flagname[arg0]; return is_undefined(v) ? "*unknown flag*" : v; } else { return ""; } } function scr_getflag(arg0) { return
scr_flag_get(arg0);
}
(1547) == 0 || global.plot >= 242)
143
    show_fireplace();
144
else
145
    hide_fireplace();
146
if (
scr_flag_get
scr_flag_get

function
scr_flag_get(arg0)
{ var flag_value = global.flag[arg0]; return flag_value; } function scr_flag_name_get(arg0) { if (!global.is_console) { var v = global.flagname[arg0]; return is_undefined(v) ? "*unknown flag*" : v; } else { return ""; } } function scr_getflag(arg0) { return
scr_flag_get(arg0);
}
(850) >= 3)
147
{
148
    if (global.plot < 242)
149
    {
150
        jack_marker = 
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; }
(600, 724, spr_npc_jackenstein_cleaning);
151
        with (jack_marker)
152
        {
153
            sprite_index = spr_npc_jackenstein_cleaning;
154
            image_speed = 0.2;
155
            depth = 91430;
156
        }
157
        var jack_readable = instance_create(jack_marker.x + 15, jack_marker.y + 130, obj_readable_room1);
158
        with (jack_readable)
159
        {
160
            extflag = "jackenstein";
161
            image_xscale = 8;
162
            image_yscale = 1;
163
        }
164
        var jack_solid_bottom = instance_create(jack_marker.x + 15, jack_marker.y + 90, obj_solidblockDark);
165
        with (jack_solid_bottom)
166
        {
167
            image_xscale = 4;
168
            image_yscale = 2;
169
        }
170
        var jack_solid_broom = instance_create(jack_marker.x + 50, jack_marker.y + 140, obj_solidblockDark);
171
        with (jack_solid_broom)
172
            image_yscale = 1.2;
173
    }
174
}
175
else
176
{
177
    var statue_right = 
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; }
(690, 758, bg_dw_gerson_statue_right);
178
    with (statue_right)
179
        
scr_depth
scr_depth

function
scr_depth(arg0 = id, arg1 = 0)
{ with (arg0) depth = 100000 - ((y * 10) + (sprite_height * 10) + (arg1 * 10)); }
();
180
    var statue_block = instance_create(722, 800, obj_solidblockDark);
181
    with (statue_block)
182
    {
183
        image_xscale = 1.95;
184
        image_yscale = 2.7;
185
    }
186
}
187
fireplace_grow_marker = -4;
188
if (global.tempflag[90] == 400)
189
{
190
    con = 100;
191
    hide_sparkle();
192
    fireplace_grow_marker = 
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; }
(280, 520, spr_dw_gerson_study_fireplace_grow);
193
    fireplace_grow_marker.visible = 0;
194
    fireplace_grow_marker.depth = 100000;
195
    plaque_marker.depth = fireplace_grow_marker.depth - 10;
196
    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);
197
    blackall.image_xscale = 999;
198
    blackall.image_yscale = 999;
199
    blackall.depth = 100;
200
    blackall.image_alpha = 1;
201
    blackall.image_blend = c_black;
202
}
203
if (global.tempflag[94] == 1)
204
{
205
    con = 200;
206
    gerson_door = 
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; }
(400, 120, spr_dw_gerson_study_door);
207
    gerson_door.image_index = 0;
208
    with (gerson_door)
209
        depth = 90000;
210
    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);
211
    blackall.image_xscale = 999;
212
    blackall.image_yscale = 999;
213
    blackall.depth = 100;
214
    blackall.image_alpha = 1;
215
    blackall.image_blend = c_black;
216
}
217
218
answer_choice = function(arg0, arg1)
219
{
220
    switch (arg0)
221
    {
222
        case 1424:
223
            if (arg1 == 0)
224
                con = 10;
225
            break;
226
    }
227
};
228
229
show_convo = function(arg0)
230
{
231
    convo_flag = arg0;
232
    con = 20;
233
};
234
235
greenflame = -4;
236
cup = -4;
237
if (global.plot >= 242)
238
{
239
    
scr_script_delayed
scr_script_delayed

function
scr_script_delayed()
{ var __scriptdelay = instance_create(0, 0, obj_script_delayed); __scriptdelay.script = argument[0]; __scriptdelay.alarm[0] = argument[1]; __scriptdelay.target = id; for (var __i = 0; __i < (argument_count - 2); __i++) __scriptdelay.script_arg[__i] = argument[__i + 2]; __scriptdelay.arg_count = argument_count - 2; return __scriptdelay; }
(event_user, 1, 9);
240
    var spritesArray = layer_get_all_elements("DEBUG_ASSETS");
241
    for (var i = 0; i < array_length(spritesArray); i++)
242
    {
243
        if (layer_sprite_get_sprite(spritesArray[i]) == 5585)
244
            cup = scr_makenpc_fromasset(spritesArray[i]);
245
        if (!i_ex(fireplace_grow_marker))
246
        {
247
            fireplace_grow_marker = 
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; }
(280, 520, spr_dw_gerson_study_fireplace_grow);
248
            fireplace_grow_marker.visible = true;
249
            fireplace_grow_marker.depth = 100000;
250
            fireplace_grow_marker.image_index = 2;
251
        }
252
        if (i_ex(plaque_marker))
253
            plaque_marker.x = room_width * 4;
254
    }
255
}
256
hammerTreasure = -4;
257
if (global.flag[1688] == 2)
258
{
259
    var chest = findspriteinfo(spr_treasurebox, "DEBUG_ASSETS");
260
    hammerTreasure = instance_create(chest.x, chest.y, obj_treasure_room);
261
    with (hammerTreasure)
262
    {
263
        
scr_darksize
scr_darksize

function
scr_darksize()
{ var inst = id; if (argument_count) inst = argument0; inst.image_xscale = 2; inst.image_yscale = 2; }
();
264
        itemflag = 1688;
265
        itemtype = "weapon";
266
        itemidchest = 52;
267
        depth = 92750;
268
        shine = 
scr_marker_ext
scr_marker_ext

function
scr_marker_ext(arg0, arg1, arg2, arg3 = 1, arg4 = 1, arg5 = 0, arg6 = 0, arg7 = 16777215, arg8 = depth, arg9 = false, arg10 = -1, arg11 = 1)
{ var thismarker = instance_create(arg0, arg1, obj_marker); with (thismarker) { depth = arg8; sprite_index = arg2; image_speed = arg5; image_xscale = arg3; image_yscale = arg4; image_index = arg6; image_blend = arg7; image_alpha = arg11; if (arg9)
scr_depth_alt();
} if (arg10 > 0)
scr_doom(thismarker, arg10);
return thismarker; } function scr_marker_fromasset(arg0, arg1 = depth, arg2 = false) { if (is_undefined(arg0)) { debug_message("Warning: scr_marker_fromasset() sprite_instance didn't exist"); return -4; } var sprite = layer_sprite_get_sprite(arg0); var index = layer_sprite_get_index(arg0); var imagespeed = layer_sprite_get_speed(arg0); var xscale = layer_sprite_get_xscale(arg0); var yscale = layer_sprite_get_yscale(arg0); var angle = layer_sprite_get_angle(arg0); var blend = layer_sprite_get_blend(arg0); var alpha = layer_sprite_get_alpha(arg0); var xloc = layer_sprite_get_x(arg0); var yloc = layer_sprite_get_y(arg0); var thismarker = instance_create_depth(xloc, yloc, arg1, obj_marker); with (thismarker) { sprite_index = sprite; image_index = index; image_speed = imagespeed; image_xscale = xscale; image_yscale = yscale; image_angle = angle; image_blend = blend; image_alpha = alpha; if (arg2)
scr_depth_alt(id, arg2);
} return thismarker; } function scr_assetgetinfo(arg0) { var sprite = layer_sprite_get_sprite(arg0); var index = layer_sprite_get_index(arg0); var xloc = layer_sprite_get_x(arg0); var yloc = layer_sprite_get_y(arg0); var xscale = layer_sprite_get_xscale(arg0); var yscale = layer_sprite_get_yscale(arg0); var angle = layer_sprite_get_angle(arg0); var blend = layer_sprite_get_blend(arg0); var alpha = layer_sprite_get_alpha(arg0); var imagespeed = layer_sprite_get_speed(arg0); return [sprite, index, xloc, yloc, xscale, yscale, angle, blend, alpha, imagespeed]; }
(x + 14, y + 18, spr_shine_white, 2, 2, 0.125, undefined, undefined, depth - 5);
269
        siner = 0;
270
    }
271
}