Deltarune (Chapter 3) script viewer

← back to main script listing

gml_GlobalScript_scr_mus_timing

(view raw script w/o annotations or w/e)
1
function scr_round_to_beat(arg0, arg1, arg2 = 4, arg3 = 0)
2
{
3
    if (arg2 <= 0)
4
        arg2 = 1;
5
    var __mps = 60 / arg1 / arg2;
6
    return (round((arg0 - arg3) / __mps) * __mps) + arg3;
7
}
8
9
function scr_floor_to_beat(arg0, arg1, arg2 = 4, arg3 = 0)
10
{
11
    if (arg2 <= 0)
12
        arg2 = 1;
13
    var __mps = 60 / arg1 / arg2;
14
    return (floor((arg0 - arg3) / __mps) * __mps) + arg3;
15
}
16
17
function scr_ceil_to_beat(arg0, arg1, arg2 = 4, arg3 = 0)
18
{
19
    if (arg2 <= 0)
20
        arg2 = 1;
21
    var __mps = 60 / arg1 / arg2;
22
    return (ceil((arg0 - arg3) / __mps) * __mps) + arg3;
23
}
24
25
function scr_round_to_offbeat(arg0, arg1, arg2 = 1, arg3 = 0.5, arg4 = 0)
26
{
27
    return scr_round_to_beat(arg0, arg1, arg2, arg4 + (arg3 * (60 / arg1)));
28
}
29
30
function scr_ceil_to_offbeat(arg0, arg1, arg2 = 1, arg3 = 0.5, arg4 = 0)
31
{
32
    return scr_ceil_to_beat(arg0, arg1, arg2, arg4 + (arg3 * (60 / arg1)));
33
}
34
35
function scr_floor_to_offbeat(arg0, arg1, arg2 = 1, arg3 = 0.5, arg4 = 0)
36
{
37
    return scr_floor_to_beat(arg0, arg1, arg2, arg4 + (arg3 * (60 / arg1)));
38
}