Undertale script viewer

← back to main script listing

gml_Object_obj_ratingsmaster_Draw_0

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

var newfont = argument0; if (global.language == "ja") { if (newfont == fnt_main) newfont = fnt_ja_main; if (newfont == fnt_maintext) newfont = fnt_ja_maintext; if (newfont == fnt_plain) newfont = fnt_ja_plain; } draw_set_font(newfont);
(fnt_maintext);
2
draw_set_color(c_white);
3
siner += 1;
4
if (active == 1)
5
{
6
    var xx = x + 20;
7
    if (global.language == "ja")
8
        xx -= 30;
9
    draw_text_transformed(xx + sin(siner / 4), y + cos(siner / 4), scr_gettext
scr_gettext

var text_id = argument[0]; var text = ds_map_find_value(global.text_data_en, text_id); if (is_undefined(text)) text = ""; if (global.language == "ja") { var loc_text = ds_map_find_value(global.text_data_ja, text_id); if (!is_undefined(loc_text)) text = loc_text; } for (var i = 1; i <= (string_length(text) - 3); i++) { if (string_copy(text, i, 2) == "\[" && string_char_at(text, i + 3) == "]") { var sel = string_char_at(text, i + 2); var replace; if (sel == "C") replace = global.charname; else if (sel == "G") replace = string(global.gold); else if (sel == "I") replace = global.itemname[global.menucoord[1]]; else if (sel == "1" && argument_count > 1) replace = argument[1]; else if (sel == "2" && argument_count > 2) replace = argument[2]; else if (sel == "3" && argument_count > 3) replace = argument[3]; else if (sel == "4" && argument_count > 4) replace = argument[4]; else if (sel == "5" && argument_count > 5) replace = argument[5]; else if (sel == "6" && argument_count > 6) replace = argument[6]; else if (sel == "7" && argument_count > 7) replace = argument[7]; else if (sel == "8" && argument_count > 8) replace = argument[8]; else if (sel == "9" && argument_count > 9) replace = argument[9]; else replace = ""; var before = string_copy(text, 1, i - 1); var after = string_copy(text, i + 4, string_length(text)); text = before + replace + after; i += (string_length(replace) - 1); } } return text;
("mett_ratings", string(global.ratings)), 2 - (sin(siner / 4) * 0.05), 2 - (cos(siner / 4) * 0.05), 0);
10
    for (i = 0; i < 6; i += 1)
11
    {
12
        if (rq_v[i] >= 0)
13
        {
14
            thisv = "+" + string(rq_v[i]);
15
            draw_set_color(c_lime);
16
        }
17
        else
18
        {
19
            thisv = string(rq_v[i]);
20
            draw_set_color(c_red);
21
        }
22
        rq_s[i] += 1 * ((i + 2) / 2);
23
        if (rq_s[i] > 120)
24
            draw_set_alpha((170 - rq_s[i]) / 50);
25
        var slim = 60;
26
        var vpos = 130;
27
        var linespace = 12;
28
        if (global.language == "ja")
29
        {
30
            slim = 40;
31
            vpos = 150;
32
            linespace = 15;
33
        }
34
        var scale_x = 1;
35
        var swidth = string_width(rq[i]);
36
        if (swidth > (vpos - slim))
37
            scale_x = (vpos - slim) / swidth;
38
        var spos = round(vpos - (swidth * scale_x));
39
        xx = 0;
40
        if (rq_s[i] < 10)
41
            xx = (cos(rq_s[i]) * 21) / ((rq_s[i] * 2) + 1);
42
        draw_text_transformed(x + spos + xx, y + 140 + (i * linespace), rq[i], scale_x, 1, 0);
43
        draw_text(x + vpos + xx, y + 140 + (i * linespace), thisv);
44
        draw_set_alpha(1);
45
    }
46
    draw_set_color(c_white);
47
    draw_line_width(x + 10, y + 40, x + 10, y + 130, 3);
48
    draw_set_color(c_white);
49
    draw_line_width(x + 10, y + 130, x + 180, y + 130, 3);
50
    draw_set_color(c_yellow);
51
    draw_line(x + 10, y + 55, x + 180, y + 55);
52
    ratingsy = global.ratings * 0.0075;
53
    draw_set_color(c_aqua);
54
    draw_line(x + 10, (y + 130) - ratingsy, x + 180, (y + 130) - ratingsy);
55
    for (i = 0; i < 9; i += 1)
56
    {
57
        draw_set_color(c_fuchsia);
58
        rpy[i] = rp[i] * 0.0075;
59
        rpy[i + 1] = rp[i + 1] * 0.0075;
60
        draw_line_width(x + 10 + (i * 20), (y + 130) - rpy[i], x + 30 + (i * 20), (y + 130) - rpy[i + 1], 2);
61
    }
62
}
63
if (checkhp > global.hp)
64
{
65
    curtype = 1;
66
    if (boastmode == 1)
67
    {
68
        curtype = 2;
69
        boastmode = 0;
70
    }
71
    if (heel == 1)
72
        curtype = 3;
73
    event_user(0);
74
}
75
checkhp = global.hp;
76
if (boastmode == 1)
77
{
78
    if (global.turntimer > 0 && global.mnfight == 2)
79
    {
80
        if (o_ob == 0)
81
            o_ob = 1;
82
        else
83
            o_ob = 0;
84
        if (o_ob == 0)
85
            global.ratings += 1;
86
        if (o_ob == 1)
87
            global.ratings += 2;
88
        if (instance_exists(obj_mettatonex))
89
        {
90
            if (obj_mettatonex.turns >= 20)
91
                global.ratings += 2;
92
        }
93
    }
94
    if (global.myfight == 0 && global.mnfight == 0)
95
        boastmode = 0;
96
    if (instance_exists(obj_essaystuff))
97
        boastmode = 0;
98
}
99
if (heel == 1)
100
{
101
    if (global.myfight == 0 && global.mnfight == 0)
102
        heel = 0;
103
}
104
event_user(1);
105
if (novel_armor == 1)
106
{
107
    curtype = 6;
108
    event_user(0);
109
    novel_armor = 0;
110
}
111
if (global.mnfight == 0 && global.myfight == 0)
112
{
113
    timeloss += 1;
114
    o_o += 1;
115
    if (o_o > 3)
116
        o_o = 0;
117
    if (timeloss < 4000 && o_o == 0)
118
        global.ratings -= 1;
119
}