Deltarune (Chapter 2) script viewer

← back to main script listing

gml_Object_obj_sneo_guymaker_Step_0

(view raw script w/o annotations or w/e)
1
xx = __view_get(e__VW.XView, 0);
2
yy = __view_get(e__VW.YView, 0);
3
timer++;
4
if (type == 1 || type == 2 || type == 3 || type == 4 || type == 5 || type == 6 || type == 7)
5
{
6
    if (timer == 1)
7
    {
8
        if (type == 1)
9
        {
10
            row = choose(0, 1);
11
            if (prevrow == 2)
12
                row = choose(0, 1);
13
        }
14
        if (type == 2)
15
        {
16
            var aa = choose(0, 1, 2);
17
            if (prevrowy == 0)
18
                aa = choose(1, 2);
19
            if (prevrowy == 1)
20
                aa = choose(0, 2);
21
            if (prevrowy == 2)
22
                aa = choose(0, 1);
23
            rowy = (yy + 210) - (46 * aa);
24
            prevrowy = aa;
25
            row = 2;
26
        }
27
        if (type == 3 || type == 4)
28
        {
29
            rowy = (yy + 210) - (40 * choose(0, 1));
30
            row = choose(0, 1, 3, 6);
31
            if (prevrow == 2)
32
                row = choose(0, 1, 3, 6);
33
            if (prevrow == 3)
34
                row = choose(0, 1);
35
            if (row == 3 && firstspawn == 0)
36
                row = choose(0, 1);
37
            firstspawn = 1;
38
        }
39
        if (type == 5)
40
        {
41
            rowy = (yy + 210) - (40 * choose(0, 1, 2));
42
            row = choose(0, 1, 2, 2, 3, 6);
43
            if (prevrow == 2)
44
                row = choose(0, 1, 3, 6);
45
            if (prevrow == 3)
46
                row = choose(0, 1, 2);
47
        }
48
        if (type == 6)
49
            row = 6;
50
        if (type == 7)
51
            row = 7;
52
    }
53
    if (timer == 5 || timer == 10 || timer == 15 || timer == 20)
54
    {
55
        if (row == 0 || row == 1 || row == 2)
56
        {
57
            guy = instance_create(xx + 700, yy + 280, obj_sneo_lilguy);
58
            guy.hspeed = -18;
59
            guy.friction = -0.1;
60
            guy.vspeed = -2;
61
            guy.alarm[0] = 44;
62
            guy.alarm[1] = 40;
63
            guy.alarm[2] = 32;
64
            guy.gravity = 0.5;
65
            guy.gravity_direction = 0;
66
            guy.destroyable = 1;
67
            guy.image_blend = #00A2E8;
68
            guy.changedirection = 0;
69
            guy.altdirection = 0;
70
            guy.altspeed = 4;
71
            guy.altfriction = -0.2;
72
            guy.altgravity = 0;
73
            if (type == 2)
74
                guy.alarm[0] = 44;
75
            if (row == 1)
76
            {
77
                guy.y -= 240;
78
                guy.vspeed = -guy.vspeed;
79
            }
80
            if (row == 2)
81
            {
82
                guy.y -= 120;
83
                guy.vspeed = 0;
84
                guy.hspeed = -21;
85
            }
86
            if (row == 2 && type == 2)
87
            {
88
                guy.hspeed = -21;
89
                guy.gravity = 0;
90
                guy.friction = 0.5;
91
                guy.alarm[0] = 36;
92
                guy.changedirection = 1;
93
                guy.altdirection = guy.direction;
94
            }
95
            if ((type == 2 || type == 3 || type == 4 || type == 5) && row == 2)
96
                guy.y = rowy;
97
        }
98
        if (row == 3 && timer != 20)
99
        {
100
            for (guyi = 0; guyi < 2; guyi++)
101
            {
102
                guy[guyi] = instance_create(xx + 300, (yy - 40) + (400 * guyi), obj_sneo_lilguy);
103
                guy[guyi].vspeed = 18 - (36 * guyi);
104
                guy[guyi].alarm[0] = 44;
105
                guy[guyi].alarm[1] = 40;
106
                guy[guyi].alarm[2] = 32;
107
                guy[guyi].gravity = 0.8 - (1.6 * guyi);
108
                guy[guyi].gravity_direction = 90;
109
                guy[guyi].destroyable = 1;
110
            }
111
        }
112
        if (row == 6 && timer == 5)
113
        {
114
            spawncount = 2;
115
            var a = 0;
116
            repeat (spawncount)
117
            {
118
                guy = instance_create(xx + 410 + (a * 70), (yy - 20) + 0, obj_sneo_lilguy);
119
                guy.vspeed = 15;
120
                guy.alarm[0] = 44;
121
                guy.alarm[1] = 30;
122
                guy.alarm[2] = 32;
123
                guy.gravity = 0.53;
124
                guy.gravity_direction = 90;
125
                guy.destroyable = 1;
126
                guy = instance_create(xx + 445 + (a * 70), (yy - 20) + 400, obj_sneo_lilguy);
127
                guy.vspeed = -15;
128
                guy.alarm[0] = 44;
129
                guy.alarm[1] = 40;
130
                guy.alarm[2] = 32;
131
                guy.gravity = -0.53;
132
                guy.gravity_direction = 90;
133
                guy.destroyable = 1;
134
                a++;
135
            }
136
        }
137
        if (row == 7 && timer != 20)
138
        {
139
            guy = instance_create(xx + 630, yy + 100, obj_sneo_lilguy);
140
            guy.alarm[0] = 44;
141
            guy.alarm[1] = 40;
142
            guy.alarm[2] = 32;
143
            guy.destroyable = 1;
144
            with (guy)
145
                path_start(path_sneo_head_path1, 11, path_action_stop, 0);
146
        }
147
    }
148
    if (type == 2 && timer >= 41)
149
        timer = 0;
150
    if (type == 3 && timer >= 69)
151
        timer = 0;
152
    if (type == 6 && timer >= 69)
153
        timer = 0;
154
    if (type == 4 && timer >= 50)
155
        timer = 0;
156
    if (type == 5 && timer >= 69)
157
        timer = 0;
158
    if (timer >= 50)
159
        timer = 0;
160
    if (timer == 0)
161
        prevrow = row;
162
}
163
164
enum e__VW
165
{
166
    XView,
167
    YView,
168
    WView,
169
    HView,
170
    Angle,
171
    HBorder,
172
    VBorder,
173
    HSpeed,
174
    VSpeed,
175
    Object,
176
    Visible,
177
    XPort,
178
    YPort,
179
    WPort,
180
    HPort,
181
    Camera,
182
    SurfaceID
183
}