Deltarune (Chapter 3) script viewer

← back to main script listing

gml_Object_obj_rhythmgame_example_Draw_0

(view raw script w/o annotations or w/e)
1
draw_self();
2
if (song_initialized)
3
{
4
    var notespeed = 150;
5
    var bottomy = cameray() + 360;
6
    draw_set_color(merge_color(c_fuchsia, c_white, 2 / (pressedtimer[0] + 1)));
7
    draw_line(0, bottomy, 320, bottomy);
8
    draw_set_color(merge_color(c_blue, c_white, 2 / (pressedtimer[1] + 1)));
9
    draw_line(320, bottomy, 640, bottomy);
10
    draw_set_color(c_white);
11
    for (var notei = minnote; notei < maxnote; notei++)
12
    {
13
        notey = (bottomy - (notetime[notei] * notespeed)) + (audio_sound_get_track_position(track1_instance) * notespeed);
14
        if (notey >= -20)
15
        {
16
            if (notetime[notei] < remtrackpos[3])
17
            {
18
                if (notescore[notei] <= 0 && notealive[notei] == 1)
19
                    missnotecon = 1;
20
                notealive[notei] = 0;
21
                minnote = notei + 1;
22
            }
23
            if (notealive[notei] == 1)
24
                draw_set_color(c_white);
25
            else
26
                draw_set_color(c_gray);
27
            if (notescore[notei] >= 30)
28
                draw_set_color(c_orange);
29
            if (notescore[notei] == 100)
30
                draw_set_color(c_yellow);
31
            draw_rectangle(280 + (notetype[notei] * 40), notey - 6, 280 + (notetype[notei] * 40) + 30, notey, false);
32
        }
33
    }
34
    if (missnotecon == 1)
35
    {
36
        snd_play_x(snd_hurt1, 0.6, 0.9);
37
        mus_volume(track2_instance, 0, 0);
38
        missnotecon = 2;
39
        missnotetimer = 0;
40
    }
41
    draw_set_color(c_red);
42
    draw_text(0, 0, trackpos);
43
    var notey = bottomy - (notetime[0] * notespeed);
44
    draw_text(0, 30, remtrackpos[3]);
45
    draw_text(0, 60, notetime[0]);
46
}