Deltarune (Chapter 4) script viewer

← back to main script listing

gml_Object_obj_dw_churchb_escherstaircase_Step_2

(view raw script w/o annotations or w/e)
1
scr_populatechars
scr_populatechars

function
scr_populatechars()
{ if (!variable_instance_exists(id, "kris")) kris = 0; if (!variable_instance_exists(id, "ralsei")) ralsei = 0; if (!variable_instance_exists(id, "susie")) susie = 0; if (!variable_instance_exists(id, "noelle")) noelle = 0; if (kris == 0) { with (obj_mainchara) other.kris = id; } if (susie == 0) { with (obj_caterpillarchara) { if (name == "susie") other.susie = id; } } if (ralsei == 0) { with (obj_caterpillarchara) { if (name == "ralsei") other.ralsei = id; } } if (noelle == 0) { with (obj_caterpillarchara) { if (name == "noelle") other.noelle = id; } } }
();
2
if (init)
3
{
4
    susie.image_alpha = 0;
5
    kris.image_alpha = 0;
6
    topy = 1990;
7
    bottomy = 2042;
8
    room_left = 2560;
9
    altx1 = obj_mainchara.x;
10
    alty1 = clamp(bottomy - (3194 - obj_mainchara.x) - (bottomy - obj_mainchara.y), 0, obj_mainchara.y);
11
    alty2 = alty1 + 160;
12
    altx2 = altx1 + 640;
13
    altx3 = altx1 + 1280;
14
    altx4 = altx1 + 1920;
15
    var targx = obj_mainchara.x;
16
    var targy = obj_mainchara.y;
17
    var alty1withtol = clamp(alty1, 1420, obj_mainchara.y);
18
    if (alty1withtol < targy)
19
        targy = alty1withtol;
20
    var alty2withtol = alty2 + 140;
21
    if (alty2withtol < targy)
22
        targy = alty2withtol;
23
    var camx = clamp(targx - floor(320 - (obj_mainchara.initwd / 2)), room_left, room_width - 640);
24
    var camy = clamp(targy - floor(320 - (obj_mainchara.initht / 2)), 1400, room_height - 480);
25
    camerax_set(camx);
26
    cameray_set(camy);
27
    var camtop = 1400;
28
    var leftscreenx = 2560;
29
    var rightscreenx = 3200;
30
    var bottomscreeny = 2042;
31
    if (krmark[0].x > 3156)
32
        
scr_depth
scr_depth

function
scr_depth(arg0 = id, arg1 = 0)
{ with (arg0) depth = 100000 - ((y * 10) + (sprite_height * 10) + (arg1 * 10)); }
(krmark[0], -92350);
33
    else
34
        krmark[0].depth = layer_get_depth("TILES_LAYER1") - 10;
35
    if (sumark[0].x > 3156)
36
        
scr_depth
scr_depth

function
scr_depth(arg0 = id, arg1 = 0)
{ with (arg0) depth = 100000 - ((y * 10) + (sprite_height * 10) + (arg1 * 10)); }
(sumark[0], -92350);
37
    else
38
        sumark[0].depth = layer_get_depth("TILES_LAYER1") - 10;
39
    if (i_ex(ramark[0]))
40
    {
41
        if (ramark[0].x > 3156)
42
            
scr_depth
scr_depth

function
scr_depth(arg0 = id, arg1 = 0)
{ with (arg0) depth = 100000 - ((y * 10) + (sprite_height * 10) + (arg1 * 10)); }
(ramark[0], -92350);
43
        else
44
            ramark[0].depth = layer_get_depth("TILES_LAYER1") - 10;
45
    }
46
    if (!depupd)
47
    {
48
        if (i_ex(krmark[1]))
49
            krmark[1].depth = layer_get_depth("TILES_LAYER3") - 10;
50
        if (i_ex(krmark[2]))
51
            krmark[2].depth = layer_get_depth("TILES_LAYER2") - 10;
52
        if (i_ex(krmark[3]))
53
            krmark[3].depth = layer_get_depth("TILES_LAYER0") - 10;
54
        if (i_ex(sumark[1]))
55
            sumark[1].depth = layer_get_depth("TILES_LAYER3") - 10;
56
        if (i_ex(sumark[2]))
57
            sumark[2].depth = layer_get_depth("TILES_LAYER2") - 10;
58
        if (i_ex(sumark[3]))
59
            sumark[3].depth = layer_get_depth("TILES_LAYER0") - 10;
60
        if (i_ex(ramark[1]))
61
            ramark[1].depth = layer_get_depth("TILES_LAYER3") - 10;
62
        if (i_ex(ramark[2]))
63
            ramark[2].depth = layer_get_depth("TILES_LAYER2") - 10;
64
        if (i_ex(ramark[3]))
65
            ramark[3].depth = layer_get_depth("TILES_LAYER0") - 10;
66
        depupd = 1;
67
    }
68
    var krposx = [];
69
    var krposy = [];
70
    var kryscale = [];
71
    var targ = [];
72
    targ[0] = kris;
73
    targ[1] = susie;
74
    if (i_ex(ralsei))
75
        targ[2] = ralsei;
76
    var mtarg = [];
77
    mtarg[0] = krmark;
78
    mtarg[1] = sumark;
79
    if (i_ex(ralsei))
80
        mtarg[2] = ramark;
81
    var xoff = [];
82
    var yoff = [];
83
    xoff[0] = 0;
84
    yoff[0] = 0;
85
    xoff[1] = 0;
86
    yoff[1] = 16;
87
    xoff[2] = 0;
88
    yoff[2] = 12;
89
    for (var m = 0; m < array_length(targ); m++)
90
    {
91
        krposx[0] = targ[m].x;
92
        krposy[0] = clamp(bottomscreeny - (3194 - targ[m].x) - (bottomscreeny - targ[m].y), 0, targ[m].y);
93
        kryscale[0] = 2;
94
        krposx[1] = targ[m].x + 640;
95
        var targloc = (bottomscreeny - (3194 - targ[m].x) - (bottomscreeny - targ[m].y)) + targ[m].sprite_height + 440 + yoff[m];
96
        krposy[1] = targloc;
97
        kryscale[1] = -2;
98
        krposx[2] = (targ[m].x + 1280) - 440;
99
        krposy[2] = (camtop - (krposx[2] - 2836)) + 100 + yoff[m];
100
        kryscale[2] = -2;
101
        krposx[3] = krposx[2] + 640;
102
        krposy[3] = 1714 - yoff[m];
103
        kryscale[3] = 2;
104
        for (var i = 0; i < array_length(mtarg[m]); i++)
105
        {
106
            mtarg[m][i].sprite_index = targ[m].sprite_index;
107
            mtarg[m][i].image_index = targ[m].image_index;
108
            mtarg[m][i].image_xscale = 2;
109
            mtarg[m][i].image_yscale = kryscale[i];
110
            var thisxoff = 0;
111
            var thisyoff = 0;
112
            setxy(krposx[i], krposy[i], mtarg[m][i]);
113
        }
114
    }
115
}