Deltarune (Chapter 5) script viewer

← back to main script listing

gml_Object_obj_ch5_LW01W_convo_Step_0

(view raw script w/o annotations or w/e)
1
if (con < 0)
2
    exit;
3
if (convo_timer > 0 && !d_ex())
4
    convo_timer--;
5
if (convo_timer <= 0 && con == 0 && !d_ex())
6
{
7
    con = 10;
8
    convo_wait = false;
9
    var _convo = convo[convo_parent_index][convo_index][convo_line_index];
10
    
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 == "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 (global.darkzone == 1) global.typer = 89; } if (_speaker == "king" || _speaker == "kin") { global.fc = 20; global.typer = 33; if (global.chapter == 1) { if (global.plot < 235) global.typer = 36; ...
(_convo.speaker);
11
    global.fc = 0;
12
    global.fe = 0;
13
    msgset(0, _convo.dialogue);
14
    for (var i = 0; i < array_length(_convo.options); i++)
15
        trigger_event(_convo.options[i]);
16
    var d = d_make();
17
    d.zurasu = 1;
18
    d.stay = 5;
19
}
20
if (con == 10 && !d_ex())
21
{
22
    con = -1;
23
    if (convo_line_index < (array_length(convo[convo_parent_index][convo_index]) - 1))
24
    {
25
        convo_line_index++;
26
        con = 0;
27
    }
28
    else if (convo_index < (array_length(convo[convo_parent_index]) - 1))
29
    {
30
        convo_index++;
31
        convo_line_index = 0;
32
        if (convo_stopped)
33
        {
34
            con = -1;
35
            convo_finished = true;
36
        }
37
        else
38
        {
39
            var _seconds = 2;
40
            con = 0;
41
            set_timer(_seconds * 30);
42
        }
43
    }
44
    else
45
    {
46
        convo_wait = true;
47
        if (convo_parent_index < (array_length(convo) - 1))
48
        {
49
            con = -1;
50
            trigger_event("convo_branch_finished");
51
        }
52
        else
53
        {
54
            convo_finished = true;
55
            trigger_event("convo_tree_finished");
56
        }
57
    }
58
}
59
if (auto_text)
60
{
61
    if (i_ex(obj_writer))
62
    {
63
        if (!auto_text_start)
64
        {
65
            auto_text_start = true;
66
            auto_text_stop = false;
67
            auto_text_buffer = auto_text_buffer_time;
68
        }
69
        var can_skip = convo_stopped == true;
70
        with (obj_writer)
71
        {
72
            skippable = can_skip;
73
            preventcskip = !can_skip;
74
            disablebutton1 = !can_skip;
75
        }
76
        if (!auto_text_stop && obj_writer.reachedend == 1)
77
        {
78
            auto_text_stop = true;
79
            auto_text_buffer = auto_text_buffer_time;
80
        }
81
        if (auto_text_stop)
82
        {
83
            auto_text_buffer--;
84
            if (auto_text_buffer <= 0)
85
            {
86
                auto_text_start = false;
87
                auto_text_stop = false;
88
                auto_text_buffer = auto_text_buffer_time;
89
                k_d(3);
90
            }
91
        }
92
    }
93
    else if (auto_text_start)
94
    {
95
        auto_text_start = false;
96
    }
97
}
98
else if (i_ex(obj_writer))
99
{
100
    if (obj_writer.reachedend == 1)
101
    {
102
        if (button1_p() || button2_h() || button3_p())
103
            k_d();
104
    }
105
}