Undertale Yellow script viewer

← back to main script listing

gml_Object_obj_dialogue_call_for_help_Draw_64

(view raw script w/o annotations or w/e)
1
if (live_call())
2
    return global.live_result;
3
draw_set_alpha(draw_alpha);
4
if (message_current > (array_length_1d(prt) - 1) || prt[message_current] == 0)
5
    portrait = false;
6
else
7
    portrait = true;
8
var yy = 91;
9
var xx = 50;
10
var portrait_xx = 52;
11
var line_sep = 18;
12
var xs1 = 3.8;
13
var ys1 = 0.5;
14
bsize = 0.1;
15
var xs2 = xs1 + bsize;
16
var ys2 = ys1 + bsize;
17
box_xx = 160;
18
box_yy = 110;
19
draw_set_font(dialogue_font);
20
draw_set_color(c_white);
21
draw_set_halign(fa_left);
22
message_actual = string_copy(message[message_current], 0, cutoff);
23
draw_text_ext(xx, yy + 10, string_hash_to_newline(message_actual), line_sep, -1);
24
if (color == true)
25
{
26
    if (color_set == false)
27
    {
28
        for (var i = 0; i < (array_length_1d(message) - 1); i++)
29
        {
30
            var len = array_length_2d(message_col, i);
31
            if (len == 0)
32
            {
33
                message_col[i][0] = "";
34
            }
35
            else if (len > 0)
36
            {
37
                for (var j = 0; j < (array_length_1d(col_modif) - 1); j++)
38
                {
39
                    if (j < array_length_2d(message_col, i) && message_col[i][j] == 0)
40
                        message_col[i][j] = "";
41
                }
42
            }
43
        }
44
        color_set = true;
45
    }
46
    for (var j = 0; j < array_length_2d(message_col, message_current); j++)
47
    {
48
        message_actual_col[j] = string_copy(message_col[message_current][j], 0, cutoff);
49
        draw_set_color(col_modif[j]);
50
        draw_text_ext(xx, yy + 10, string_hash_to_newline(message_actual_col[j]), line_sep, -1);
51
    }
52
}
53
draw_set_color(c_white);
54
if (dialogue_is_minishop == true)
55
{
56
    var minishop_box_xx = 204;
57
    var minishop_box_yy = 92;
58
    draw_set_color(c_white);
59
    draw_rectangle(minishop_box_xx, minishop_box_yy, minishop_box_xx + 100, minishop_box_yy + 53, false);
60
    draw_set_color(c_black);
61
    draw_rectangle(minishop_box_xx + 3, minishop_box_yy + 3, (minishop_box_xx + 100) - 3, (minishop_box_yy + 53) - 3, false);
62
    draw_set_font(fnt_battle);
63
    draw_set_color(c_white);
64
    var item_count;
65
    for (item_count = 1; item_count <= 8; item_count++)
66
    {
67
        if (global.item_slot[item_count] == "Nothing")
68
            break;
69
    }
70
    draw_text(217, 100, string_hash_to_newline("$ - " + string(global.player_gold) + "#SPACE - " + string(item_count - 1) + "/8"));
71
}
72
if (choice == false && alpha_fade == false)
73
    exit;
74
xx = 100;
75
var spacing = 0.25;
76
if (ch[4] != "")
77
    spacing = 0.5;
78
if (portrait)
79
    spacing = 0.15;
80
var ypos1, ypos2;
81
if (position == 0)
82
{
83
    ypos1 = 190;
84
    if (ch[3] == "")
85
        ypos1 = 210;
86
    ypos2 = 210;
87
}
88
else
89
{
90
    ypos1 = 32;
91
    if (ch[3] == "")
92
        ypos1 = 56;
93
    ypos2 = 56;
94
}
95
if (ch[4] != "")
96
    xx -= 30;
97
var xpos1 = xx;
98
var xpos2 = xx + 122;
99
if (portrait == true)
100
    xpos1 += 20;
101
var xpos3 = xpos1;
102
var xpos4 = xpos2;
103
if (ch[2] == "")
104
    xpos1 = xpos1 + 56;
105
if (ch[4] == "")
106
    xpos3 = xpos1 + 56;
107
draw_set_alpha(ch_alpha);
108
if (cutoff >= string_length(message[message_current]) && global.dialogue_open == true)
109
{
110
    draw_set_halign(fa_center);
111
    if (ch[4] != "")
112
        draw_set_halign(fa_left);
113
    draw_text(xpos1, ypos1, string_hash_to_newline(ch[1]));
114
    if (ch[2] != "")
115
        draw_text(xpos2, ypos1, string_hash_to_newline(ch[2]));
116
    if (ch[3] != "")
117
        draw_text(xpos3, ypos2, string_hash_to_newline(ch[3]));
118
    if (ch[4] != "")
119
        draw_text(xpos4, ypos2, string_hash_to_newline(ch[4]));
120
    draw_set_halign(fa_center);
121
    var soul_offset = string_width(string_hash_to_newline(ch[p])) * 0.5;
122
    if (ch[4] != "")
123
        soul_offset = 0;
124
    var soul_x, soul_y;
125
    switch (p)
126
    {
127
        case 1:
128
            soul_x = xpos1 - soul_offset - 8;
129
            soul_y = ypos1 + 8;
130
            break;
131
        case 2:
132
            soul_x = xpos2 - soul_offset - 8;
133
            soul_y = ypos1 + 8;
134
            break;
135
        case 3:
136
            soul_x = xpos3 - soul_offset - 8;
137
            soul_y = ypos2 + 8;
138
            break;
139
        case 4:
140
            soul_x = xpos4 - soul_offset - 8;
141
            soul_y = ypos2 + 8;
142
            break;
143
    }
144
    draw_sprite(spr_heart_yellow_overworld, 0, soul_x, soul_y);
145
}
146
draw_set_alpha(1);
147
draw_set_halign(fa_left);