Deltarune (Chapter Select) script viewer

← back to main script listing

gml_Object_obj_screen_select_footer_Step_0

(view raw script w/o annotations or w/e)
1
if (_fade_in)
2
{
3
    _alpha = lerp(_alpha, 1, 0.06);
4
    for (var i = 0; i < array_length(_choices); i++)
5
    {
6
        var choice = _choices[i];
7
        choice.set_alpha(_alpha);
8
        choice.y = lerp(choice.y, choice.ystart, 0.14);
9
    }
10
    if (_alpha >= 1)
11
        _fade_in = false;
12
}
13
if (!_input_enabled)
14
    exit;
15
if (up_p())
16
{
17
    audio_play_sound(snd_menumove, 50, 0);
18
    _parent.trigger_event("scroll_footer_up");
19
}
20
else if (down_p())
21
{
22
    audio_play_sound(snd_menumove, 50, 0);
23
    _parent.trigger_event("scroll_footer_down");
24
}
25
if (array_length(_choices) == 1)
26
    exit;
27
if (left_p())
28
{
29
    audio_play_sound(snd_menumove, 50, 0);
30
    _choice_index = 
scr_wrap
scr_wrap

function
scr_wrap()
{ var _val = argument[0]; var _max = argument[2]; var _min = argument[1]; if ((_val % 1) == 0) { while (_val > _max || _val < _min) { if (_val > _max) { _val = (_min + _val) - _max - 1; } else if (_val < _min) { _val = ((_max + _val) - _min) + 1; } else { } } return _val; } else { var _old = argument[0] + 1; while (_val != _old) { _old = _val; if (_val < _min) { _val = _max - (_min - _val); } else if (_val > _max) { _val = _min + (_val - _max); } else { } } return _val; } }
(_choice_index - 1, 0, array_length(_choices) - 1);
31
    highlight();
32
}
33
else if (right_p())
34
{
35
    audio_play_sound(snd_menumove, 50, 0);
36
    _choice_index = 
scr_wrap
scr_wrap

function
scr_wrap()
{ var _val = argument[0]; var _max = argument[2]; var _min = argument[1]; if ((_val % 1) == 0) { while (_val > _max || _val < _min) { if (_val > _max) { _val = (_min + _val) - _max - 1; } else if (_val < _min) { _val = ((_max + _val) - _min) + 1; } else { } } return _val; } else { var _old = argument[0] + 1; while (_val != _old) { _old = _val; if (_val < _min) { _val = _max - (_min - _val); } else if (_val > _max) { _val = _min + (_val - _max); } else { } } return _val; } }
(_choice_index + 1, 0, array_length(_choices) - 1);
37
    highlight();
38
}