Deltarune (Chapter 4) script viewer

← back to main script listing

gml_Object_obj_room_castle_tv_zone_2_Create_0

(view raw script w/o annotations or w/e)
1
con = -1;
2
solo_mode = !
scr_havechar
scr_havechar

function
scr_havechar(arg0)
{ var checker = arg0; if (checker == "susie" || checker == "su" || checker == "s") checker = 2; if (checker == "ralsei" || checker == "ra" || checker == "r") checker = 3; if (checker == "noelle" || checker == "no" || checker == "n") checker = 4; _rreturn = 0; if (global.char[0] == checker) _rreturn = 1; if (global.char[1] == checker) _rreturn = 1; if (global.char[2] == checker) _rreturn = 1; return _rreturn; }
(3) && !
scr_havechar
scr_havechar

function
scr_havechar(arg0)
{ var checker = arg0; if (checker == "susie" || checker == "su" || checker == "s") checker = 2; if (checker == "ralsei" || checker == "ra" || checker == "r") checker = 3; if (checker == "noelle" || checker == "no" || checker == "n") checker = 4; _rreturn = 0; if (global.char[0] == checker) _rreturn = 1; if (global.char[1] == checker) _rreturn = 1; if (global.char[2] == checker) _rreturn = 1; return _rreturn; }
(2);
3
if (global.flag[1692] == 1)
4
    mike_controller = instance_create(0, 0, obj_mike_controller);
5
var platform = 
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; }
(440, 320, spr_dw_castle_tv_platform);
6
platform.depth = 999999;
7
var save_point_top = instance_create(470, 314, obj_savepoint);
8
with (save_point_top)
9
    
scr_depth
scr_depth

function
scr_depth(arg0 = id, arg1 = 0)
{ with (arg0) depth = 100000 - ((y * 10) + (sprite_height * 10) + (arg1 * 10)); }
();
10
11
remove_statue = function(arg0)
12
{
13
    global.flag[1694] |= 1 << arg0;
14
};
15
16
statue_list = [];
17
var layerarray = layer_get_all();
18
for (var i = 0; i < array_length(layerarray); i++)
19
{
20
    if (layer_get_name(layerarray[i]) != "ASSETS_Statues")
21
        continue;
22
    var elements = layer_get_all_elements(layerarray[i]);
23
    var j = array_length(elements) - 1;
24
    while (j >= 0)
25
    {
26
        if (layer_get_element_type(elements[j]) != 4)
27
        {
28
        }
29
        else
30
        {
31
            var statue_cat_tall = instance_create(layer_sprite_get_x(elements[j]), layer_sprite_get_y(elements[j]), obj_mike_statue_cat_overworld);
32
            with (statue_cat_tall)
33
                sprite_index = spr_statue_cat_tall;
34
            statue_cat_tall.bit_index = layer_sprite_get_speed(elements[j]);
35
            statue_cat_tall.init("statue_cat_tall", remove_statue);
36
            statue_list[array_length(statue_list)] = statue_cat_tall;
37
            with (statue_cat_tall)
38
                
scr_depth
scr_depth

function
scr_depth(arg0 = id, arg1 = 0)
{ with (arg0) depth = 100000 - ((y * 10) + (sprite_height * 10) + (arg1 * 10)); }
();
39
            layer_sprite_destroy(elements[j]);
40
        }
41
        j--;
42
    }
43
    break;
44
}
45
46
show_convo = function(arg0)
47
{
48
    switch (arg0)
49
    {
50
        case "statue_cat_tall":
51
            con = 5;
52
            break;
53
        case "glow_mic":
54
            con = (audio_get_recorder_count() == 0) ? 10 : 15;
55
            break;
56
    }
57
};
58
59
var remembered_flag = global.flag[1694];
60
if (remembered_flag > 0)
61
{
62
    for (var i = 0; i < array_length(statue_list); i++)
63
    {
64
        if (((remembered_flag >> statue_list[i].bit_index) & 1) != 0 || remembered_flag < 8)
65
            statue_list[i].clean_up();
66
    }
67
}