Deltarune (Chapter 4) script viewer

← back to main script listing

gml_Object_obj_ch4_DCA07_Create_0

(view raw script w/o annotations or w/e)
1
con = -1;
2
customcon = 0;
3
hide_elixir = false;
4
hide_elixir_con = 0;
5
if (global.plot >= 160)
6
{
7
    con = (global.plot < 170) ? 0 : 99;
8
    if (global.plot < 242)
9
    {
10
        gerson_npc = instance_find(obj_npc_gerson, 0);
11
        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);
}
(868) == 1)
12
        {
13
            var guei_npc_a = instance_create(290, 584, obj_npc_room_animated);
14
            with (guei_npc_a)
15
            {
16
                extflag = "guei_study";
17
                sprite_index = spr_npc_guei;
18
                
scr_flip
scr_flip

function
scr_flip(arg0)
{ if (arg0 == "h" || arg0 == "x") { x += ((sprite_get_width(sprite_index) - (sprite_get_xoffset(sprite_index) * 2)) * image_xscale); image_xscale = -image_xscale; } else { y += ((sprite_get_height(sprite_index) - (sprite_get_yoffset(sprite_index) * 2)) * image_yscale); image_yscale = -image_yscale; } }
("x");
19
                x = 403;
20
                y = 596;
21
                
scr_depth
scr_depth

function
scr_depth(arg0 = id, arg1 = 0)
{ with (arg0) depth = 100000 - ((y * 10) + (sprite_height * 10) + (arg1 * 10)); }
();
22
            }
23
            var guei_npc_b = instance_create(580, 172, obj_npc_room_animated);
24
            with (guei_npc_b)
25
            {
26
                extflag = "guei_top";
27
                sprite_index = spr_npc_guei;
28
                
scr_depth
scr_depth

function
scr_depth(arg0 = id, arg1 = 0)
{ with (arg0) depth = 100000 - ((y * 10) + (sprite_height * 10) + (arg1 * 10)); }
();
29
            }
30
        }
31
    }
32
    table_items = ["tea", "elixir", "guard", "scarf"];
33
    readable_list = [];
34
    item_markers = [];
35
    item_x_offsets = [6, 62, 108, 140];
36
    item_y_offsets = [-4, -10, 4, -6];
37
    for (var i = 0; i < 4; i++)
38
    {
39
        var _sprite = asset_get_index("spr_dw_item_" + table_items[i]);
40
        item_markers[i] = 
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; }
(384 + item_x_offsets[i], 1000 + item_y_offsets[i], _sprite);
41
        with (item_markers[i])
42
            depth = 89230;
43
    }
44
    var table_sparkle = 
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; }
(480, 990, spr_shine_white);
45
    with (table_sparkle)
46
    {
47
        depth = 89000;
48
        image_speed = 0.1;
49
    }
50
    var table_readable = instance_create(380, 990, obj_readable_room1);
51
    with (table_readable)
52
    {
53
        extflag = "gerson_shop";
54
        image_xscale = 10;
55
        image_yscale = 2;
56
    }
57
    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);
}
(841) == 2)
58
    {
59
        with (obj_readable_room1)
60
        {
61
            if (extflag == "elixir")
62
                instance_destroy();
63
        }
64
        with (item_markers[1])
65
            instance_destroy();
66
    }
67
    knight_talk = false;
68
    knight_talk_con = 0;
69
}
70
else
71
{
72
    instance_destroy();
73
}