Deltarune (Chapter 2) script viewer

← back to main script listing

gml_Object_obj_actor_Step_0

(view raw script w/o annotations or w/e)
1
if (auto_walk == 1)
2
{
3
    if (walk == 1)
4
    {
5
        v_speed = 0;
6
        if (fake_speed != 0)
7
            v_speed = fake_speed;
8
        if (speed != 0)
9
            v_speed = speed;
10
        if (v_speed > 0)
11
        {
12
            new_image_speed = v_speed / (10 * dz);
13
            image_speed = new_image_speed;
14
            if (new_image_speed <= 0.25)
15
                image_speed = 0.25;
16
            if (new_image_speed >= 1)
17
                image_speed = 0.5;
18
            if (stopped == 1)
19
            {
20
                image_index = 1;
21
                stopped = 0;
22
            }
23
        }
24
        if (v_speed == 0)
25
        {
26
            stopped = 1;
27
            image_index = 0;
28
            image_speed = 0;
29
        }
30
    }
31
}
32
if (auto_facing == 1)
33
{
34
    v_vspeed = 0;
35
    v_hspeed = 0;
36
    if (fake_speed != 0)
37
    {
38
        v_vspeed = lengthdir_y(fake_speed, fake_direction);
39
        v_hspeed = lengthdir_x(fake_speed, fake_direction);
40
    }
41
    if (hspeed != 0)
42
        v_hspeed = hspeed;
43
    if (vspeed != 0)
44
        v_vspeed = vspeed;
45
    if (v_vspeed > 0.05)
46
        sprite_index = dsprite;
47
    if (v_vspeed < -0.05)
48
        sprite_index = usprite;
49
    if (abs(v_hspeed) > abs(v_vspeed) && v_hspeed > 0.05)
50
        sprite_index = rsprite;
51
    if (abs(v_hspeed) > abs(v_vspeed) && v_hspeed < -0.05)
52
        sprite_index = lsprite;
53
}
54
if (spinspeed != 0)
55
{
56
    spintimer += (1 / spinspeed);
57
    if (spintimer >= 1)
58
    {
59
        if (facing == "d")
60
            facing = "l";
61
        else if (facing == "l")
62
            facing = "u";
63
        else if (facing == "u")
64
            facing = "r";
65
        else if (facing == "r")
66
            facing = "d";
67
        spintimer = 0;
68
    }
69
    if (spintimer <= -1)
70
    {
71
        if (facing == "d")
72
            facing = "r";
73
        else if (facing == "l")
74
            facing = "d";
75
        else if (facing == "u")
76
            facing = "l";
77
        else if (facing == "r")
78
            facing = "u";
79
        spintimer = 0;
80
    }
81
    if (facing == "d")
82
        sprite_index = dsprite;
83
    if (facing == "r")
84
        sprite_index = rsprite;
85
    if (facing == "u")
86
        sprite_index = usprite;
87
    if (facing == "l")
88
        sprite_index = lsprite;
89
}
90
else
91
{
92
    spintimer = 0;
93
}
94
if (debug_killtimer > 0)
95
{
96
    debug_killtimer--;
97
    if (debug_killtimer <= 0)
98
        instance_destroy();
99
}
100
if (auto_depth == 1)
101
{
102
    scr_depth
scr_depth

function scr_depth() { depth = 100000 - ((y * 10) + (sprite_height * 10)); }
();
103
    depth += depthbonus;
104
}
105
sinerx = 0;
106
sinery = 0;
107
if (siner_add0 != 0)
108
{
109
    siner0 += siner_add0;
110
    if (siner_type0 == "sin")
111
        sinmove = sin(siner0) * siner_amplitude0;
112
    else
113
        sinmove = cos(siner0) * siner_amplitude0;
114
    if (siner_visual0 == 1)
115
    {
116
        sinerx += lengthdir_x(sinmove, siner_direction0);
117
        sinery += lengthdir_y(sinmove, siner_direction0);
118
    }
119
    else
120
    {
121
        x += lengthdir_x(sinmove, siner_direction0);
122
        y += lengthdir_y(sinmove, siner_direction0);
123
    }
124
}
125
if (siner_add1 != 0)
126
{
127
    siner1 += siner_add1;
128
    if (siner_type1 == "sin")
129
        sinmove = sin(siner1) * siner_amplitude1;
130
    else
131
        sinmove = cos(siner1) * siner_amplitude1;
132
    if (siner_visual1 == 1)
133
    {
134
        sinerx += lengthdir_x(sinmove, siner_direction1);
135
        sinery += lengthdir_y(sinmove, siner_direction1);
136
    }
137
    else
138
    {
139
        x += lengthdir_x(sinmove, siner_direction1);
140
        y += lengthdir_y(sinmove, siner_direction1);
141
    }
142
}
143
if (shakeamt > 0)
144
{
145
    shaketimer--;
146
    if (shaketimer <= 0)
147
    {
148
        shakex = random_range(-shakeamt, shakeamt);
149
        shakey = random_range(-shakeamt, shakeamt);
150
        shaketimer = shaketime;
151
    }
152
}
153
else
154
{
155
    shakex = 0;
156
    shakey = 0;
157
}
158
if (stepsound == 1)
159
{
160
    if (stepsound_count == 0)
161
    {
162
        snd_play(snd_step1);
163
        stepsound_count = 1;
164
    }
165
    else if (stepsound_count == 1)
166
    {
167
        snd_play(snd_step2);
168
        stepsound_count = 0;
169
    }
170
    stepsound = 0;
171
}