1 |
depth = obj_queen_enemy.depth - 1; |
2 |
shieldsiner++; |
3 |
y += (sin(shieldsiner / 6) * 0.5); |
4 |
if (shaketimer > 0) |
5 |
{ |
6 |
x = (xstart - shaketimer) + (shaketimer * 2); |
7 |
y = (ystart - shaketimer) + (shaketimer * 2); |
8 |
shaketimer--; |
9 |
} |
10 |
if (hurtsfxcon == 1) |
11 |
{ |
12 |
hurtsfxtimer++; |
13 |
if (!audio_is_playing(snd_swallow)) |
14 |
snd_play(snd_swallow); |
15 |
if (hurtsfxtimer == 10) |
16 |
{ |
17 |
hurtsfxcon = 0; |
18 |
hurtsfxtimer = 0; |
19 |
} |
20 |
} |
21 |
if ((obj_queen_enemy.shieldhp / obj_queen_enemy.shieldmaxhp) <= (obj_queen_enemy.shieldacthp / obj_queen_enemy.shieldactmaxhp)) |
22 |
{ |
23 |
var a = obj_queen_enemy.shieldhp / obj_queen_enemy.shieldmaxhp; |
24 |
if (shieldsize == 7) |
25 |
{ |
26 |
if (a < 0.8571428571428571) |
27 |
shieldpiece_sprite_index[0] = spr_queenshield_pieces_hurt; |
28 |
else |
29 |
shieldpiece_sprite_index[0] = spr_queenshield_pieces; |
30 |
if (a < 0.7142857142857143) |
31 |
shieldpiece_sprite_index[1] = spr_queenshield_pieces_hurt; |
32 |
else |
33 |
shieldpiece_sprite_index[1] = spr_queenshield_pieces; |
34 |
if (a < 0.5714285714285714) |
35 |
shieldpiece_sprite_index[2] = spr_queenshield_pieces_hurt; |
36 |
else |
37 |
shieldpiece_sprite_index[2] = spr_queenshield_pieces; |
38 |
if (a < 0.42857142857142855) |
39 |
shieldpiece_sprite_index[3] = spr_queenshield_pieces_hurt; |
40 |
else |
41 |
shieldpiece_sprite_index[3] = spr_queenshield_pieces; |
42 |
if (a < 0.2857142857142857) |
43 |
shieldpiece_sprite_index[4] = spr_queenshield_pieces_hurt; |
44 |
else |
45 |
shieldpiece_sprite_index[4] = spr_queenshield_pieces; |
46 |
if (a < 0.14285714285714285) |
47 |
shieldpiece_sprite_index[5] = spr_queenshield_pieces_hurt; |
48 |
else |
49 |
shieldpiece_sprite_index[5] = spr_queenshield_pieces; |
50 |
if (a <= 0) |
51 |
shieldpiece_sprite_index[6] = spr_queenshield_pieces_hurt; |
52 |
else |
53 |
shieldpiece_sprite_index[6] = spr_queenshield_pieces; |
54 |
} |
55 |
if (shieldsize == 10) |
56 |
{ |
57 |
if (a < 0.9) |
58 |
shieldpiece_sprite_index[0] = spr_queenshield_pieces_hurt; |
59 |
else |
60 |
shieldpiece_sprite_index[0] = spr_queenshield_pieces; |
61 |
if (a < 0.8) |
62 |
shieldpiece_sprite_index[1] = spr_queenshield_pieces_hurt; |
63 |
else |
64 |
shieldpiece_sprite_index[1] = spr_queenshield_pieces; |
65 |
if (a < 0.7) |
66 |
shieldpiece_sprite_index[2] = spr_queenshield_pieces_hurt; |
67 |
else |
68 |
shieldpiece_sprite_index[2] = spr_queenshield_pieces; |
69 |
if (a < 0.6) |
70 |
shieldpiece_sprite_index[3] = spr_queenshield_pieces_hurt; |
71 |
else |
72 |
shieldpiece_sprite_index[3] = spr_queenshield_pieces; |
73 |
if (a < 0.5) |
74 |
shieldpiece_sprite_index[4] = spr_queenshield_pieces_hurt; |
75 |
else |
76 |
shieldpiece_sprite_index[4] = spr_queenshield_pieces; |
77 |
if (a < 0.4) |
78 |
shieldpiece_sprite_index[5] = spr_queenshield_pieces_hurt; |
79 |
else |
80 |
shieldpiece_sprite_index[5] = spr_queenshield_pieces; |
81 |
if (a < 0.3) |
82 |
shieldpiece_sprite_index[6] = spr_queenshield_pieces_hurt; |
83 |
else |
84 |
shieldpiece_sprite_index[6] = spr_queenshield_pieces; |
85 |
if (a < 0.2) |
86 |
shieldpiece_sprite_index[7] = spr_queenshield_pieces_hurt; |
87 |
else |
88 |
shieldpiece_sprite_index[7] = spr_queenshield_pieces; |
89 |
if (a < 0.1) |
90 |
shieldpiece_sprite_index[8] = spr_queenshield_pieces_hurt; |
91 |
else |
92 |
shieldpiece_sprite_index[8] = spr_queenshield_pieces; |
93 |
if (a <= 0) |
94 |
shieldpiece_sprite_index[9] = spr_queenshield_pieces_hurt; |
95 |
else |
96 |
shieldpiece_sprite_index[9] = spr_queenshield_pieces; |
97 |
} |
98 |
if (shieldsize == 12) |
99 |
{ |
100 |
if (a < 0.9166666666666666) |
101 |
shieldpiece_sprite_index[0] = spr_queenshield_pieces_hurt; |
102 |
else |
103 |
shieldpiece_sprite_index[0] = spr_queenshield_pieces; |
104 |
if (a < 0.8333333333333334) |
105 |
shieldpiece_sprite_index[1] = spr_queenshield_pieces_hurt; |
106 |
else |
107 |
shieldpiece_sprite_index[1] = spr_queenshield_pieces; |
108 |
if (a < 0.75) |
109 |
shieldpiece_sprite_index[2] = spr_queenshield_pieces_hurt; |
110 |
else |
111 |
shieldpiece_sprite_index[2] = spr_queenshield_pieces; |
112 |
if (a < (2/3)) |
113 |
shieldpiece_sprite_index[3] = spr_queenshield_pieces_hurt; |
114 |
else |
115 |
shieldpiece_sprite_index[3] = spr_queenshield_pieces; |
116 |
if (a < 0.5833333333333334) |
117 |
shieldpiece_sprite_index[4] = spr_queenshield_pieces_hurt; |
118 |
else |
119 |
shieldpiece_sprite_index[4] = spr_queenshield_pieces; |
120 |
if (a < 0.5) |
121 |
shieldpiece_sprite_index[5] = spr_queenshield_pieces_hurt; |
122 |
else |
123 |
shieldpiece_sprite_index[5] = spr_queenshield_pieces; |
124 |
if (a < 0.4166666666666667) |
125 |
shieldpiece_sprite_index[6] = spr_queenshield_pieces_hurt; |
126 |
else |
127 |
shieldpiece_sprite_index[6] = spr_queenshield_pieces; |
128 |
if (a < (1/3)) |
129 |
shieldpiece_sprite_index[7] = spr_queenshield_pieces_hurt; |
130 |
else |
131 |
shieldpiece_sprite_index[7] = spr_queenshield_pieces; |
132 |
if (a < 0.25) |
133 |
shieldpiece_sprite_index[8] = spr_queenshield_pieces_hurt; |
134 |
else |
135 |
shieldpiece_sprite_index[8] = spr_queenshield_pieces; |
136 |
if (a < 0.16666666666666666) |
137 |
shieldpiece_sprite_index[9] = spr_queenshield_pieces_hurt; |
138 |
else |
139 |
shieldpiece_sprite_index[9] = spr_queenshield_pieces; |
140 |
if (a < 0.08333333333333333) |
141 |
shieldpiece_sprite_index[10] = spr_queenshield_pieces_hurt; |
142 |
else |
143 |
shieldpiece_sprite_index[10] = spr_queenshield_pieces; |
144 |
if (a <= 0) |
145 |
shieldpiece_sprite_index[11] = spr_queenshield_pieces_hurt; |
146 |
else |
147 |
shieldpiece_sprite_index[11] = spr_queenshield_pieces; |
148 |
} |
149 |
} |
150 |
else |
151 |
{ |
152 |
var a = obj_queen_enemy.shieldacthp / obj_queen_enemy.shieldactmaxhp; |
153 |
if (shieldsize == 7) |
154 |
{ |
155 |
if (a < 0.8571428571428571) |
156 |
shieldpiece_sprite_index[0] = spr_queenshield_pieces_hurt; |
157 |
else |
158 |
shieldpiece_sprite_index[0] = spr_queenshield_pieces; |
159 |
if (a < 0.7142857142857143) |
160 |
shieldpiece_sprite_index[1] = spr_queenshield_pieces_hurt; |
161 |
else |
162 |
shieldpiece_sprite_index[1] = spr_queenshield_pieces; |
163 |
if (a < 0.5714285714285714) |
164 |
shieldpiece_sprite_index[2] = spr_queenshield_pieces_hurt; |
165 |
else |
166 |
shieldpiece_sprite_index[2] = spr_queenshield_pieces; |
167 |
if (a < 0.42857142857142855) |
168 |
shieldpiece_sprite_index[3] = spr_queenshield_pieces_hurt; |
169 |
else |
170 |
shieldpiece_sprite_index[3] = spr_queenshield_pieces; |
171 |
if (a < 0.2857142857142857) |
172 |
shieldpiece_sprite_index[4] = spr_queenshield_pieces_hurt; |
173 |
else |
174 |
shieldpiece_sprite_index[4] = spr_queenshield_pieces; |
175 |
if (a < 0.14285714285714285) |
176 |
shieldpiece_sprite_index[5] = spr_queenshield_pieces_hurt; |
177 |
else |
178 |
shieldpiece_sprite_index[5] = spr_queenshield_pieces; |
179 |
if (a <= 0) |
180 |
shieldpiece_sprite_index[6] = spr_queenshield_pieces_hurt; |
181 |
else |
182 |
shieldpiece_sprite_index[6] = spr_queenshield_pieces; |
183 |
} |
184 |
if (shieldsize == 10) |
185 |
{ |
186 |
if (a < 0.9) |
187 |
shieldpiece_sprite_index[0] = spr_queenshield_pieces_hurt; |
188 |
else |
189 |
shieldpiece_sprite_index[0] = spr_queenshield_pieces; |
190 |
if (a < 0.8) |
191 |
shieldpiece_sprite_index[1] = spr_queenshield_pieces_hurt; |
192 |
else |
193 |
shieldpiece_sprite_index[1] = spr_queenshield_pieces; |
194 |
if (a < 0.7) |
195 |
shieldpiece_sprite_index[2] = spr_queenshield_pieces_hurt; |
196 |
else |
197 |
shieldpiece_sprite_index[2] = spr_queenshield_pieces; |
198 |
if (a < 0.6) |
199 |
shieldpiece_sprite_index[3] = spr_queenshield_pieces_hurt; |
200 |
else |
201 |
shieldpiece_sprite_index[3] = spr_queenshield_pieces; |
202 |
if (a < 0.5) |
203 |
shieldpiece_sprite_index[4] = spr_queenshield_pieces_hurt; |
204 |
else |
205 |
shieldpiece_sprite_index[4] = spr_queenshield_pieces; |
206 |
if (a < 0.4) |
207 |
shieldpiece_sprite_index[5] = spr_queenshield_pieces_hurt; |
208 |
else |
209 |
shieldpiece_sprite_index[5] = spr_queenshield_pieces; |
210 |
if (a < 0.3) |
211 |
shieldpiece_sprite_index[6] = spr_queenshield_pieces_hurt; |
212 |
else |
213 |
shieldpiece_sprite_index[6] = spr_queenshield_pieces; |
214 |
if (a < 0.2) |
215 |
shieldpiece_sprite_index[7] = spr_queenshield_pieces_hurt; |
216 |
else |
217 |
shieldpiece_sprite_index[7] = spr_queenshield_pieces; |
218 |
if (a < 0.1) |
219 |
shieldpiece_sprite_index[8] = spr_queenshield_pieces_hurt; |
220 |
else |
221 |
shieldpiece_sprite_index[8] = spr_queenshield_pieces; |
222 |
if (a <= 0) |
223 |
shieldpiece_sprite_index[9] = spr_queenshield_pieces_hurt; |
224 |
else |
225 |
shieldpiece_sprite_index[9] = spr_queenshield_pieces; |
226 |
} |
227 |
if (shieldsize == 12) |
228 |
{ |
229 |
if (a < 0.9166666666666666) |
230 |
shieldpiece_sprite_index[0] = spr_queenshield_pieces_hurt; |
231 |
else |
232 |
shieldpiece_sprite_index[0] = spr_queenshield_pieces; |
233 |
if (a < 0.8333333333333334) |
234 |
shieldpiece_sprite_index[1] = spr_queenshield_pieces_hurt; |
235 |
else |
236 |
shieldpiece_sprite_index[1] = spr_queenshield_pieces; |
237 |
if (a < 0.75) |
238 |
shieldpiece_sprite_index[2] = spr_queenshield_pieces_hurt; |
239 |
else |
240 |
shieldpiece_sprite_index[2] = spr_queenshield_pieces; |
241 |
if (a < (2/3)) |
242 |
shieldpiece_sprite_index[3] = spr_queenshield_pieces_hurt; |
243 |
else |
244 |
shieldpiece_sprite_index[3] = spr_queenshield_pieces; |
245 |
if (a < 0.5833333333333334) |
246 |
shieldpiece_sprite_index[4] = spr_queenshield_pieces_hurt; |
247 |
else |
248 |
shieldpiece_sprite_index[4] = spr_queenshield_pieces; |
249 |
if (a < 0.5) |
250 |
shieldpiece_sprite_index[5] = spr_queenshield_pieces_hurt; |
251 |
else |
252 |
shieldpiece_sprite_index[5] = spr_queenshield_pieces; |
253 |
if (a < 0.4166666666666667) |
254 |
shieldpiece_sprite_index[6] = spr_queenshield_pieces_hurt; |
255 |
else |
256 |
shieldpiece_sprite_index[6] = spr_queenshield_pieces; |
257 |
if (a < (1/3)) |
258 |
shieldpiece_sprite_index[7] = spr_queenshield_pieces_hurt; |
259 |
else |
260 |
shieldpiece_sprite_index[7] = spr_queenshield_pieces; |
261 |
if (a < 0.25) |
262 |
shieldpiece_sprite_index[8] = spr_queenshield_pieces_hurt; |
263 |
else |
264 |
shieldpiece_sprite_index[8] = spr_queenshield_pieces; |
265 |
if (a < 0.16666666666666666) |
266 |
shieldpiece_sprite_index[9] = spr_queenshield_pieces_hurt; |
267 |
else |
268 |
shieldpiece_sprite_index[9] = spr_queenshield_pieces; |
269 |
if (a < 0.08333333333333333) |
270 |
shieldpiece_sprite_index[10] = spr_queenshield_pieces_hurt; |
271 |
else |
272 |
shieldpiece_sprite_index[10] = spr_queenshield_pieces; |
273 |
if (a <= 0) |
274 |
shieldpiece_sprite_index[11] = spr_queenshield_pieces_hurt; |
275 |
else |
276 |
shieldpiece_sprite_index[11] = spr_queenshield_pieces; |
277 |
} |
278 |
} |
279 |
if (shieldpiece_yscale[0] > 0.1) |
280 |
{ |
281 |
if (movecon == 15 && shieldalpha > 0) |
282 |
shieldalpha -= 0.1; |
283 |
if (movecon != 15 && shieldalpha < 1) |
284 |
shieldalpha += 0.1; |
285 |
var x1, y1, x2, y2; |
286 |
if (obj_queen_enemy.sprite_index == spr_queen_chair_1_battle || obj_queen_enemy.sprite_index == spr_queen_chair_1_old) |
287 |
{ |
288 |
x1 = 10; |
289 |
y1 = 5; |
290 |
x2 = 10; |
291 |
y2 = 22; |
292 |
} |
293 |
else |
294 |
{ |
295 |
x1 = 17; |
296 |
y1 = 23; |
297 |
x2 = 17; |
298 |
y2 = 0; |
299 |
} |
300 |
if (appearcon == 3) |
301 |
{ |
302 |
var a = (16 - (16 * (shieldpiece_yscale[0] / 2))) * 2; |
303 |
draw_set_alpha(shieldalpha * 0.8); |
304 |
draw_set_color(c_lime); |
305 |
draw_line(queenhandx + x1, queenhandy - y1, x + 14, (shieldpiece_y[0] + y) - 48); |
306 |
draw_line(queenhandx + x2, queenhandy + y2, x + 81, (shieldpiece_y[shieldsize - 1] + y + 33) - a); |
307 |
} |
308 |
else |
309 |
{ |
310 |
draw_set_alpha(shieldalpha * 0.8); |
311 |
draw_set_color(c_lime); |
312 |
draw_line(queenhandx + x1, queenhandy - y1, x + 14, (shieldpiece_y[0] + y) - 48); |
313 |
draw_line(queenhandx + x2, queenhandy + y2, x + 81, shieldpiece_y[shieldsize - 1] + y + 33); |
314 |
} |
315 |
} |
316 |
if (shieldhurt == 0) |
317 |
{ |
318 |
for (i = 0; i < 14; i++) |
319 |
{ |
320 |
var ii = depthorder[13 - i]; |
321 |
draw_sprite_ext(shieldpiece_sprite_index[ii], shieldpiece_image_index[ii], shieldpiece_x[ii], shieldpiece_y[ii] + y, shieldpiece_xscale[ii], shieldpiece_yscale[ii], 0, c_white, shieldpiece_alpha[ii]); |
322 |
if (shieldpiece_fadecon[ii] == 1) |
323 |
{ |
324 |
if (shieldpiece_fadetimer[ii] < 10) |
325 |
shieldpiece_fadetimer[ii]++; |
326 |
draw_sprite_ext(spr_queenshield_pieces_hurt, shieldpiece_image_index[ii], shieldpiece_x[ii], shieldpiece_y[ii] + y, shieldpiece_xscale[ii], shieldpiece_yscale[ii], 0, c_white, shieldpiece_fadetimer[ii] / 10); |
327 |
} |
328 |
if (shieldpiece_fadecon[ii] == 2) |
329 |
{ |
330 |
shieldpiece_fadetimer[ii]--; |
331 |
if (shieldpiece_fadetimer[ii] == 0) |
332 |
shieldpiece_fadecon[ii] = 0; |
333 |
draw_sprite_ext(spr_queenshield_pieces_hurt, shieldpiece_image_index[ii], shieldpiece_x[ii], shieldpiece_y[ii] + y, shieldpiece_xscale[ii], shieldpiece_yscale[ii], 0, c_white, shieldpiece_fadetimer[ii] / 10); |
334 |
} |
335 |
if (obj_queen_enemy.shieldhp <= 5 || obj_queen_enemy.shieldacthp < 1) |
336 |
{ |
337 |
imabouttobreak_siner += 0.5; |
338 |
imabouttobreak_alpha = 0.1 + (sin(imabouttobreak_siner) / 6); |
339 |
d3d_set_fog(true, c_white, 0, 1); |
340 |
if (shieldpiece_sprite_index[ii] != spr_nothing) |
341 |
draw_sprite_ext(spr_queenshield_pieces, shieldpiece_image_index[ii], shieldpiece_x[ii], shieldpiece_y[ii] + y, shieldpiece_xscale[ii], shieldpiece_yscale[ii], 0, c_white, imabouttobreak_alpha); |
342 |
d3d_set_fog(false, c_black, 0, 0); |
343 |
} |
344 |
} |
345 |
} |
346 |
repeat (3) |
347 |
{ |
348 |
if (appearcon == 1) |
349 |
{ |
350 |
if (shieldsize == 7) |
351 |
{ |
352 |
shieldpiece_y_origin[0] = 70; |
353 |
shieldpiece_y_origin[1] = 95; |
354 |
shieldpiece_y_origin[2] = 115; |
355 |
shieldpiece_y_origin[3] = 135; |
356 |
shieldpiece_y_origin[4] = 155; |
357 |
shieldpiece_y_origin[5] = 175; |
358 |
shieldpiece_y_origin[6] = 200; |
359 |
} |
360 |
if (shieldsize == 10) |
361 |
{ |
362 |
shieldpiece_y_origin[0] = 50; |
363 |
shieldpiece_y_origin[1] = 75; |
364 |
shieldpiece_y_origin[2] = 95; |
365 |
shieldpiece_y_origin[3] = 115; |
366 |
shieldpiece_y_origin[4] = 135; |
367 |
shieldpiece_y_origin[5] = 155; |
368 |
shieldpiece_y_origin[6] = 175; |
369 |
shieldpiece_y_origin[7] = 195; |
370 |
shieldpiece_y_origin[8] = 215; |
371 |
shieldpiece_y_origin[9] = 240; |
372 |
} |
373 |
if (shieldsize == 12) |
374 |
{ |
375 |
shieldpiece_y_origin[0] = 20; |
376 |
shieldpiece_y_origin[1] = 45; |
377 |
shieldpiece_y_origin[2] = 65; |
378 |
shieldpiece_y_origin[3] = 85; |
379 |
shieldpiece_y_origin[4] = 105; |
380 |
shieldpiece_y_origin[5] = 125; |
381 |
shieldpiece_y_origin[6] = 145; |
382 |
shieldpiece_y_origin[7] = 165; |
383 |
shieldpiece_y_origin[8] = 185; |
384 |
shieldpiece_y_origin[9] = 205; |
385 |
shieldpiece_y_origin[10] = 225; |
386 |
shieldpiece_y_origin[11] = 250; |
387 |
} |
388 |
for (i = 0; i < 14; i++) |
389 |
{ |
390 |
shieldpiece_yscale[i] = 2; |
391 |
shieldpiece_alpha[i] = 0; |
392 |
} |
393 |
appearcon = 0; |
394 |
movetype = 0; |
395 |
movetimer = 0; |
396 |
movecon = 1; |
397 |
} |
398 |
if (movecon == 1) |
399 |
{ |
400 |
movecon = 2; |
401 |
shieldpiece_fadecon[moveorder[movepiece]] = 1; |
402 |
} |
403 |
if (movecon == 2) |
404 |
{ |
405 |
movetimer += 2; |
406 |
shieldpiece_x[moveorder[movepiece]] = lerp_ease_out(shieldpiece_x_origin[moveorder[movepiece]], shieldpiece_x_origin[moveorder[movepiece]] + 15, movetimer / 10, 2); |
407 |
shieldpiece_alpha[moveorder[movepiece]] = lerp(0, 1, movetimer / 10); |
408 |
if (movetimer == 10) |
409 |
{ |
410 |
movetimer = 0; |
411 |
movecon = 3; |
412 |
} |
413 |
} |
414 |
if (movecon == 3) |
415 |
{ |
416 |
movetimer += 2; |
417 |
shieldpiece_y[moveorder[movepiece]] = lerp(shieldpiece_y[moveorder[movepiece]], shieldpiece_y_origin[moveorder[movepiece]], movetimer / 10); |
418 |
if (movetimer == 10) |
419 |
{ |
420 |
movetimer = 0; |
421 |
movecon = 4; |
422 |
shieldpiece_fadecon[moveorder[movepiece]] = 2; |
423 |
} |
424 |
event_user(2); |
425 |
} |
426 |
if (movecon == 4) |
427 |
{ |
428 |
movetimer += 2; |
429 |
shieldpiece_x[moveorder[movepiece]] = lerp_ease_out(shieldpiece_x_origin[moveorder[movepiece]] + 15, shieldpiece_x_origin[moveorder[movepiece]], movetimer / 10, 1); |
430 |
if (movetimer == 10) |
431 |
{ |
432 |
movetimer = 0; |
433 |
movecon = 5; |
434 |
} |
435 |
} |
436 |
if (movecon == 5) |
437 |
{ |
438 |
if (movepiece == (shieldsize - 1)) |
439 |
{ |
440 |
movecon = 0; |
441 |
movepiece = 0; |
442 |
} |
443 |
else |
444 |
{ |
445 |
movepiece++; |
446 |
movecon = 1; |
447 |
} |
448 |
} |
449 |
} |
450 |
repeat (5) |
451 |
{ |
452 |
if (appearcon == 2) |
453 |
{ |
454 |
appearcon = 0; |
455 |
movetype = 0; |
456 |
movetimer = 0; |
457 |
movecon = 10; |
458 |
} |
459 |
if (movecon == 10) |
460 |
{ |
461 |
movecon = 11; |
462 |
shieldpiece_fadecon[moveorder[movepiece]] = 1; |
463 |
} |
464 |
if (movecon == 11) |
465 |
{ |
466 |
movetimer += 2; |
467 |
shieldpiece_x[moveorder[movepiece]] = lerp_ease_out(shieldpiece_x_origin[moveorder[movepiece]], shieldpiece_x_origin[moveorder[movepiece]] + 15, movetimer / 10, 1); |
468 |
if (movetimer == 10) |
469 |
{ |
470 |
movetimer = 0; |
471 |
movecon = 12; |
472 |
} |
473 |
} |
474 |
if (movecon == 12) |
475 |
{ |
476 |
movetimer += 2; |
477 |
shieldpiece_y[moveorder[movepiece]] = lerp(shieldpiece_y_origin[moveorder[movepiece]], ystart + 135, movetimer / 10); |
478 |
if (movetimer == 10) |
479 |
{ |
480 |
movetimer = 0; |
481 |
movecon = 13; |
482 |
shieldpiece_fadecon[moveorder[movepiece]] = 2; |
483 |
} |
484 |
event_user(2); |
485 |
} |
486 |
if (movecon == 13) |
487 |
{ |
488 |
movetimer += 2; |
489 |
shieldpiece_x[moveorder[movepiece]] = lerp_ease_out(shieldpiece_x_origin[moveorder[movepiece]] + 15, shieldpiece_x_origin[moveorder[movepiece]], movetimer / 10, 2); |
490 |
if (movetimer == 10) |
491 |
{ |
492 |
movetimer = 0; |
493 |
movecon = 14; |
494 |
} |
495 |
} |
496 |
if (movecon == 14) |
497 |
{ |
498 |
if (movepiece == (shieldsize - 1)) |
499 |
{ |
500 |
movecon = 15; |
501 |
movepiece = 0; |
502 |
} |
503 |
else |
504 |
{ |
505 |
movepiece++; |
506 |
movecon = 10; |
507 |
} |
508 |
} |
509 |
if (movecon == 15) |
510 |
{ |
511 |
if (movetimer < 50) |
512 |
movetimer++; |
513 |
for (i = 0; i < 12; i++) |
514 |
shieldpiece_alpha[i] = lerp(1, 0, movetimer / 50); |
515 |
} |
516 |
} |
517 |
if (shieldhurt == 1) |
518 |
{ |
519 |
shieldx = (random(shieldhurttimer) - random(shieldhurttimer)) * 2; |
520 |
shieldhurttimer--; |
521 |
if (shieldhurttimer <= 0) |
522 |
shieldhurt = 0; |
523 |
for (i = 0; i < 12; i++) |
524 |
{ |
525 |
shieldpiece_x[i] = ((x + 39) - 6) + irandom(12); |
526 |
draw_sprite_ext(shieldpiece_sprite_index[i], shieldpiece_image_index[i], shieldpiece_x[i], shieldpiece_y[i] + y, shieldpiece_xscale[i], shieldpiece_yscale[i], 0, c_white, shieldpiece_alpha[i]); |
527 |
if (shieldhurt == 0) |
528 |
shieldpiece_x[i] = x + 39; |
529 |
} |
530 |
} |
531 |
if (shieldhurt == 2) |
532 |
{ |
533 |
event_user(1); |
534 |
instance_destroy(); |
535 |
} |
536 |
if (destroycon == 1) |
537 |
{ |
538 |
destroytimer++; |
539 |
if (destroytimer == 4) |
540 |
{ |
541 |
anim = instance_create(x, y, obj_queen_vector_explosion); |
542 |
anim.image_xscale = 1; |
543 |
anim.image_yscale = 1; |
544 |
} |
545 |
if (destroytimer == 8) |
546 |
{ |
547 |
anim = instance_create(x, y, obj_queen_vector_explosion); |
548 |
anim.image_xscale = 1; |
549 |
anim.image_yscale = 1; |
550 |
} |
551 |
if (destroytimer == 12) |
552 |
destroycon = 0; |
553 |
} |
554 |
draw_set_alpha(1); |