Deltarune (Chapter 5) script viewer

← back to main script listing

gml_Object_obj_ch5_LW20W_rotate_Create_0

(view raw script w/o annotations or w/e)
1
depth = 4900;
2
_state = -1;
3
_noellehouse_sprite = -4;
4
_school_sprite = -4;
5
_dess_sprite = -4;
6
_noelle_sprite = 386;
7
_noelle_sprite_index = 0;
8
_overlay_alpha = 1;
9
_noelle_alpha = 0;
10
_enable_wave = false;
11
_time_interval = 0.25;
12
_rotate_enabled = false;
13
_target_angle = 270;
14
_target_angle_modifier = 0;
15
_slow_to_stop = false;
16
_fade_in_segments = false;
17
_wave_modifier = 0;
18
shader = 36;
19
surf = -4;
20
u_angle = shader_get_uniform(shader, "BaseAngle");
21
u_time = shader_get_uniform(shader, "Time");
22
u_wave = shader_get_uniform(shader, "Wavyness");
23
time = 0;
24
angle = 270;
25
alpha_1 = 0;
26
alpha_2 = 0;
27
alpha_3 = 0;
28
alpha_1_active = false;
29
alpha_2_active = false;
30
alpha_3_active = false;
31
max_segments = 0;
32
w1 = 0;
33
w2 = -0.5;
34
w3 = -1;
35
36
init = function()
37
{
38
    _state = 0;
39
    if (global.tempflag[55] == 0)
40
    {
41
        global.tempflag[55] = 1;
42
        persistent = true;
43
        room_goto(room_town_noellehouse);
44
    }
45
};
46
47
start = function()
48
{
49
    _state = 1;
50
    fade_in();
51
};
52
53
enable_wave = function()
54
{
55
    _enable_wave = true;
56
};
57
58
start_rotate = function()
59
{
60
    _rotate_enabled = true;
61
    increase_rotate();
62
};
63
64
increase_rotate = function()
65
{
66
    
scr_lerpvar
scr_lerpvar

function
scr_lerpvar()
{ var _id = self; if (!is_struct(self)) _id = id; if (argument_count < 6) ___lerpvar =
scr_lerpvar_instance(_id, argument[0], argument[1], argument[2], argument[3]);
else ___lerpvar =
scr_lerpvar_instance(_id, argument[0], argument[1], argument[2], argument[3], argument[4], argument[5]);
return ___lerpvar; } function scr_lerpcol() { if (argument_count < 6) ___lerpvar = scr_lerpcol_instance(id, argument[0], argument[1], argument[2], argument[3]); else ___lerpvar = scr_lerpcol_instance(id, argument[0], argument[1], argument[2], argument[3], argument[4], argument[5]); return ___lerpvar; }
("_target_angle_modifier", _target_angle_modifier, _target_angle_modifier + 0.2, 30);
67
};
68
69
increase_wave = function()
70
{
71
    
scr_lerpvar
scr_lerpvar

function
scr_lerpvar()
{ var _id = self; if (!is_struct(self)) _id = id; if (argument_count < 6) ___lerpvar =
scr_lerpvar_instance(_id, argument[0], argument[1], argument[2], argument[3]);
else ___lerpvar =
scr_lerpvar_instance(_id, argument[0], argument[1], argument[2], argument[3], argument[4], argument[5]);
return ___lerpvar; } function scr_lerpcol() { if (argument_count < 6) ___lerpvar = scr_lerpcol_instance(id, argument[0], argument[1], argument[2], argument[3]); else ___lerpvar = scr_lerpcol_instance(id, argument[0], argument[1], argument[2], argument[3], argument[4], argument[5]); return ___lerpvar; }
("_wave_modifier", _wave_modifier, _wave_modifier + 0.01, 30);
72
};
73
74
stop_rotate = function()
75
{
76
    _rotate_enabled = false;
77
    _slow_to_stop = true;
78
};
79
80
fade_in_segment = function()
81
{
82
    max_segments++;
83
};
84
85
fade_in = function()
86
{
87
    
scr_lerpvar
scr_lerpvar

function
scr_lerpvar()
{ var _id = self; if (!is_struct(self)) _id = id; if (argument_count < 6) ___lerpvar =
scr_lerpvar_instance(_id, argument[0], argument[1], argument[2], argument[3]);
else ___lerpvar =
scr_lerpvar_instance(_id, argument[0], argument[1], argument[2], argument[3], argument[4], argument[5]);
return ___lerpvar; } function scr_lerpcol() { if (argument_count < 6) ___lerpvar = scr_lerpcol_instance(id, argument[0], argument[1], argument[2], argument[3]); else ___lerpvar = scr_lerpcol_instance(id, argument[0], argument[1], argument[2], argument[3], argument[4], argument[5]); return ___lerpvar; }
("_noelle_alpha", 0, 1, 60);
88
};
89
90
fade_out = function()
91
{
92
    
scr_lerpvar
scr_lerpvar

function
scr_lerpvar()
{ var _id = self; if (!is_struct(self)) _id = id; if (argument_count < 6) ___lerpvar =
scr_lerpvar_instance(_id, argument[0], argument[1], argument[2], argument[3]);
else ___lerpvar =
scr_lerpvar_instance(_id, argument[0], argument[1], argument[2], argument[3], argument[4], argument[5]);
return ___lerpvar; } function scr_lerpcol() { if (argument_count < 6) ___lerpvar = scr_lerpcol_instance(id, argument[0], argument[1], argument[2], argument[3]); else ___lerpvar = scr_lerpcol_instance(id, argument[0], argument[1], argument[2], argument[3], argument[4], argument[5]); return ___lerpvar; }
("_noelle_alpha", 1, 0, 60);
93
};
94
95
fade_in_pinwheel = function()
96
{
97
    _fade_in_segments = true;
98
};
99
100
fade_out_pinwheel = function()
101
{
102
    max_segments = 0;
103
    alpha_1 = 0;
104
    alpha_2 = 0;
105
    alpha_3 = 0;
106
};
107
108
noelle_kneel = function()
109
{
110
    _noelle_sprite_index = 1;
111
};
112
113
clean_up = function()
114
{
115
    if (persistent == true)
116
        persistent = false;
117
    if (sprite_exists(_noellehouse_sprite))
118
        sprite_delete(_noellehouse_sprite);
119
    if (sprite_exists(_school_sprite))
120
        sprite_delete(_school_sprite);
121
    if (sprite_exists(_dess_sprite))
122
        sprite_delete(_dess_sprite);
123
    if (surface_exists(surf))
124
        surface_free(surf);
125
    instance_destroy();
126
};