Deltarune (Chapter 4) script viewer

← back to main script listing

gml_Object_obj_dw_church_gerson_follow_Step_0

(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
    setxy(locx[1], locy[1]);
5
    init = 1;
6
}
7
if (con == 0)
8
{
9
    
scr_depth
scr_depth

function
scr_depth(arg0 = id, arg1 = 0)
{ with (arg0) depth = 100000 - ((y * 10) + (sprite_height * 10) + (arg1 * 10)); }
();
10
    image_index += 0.125;
11
    speed = 2;
12
    if (global.interact != 0)
13
    {
14
        speed = 0;
15
        image_index = 0;
16
    }
17
    move_towards_point(locx[moveindex], locy[moveindex], speed);
18
    if (
scr_checklocation
scr_checklocation

function
scr_checklocation(arg0 = id, arg1, arg2, arg3 = 0)
{ if (!i_ex(arg0)) { debug_message("target instance does not exist"); return false; } if (abs(arg0.x - arg1) <= arg3 && abs(arg0.y - arg2) <= arg3) return true; else return false; }
(id, locx[moveindex], locy[moveindex], 2))
19
    {
20
        speed = 0;
21
        con = 1;
22
    }
23
}
24
if (con == 1)
25
{
26
    var proceed = false;
27
    if (moveindex < (array_length(locx) - 1))
28
    {
29
        if (moveindex < 3)
30
        {
31
            if (ralsei.y < locy[moveindex + 1])
32
                proceed = true;
33
        }
34
        else if (ralsei.x < locx[moveindex + 1])
35
        {
36
            proceed = true;
37
        }
38
    }
39
    if (proceed)
40
    {
41
        con = 0;
42
        moveindex++;
43
    }
44
    else
45
    {
46
        image_index = 0;
47
        if (moveindex == (numofgersons - 1))
48
        {
49
            con = 20;
50
            interactable = instance_create(x, y, obj_trigger_interact);
51
            var truex = bbox_left;
52
            var truey = bbox_top;
53
            var truexscale = bbox_right - bbox_left;
54
            var trueyscale = bbox_bottom - bbox_top;
55
            setxy(truex, truey, interactable);
56
            
scr_sizeexact
scr_sizeexact

function
scr_sizeexact(arg0, arg1, arg2 = id)
{ with (arg2) { if (!sprite_exists(sprite_index)) { debug_message("Can't size, no sprite"); exit; } var _w = sprite_get_width(sprite_index); var _h = sprite_get_width(sprite_index); image_xscale = arg0 / _w; image_yscale = arg1 / _h; } }
(truexscale, trueyscale, interactable);
57
            interactable.strict = true;
58
            interactable.depth = 0;
59
            interactable.talked = 0;
60
            image_index = 0;
61
        }
62
    }
63
}
64
if (i_ex(interactable))
65
{
66
    with (interactable)
67
    {
68
        if (myinteract == 3)
69
        {
70
            if (d_ex())
71
            {
72
                myinteract = 0;
73
            }
74
            else
75
            {
76
                
scr_speaker
scr_speaker

function
scr_speaker(arg0)
{ _speaker = arg0; global.typer = 5; if (global.darkzone == 1) global.typer = 6; if (global.fighting == 1) global.typer = 4; global.fc = 0; global.fe = 0; if (_speaker == "silent" && global.darkzone == 0) global.typer = 2; if (_speaker == "silent" && global.darkzone == 1) global.typer = 36; if (_speaker == "balloon" || _speaker == "enemy") global.typer = 50; if (_speaker == "sans") { global.typer = 14; global.fc = 6; } if (_speaker == "undyne" || _speaker == "und") { global.typer = 17; global.fc = 9; } if (_speaker == "temmie" || _speaker == "tem") global.typer = 21; if (_speaker == "jevil") global.typer = 35; if (_speaker == "catti") global.fc = 13; if (_speaker == "jockington" || _speaker == "joc") global.fc = 14; if (_speaker == "catty" || _speaker == "caddy") global.fc = 16; if (_speaker == "bratty" || _speaker == "bra") global.fc = 17; if (_speaker == "rouxls" || _speaker == "rou") global.fc = 18; if (_speaker == "burgerpants" || _speaker == "bur") global.fc = 19; if (_speaker == "spamton") { if (global.fighting == 0) global.typer = 66; else global.typer = 68; } if (_speaker == "sneo") global.typer = 67; if (_speaker == "gerson" || _speaker == "ger" || _speaker == "gers") global.typer = 85; if (_speaker == "susie" || _speaker == "sus") { global.fc = 1; global.typer = 10; if (global.darkzone == 1) { global.typer = 30; if (global.fighting == 1) global.typer = 47; } } if (_speaker == "ralsei" || _speaker == "ral") { global.fc = 2; global.typer = 31; if (global.fighting == 1) global.typer = 45; if (global.flag[30 ralsei_hat_state] == 1) global.typer = 6; } if (_speaker == "noelle" || _speaker == "noe") { global.fc = 3; if (global.darkzone == 0) global.typer = 12; else global.typer = 56; if (global.fighting == 1) global.typer = 59; } if (_speaker == "toriel" || _speaker == "tor") { global.fc = 4; global.typer = 7; } if (_speaker == "asgore" || _speaker == "asg") { global.fc = 10; global.typer = 18; } if (_speaker == "king" || _speaker == "kin") { global.fc = 20; global.typer = 33; if (global.chapter == 1) { if (global.plot < 235) global.typer = 36; ...
("gerson");
77
                msgsetloc(0, 
* Hmm!Delay 11 The prophecy!Delay 11 A very nice fairytale,Delay 11 that...Wait for inputClose Message
"* Hmm^1! The prophecy^1! A very nice fairytale^1, that.../%", "obj_dw_church_gerson_follow_slash_Step_0_gml_93_0"
);
78
                if (talked)
79
                {
80
                    
scr_speaker
scr_speaker

function
scr_speaker(arg0)
{ _speaker = arg0; global.typer = 5; if (global.darkzone == 1) global.typer = 6; if (global.fighting == 1) global.typer = 4; global.fc = 0; global.fe = 0; if (_speaker == "silent" && global.darkzone == 0) global.typer = 2; if (_speaker == "silent" && global.darkzone == 1) global.typer = 36; if (_speaker == "balloon" || _speaker == "enemy") global.typer = 50; if (_speaker == "sans") { global.typer = 14; global.fc = 6; } if (_speaker == "undyne" || _speaker == "und") { global.typer = 17; global.fc = 9; } if (_speaker == "temmie" || _speaker == "tem") global.typer = 21; if (_speaker == "jevil") global.typer = 35; if (_speaker == "catti") global.fc = 13; if (_speaker == "jockington" || _speaker == "joc") global.fc = 14; if (_speaker == "catty" || _speaker == "caddy") global.fc = 16; if (_speaker == "bratty" || _speaker == "bra") global.fc = 17; if (_speaker == "rouxls" || _speaker == "rou") global.fc = 18; if (_speaker == "burgerpants" || _speaker == "bur") global.fc = 19; if (_speaker == "spamton") { if (global.fighting == 0) global.typer = 66; else global.typer = 68; } if (_speaker == "sneo") global.typer = 67; if (_speaker == "gerson" || _speaker == "ger" || _speaker == "gers") global.typer = 85; if (_speaker == "susie" || _speaker == "sus") { global.fc = 1; global.typer = 10; if (global.darkzone == 1) { global.typer = 30; if (global.fighting == 1) global.typer = 47; } } if (_speaker == "ralsei" || _speaker == "ral") { global.fc = 2; global.typer = 31; if (global.fighting == 1) global.typer = 45; if (global.flag[30 ralsei_hat_state] == 1) global.typer = 6; } if (_speaker == "noelle" || _speaker == "noe") { global.fc = 3; if (global.darkzone == 0) global.typer = 12; else global.typer = 56; if (global.fighting == 1) global.typer = 59; } if (_speaker == "toriel" || _speaker == "tor") { global.fc = 4; global.typer = 7; } if (_speaker == "asgore" || _speaker == "asg") { global.fc = 10; global.typer = 18; } if (_speaker == "king" || _speaker == "kin") { global.fc = 20; global.typer = 33; if (global.chapter == 1) { if (global.plot < 235) global.typer = 36; ...
("gerson");
81
                    msgsetloc(0, 
* Hm? What's the holdup? You kids sure are takin' your sweet time!Wait for inputClose Message
"* Hm? What's the holdup? You kids sure are takin' your sweet time!/%", "obj_dw_church_gerson_follow_slash_Step_0_gml_98_0"
);
82
                }
83
                d_make();
84
                talked++;
85
                global.interact = 1;
86
                myinteract = 4;
87
            }
88
        }
89
        if (myinteract == 4 && !d_ex())
90
        {
91
            myinteract = 0;
92
            global.interact = 0;
93
        }
94
    }
95
}