Deltarune (Chapter 4) script viewer

← back to main script listing

gml_Object_obj_dw_rhythm_speakers_Step_0

(view raw script w/o annotations or w/e)
1
if (!init)
2
    exit;
3
if (buffer < 3)
4
    buffer++;
5
var in_zone = point_in_rectangle(obj_mainchara.x + 14, obj_mainchara.y, x - 20 - 14, y + 180, x + 166 + 14, y + 340);
6
if (!in_zone)
7
{
8
    if (symbol.in_range())
9
    {
10
        symbol.exit_range();
11
        _speaker_timer = beat_start;
12
        
scr_lerpvar_instance
scr_lerpvar_instance

function
scr_lerpvar_instance()
{ __lerpvar = instance_create(0, 0, obj_lerpvar); __lerpvar.target = argument[0]; __lerpvar.varname = argument[1]; __lerpvar.pointa = argument[2]; __lerpvar.pointb = argument[3]; __lerpvar.maxtime = argument[4]; if (argument_count >= 6) __lerpvar.easetype = argument[5]; if (argument_count >= 7) __lerpvar.easeinout = argument[6]; return __lerpvar; } function scr_lerp_var_instance() { if (argument_count >= 6) return
scr_lerpvar_instance(argument0, argument1, argument2, argument3, argument4, argument5);
else if (argument_count >= 7) return
scr_lerpvar_instance(argument0, argument1, argument2, argument3, argument4, argument5, argument6);
else return
scr_lerpvar_instance(argument0, argument1, argument2, argument3, argument4);
} function scr_lerp_instance_var() { if (argument_count >= 6) return
scr_lerpvar_instance(argument0, argument1, argument2, argument3, argument4, argument5);
else if (argument_count >= 7) return
scr_lerpvar_instance(argument0, argument1, argument2, argument3, argument4, argument5, argument6);
else return
scr_lerpvar_instance(argument0, argument1, argument2, argument3, argument4);
}
(id, "_speaker_x_scale", _speaker_x_scale, 2, 12, 2, "out");
13
        
scr_lerpvar_instance
scr_lerpvar_instance

function
scr_lerpvar_instance()
{ __lerpvar = instance_create(0, 0, obj_lerpvar); __lerpvar.target = argument[0]; __lerpvar.varname = argument[1]; __lerpvar.pointa = argument[2]; __lerpvar.pointb = argument[3]; __lerpvar.maxtime = argument[4]; if (argument_count >= 6) __lerpvar.easetype = argument[5]; if (argument_count >= 7) __lerpvar.easeinout = argument[6]; return __lerpvar; } function scr_lerp_var_instance() { if (argument_count >= 6) return
scr_lerpvar_instance(argument0, argument1, argument2, argument3, argument4, argument5);
else if (argument_count >= 7) return
scr_lerpvar_instance(argument0, argument1, argument2, argument3, argument4, argument5, argument6);
else return
scr_lerpvar_instance(argument0, argument1, argument2, argument3, argument4);
} function scr_lerp_instance_var() { if (argument_count >= 6) return
scr_lerpvar_instance(argument0, argument1, argument2, argument3, argument4, argument5);
else if (argument_count >= 7) return
scr_lerpvar_instance(argument0, argument1, argument2, argument3, argument4, argument5, argument6);
else return
scr_lerpvar_instance(argument0, argument1, argument2, argument3, argument4);
}
(id, "_speaker_y_scale", _speaker_y_scale, 2, 12, 2, "out");
14
        mus_volume(global.currentsong[1], 1, 12);
15
    }
16
    exit;
17
}
18
else if (!symbol.in_range())
19
{
20
    symbol.enter_range();
21
    if (buffer <= 2)
22
    {
23
        mus_volume(global.currentsong[1], 0, 0);
24
        debug_print("funny spawn.");
25
    }
26
    else
27
    {
28
        mus_volume(global.currentsong[1], 0, 12);
29
    }
30
}
31
var _bpm_time = (60 / bpm) * 30;
32
if (_bpm_time < 8)
33
    _bpm_time *= 2;
34
debug_print_persistent(id, "BPM:" + string(bpm) + " (" + string(_bpm_time) + " frames per beat)");
35
_speaker_timer++;
36
if (_speaker_timer >= 1 && speaker_con == 0)
37
{
38
    speaker_con = 1;
39
    _speaker_anim = 0;
40
    
scr_lerpvar_instance
scr_lerpvar_instance

function
scr_lerpvar_instance()
{ __lerpvar = instance_create(0, 0, obj_lerpvar); __lerpvar.target = argument[0]; __lerpvar.varname = argument[1]; __lerpvar.pointa = argument[2]; __lerpvar.pointb = argument[3]; __lerpvar.maxtime = argument[4]; if (argument_count >= 6) __lerpvar.easetype = argument[5]; if (argument_count >= 7) __lerpvar.easeinout = argument[6]; return __lerpvar; } function scr_lerp_var_instance() { if (argument_count >= 6) return
scr_lerpvar_instance(argument0, argument1, argument2, argument3, argument4, argument5);
else if (argument_count >= 7) return
scr_lerpvar_instance(argument0, argument1, argument2, argument3, argument4, argument5, argument6);
else return
scr_lerpvar_instance(argument0, argument1, argument2, argument3, argument4);
} function scr_lerp_instance_var() { if (argument_count >= 6) return
scr_lerpvar_instance(argument0, argument1, argument2, argument3, argument4, argument5);
else if (argument_count >= 7) return
scr_lerpvar_instance(argument0, argument1, argument2, argument3, argument4, argument5, argument6);
else return
scr_lerpvar_instance(argument0, argument1, argument2, argument3, argument4);
}
(id, "_speaker_x_scale", 2.2, 2, 12, 2, "out");
41
    
scr_lerpvar_instance
scr_lerpvar_instance

function
scr_lerpvar_instance()
{ __lerpvar = instance_create(0, 0, obj_lerpvar); __lerpvar.target = argument[0]; __lerpvar.varname = argument[1]; __lerpvar.pointa = argument[2]; __lerpvar.pointb = argument[3]; __lerpvar.maxtime = argument[4]; if (argument_count >= 6) __lerpvar.easetype = argument[5]; if (argument_count >= 7) __lerpvar.easeinout = argument[6]; return __lerpvar; } function scr_lerp_var_instance() { if (argument_count >= 6) return
scr_lerpvar_instance(argument0, argument1, argument2, argument3, argument4, argument5);
else if (argument_count >= 7) return
scr_lerpvar_instance(argument0, argument1, argument2, argument3, argument4, argument5, argument6);
else return
scr_lerpvar_instance(argument0, argument1, argument2, argument3, argument4);
} function scr_lerp_instance_var() { if (argument_count >= 6) return
scr_lerpvar_instance(argument0, argument1, argument2, argument3, argument4, argument5);
else if (argument_count >= 7) return
scr_lerpvar_instance(argument0, argument1, argument2, argument3, argument4, argument5, argument6);
else return
scr_lerpvar_instance(argument0, argument1, argument2, argument3, argument4);
}
(id, "_speaker_y_scale", 2.2, 2, 12, 2, "out");
42
}
43
if (_speaker_timer >= (_bpm_time / 4) && speaker_con == 1)
44
{
45
    speaker_con = 2;
46
    _speaker_anim = 1;
47
}
48
if (_speaker_timer >= _bpm_time)
49
{
50
    speaker_con = 0;
51
    _speaker_timer -= _bpm_time;
52
}
53
var center_point = (x - 20) + 90;
54
var player_pos = abs((obj_mainchara.x + 14) - center_point);
55
var _max_vol = remap(100, 0, 0, 1, player_pos);
56
_max_vol = clamp01(_max_vol);
57
snd_volume(audio_file, _max_vol, 0);
58
spawn = false;