Deltarune (Chapter 4) script viewer

← back to main script listing

gml_Object_obj_titan_enemy_Draw_0

(view raw script w/o annotations or w/e)
1
var _x = 0;
2
var _y = 0;
3
if (i_ex(obj_shake))
4
    _x = obj_shake.shakex;
5
if (i_ex(obj_shake))
6
    _y = obj_shake.shakey;
7
x = ((camerastartx + camerawidth()) - 494) + _x;
8
y = (camerastarty - 88) + _y;
9
var _rumblealpha;
10
if (rumble)
11
{
12
    rumbletimer++;
13
    if ((rumbletimer % 2) == 0)
14
        x += shakepow;
15
    else
16
        x -= shakepow;
17
    _rumblealpha = 0.2 + (sin(rumbletimer * 0.2) * 0.2);
18
}
19
if (drawstate == "defense" || drawstate == "defense end")
20
{
21
    x = ((camerastartx + camerawidth()) - 500) + shakex + hurtspriteoffx + _x;
22
    y = (camerastarty - 88) + hurtspriteoffy + _y;
23
}
24
fsiner++;
25
var _sinerspeed = 0.16666666666666666;
26
if (slowdowncon == 1)
27
{
28
    slowdowntimer++;
29
    if (slowdowntimer < 90)
30
        _sinerspeed = lerp(0.16666666666666666, 0.05, slowdowntimer / 90);
31
    else
32
        _sinerspeed = 0.05;
33
}
34
if (rumble || pre_rumble)
35
    _sinerspeed = rumbler / 18;
36
siner += _sinerspeed;
37
var _chargeshakex = chargeshakex * chargeshakexsign;
38
if (chargeshakexsign == 1)
39
    chargeshakexsign = -1;
40
else
41
    chargeshakexsign = 1;
42
if (drawstate == "idle" || drawstate == "rumble" || drawstate == "crack" || drawstate == "crack2")
43
{
44
    draw_sprite_ext(spr_titan_0_backwing, siner, x, y, image_xscale, image_yscale, image_angle, image_blend, image_alpha);
45
    if (rumble)
46
    {
47
        d3d_set_fog(true, c_red, 0, 1);
48
        draw_sprite_ext(spr_titan_0_backwing, siner, x, y, image_xscale, image_yscale, image_angle, image_blend, _rumblealpha);
49
        d3d_set_fog(false, c_black, 0, 0);
50
    }
51
    draw_sprite_ext(spr_titan_1_backwing, siner, x, y, image_xscale, image_yscale, image_angle, image_blend, image_alpha);
52
    if (rumble)
53
    {
54
        d3d_set_fog(true, c_red, 0, 1);
55
        draw_sprite_ext(spr_titan_1_backwing, siner, x, y, image_xscale, image_yscale, image_angle, image_blend, _rumblealpha);
56
        d3d_set_fog(false, c_black, 0, 0);
57
    }
58
    draw_sprite_ext(spr_titan_2_backwing, siner, x, y, image_xscale, image_yscale, image_angle, image_blend, image_alpha);
59
    if (rumble)
60
    {
61
        d3d_set_fog(true, c_red, 0, 1);
62
        draw_sprite_ext(spr_titan_2_backwing, siner, x, y, image_xscale, image_yscale, image_angle, image_blend, _rumblealpha);
63
        d3d_set_fog(false, c_black, 0, 0);
64
    }
65
    draw_sprite_ext(spr_titan_3_backwing, siner, x, y, image_xscale, image_yscale, image_angle, image_blend, image_alpha);
66
    if (rumble)
67
    {
68
        d3d_set_fog(true, c_red, 0, 1);
69
        draw_sprite_ext(spr_titan_3_backwing, siner, x, y, image_xscale, image_yscale, image_angle, image_blend, _rumblealpha);
70
        d3d_set_fog(false, c_black, 0, 0);
71
    }
72
    if (starshootcon == 0)
73
    {
74
        if (shakex == 0 && drawstate != "crack" && !rumble)
75
        {
76
            draw_monster_body_part(spr_titan_4_backwing, siner, x, y);
77
        }
78
        else if ((shakex != 0 && drawstate == "crack") || rumble)
79
        {
80
            draw_monster_body_part(spr_titan_hurt, hurt_index, x + shakex + hurtspriteoffx, y + hurtspriteoffy);
81
            if (redflashtimer > 0)
82
            {
83
                d3d_set_fog(true, c_red, 0, 1);
84
                draw_sprite_ext(spr_titan_hurt, hurt_index, x + shakex + hurtspriteoffx, y + hurtspriteoffy, image_xscale, image_yscale, image_angle, image_blend, redflashtimer / 10);
85
                d3d_set_fog(false, c_black, 0, 0);
86
                redflashtimer--;
87
            }
88
        }
89
        else if (drawstate == "crack")
90
        {
91
            draw_monster_body_part(spr_cover_wings_defense_layer_4, siner, x + shakex + hurtspriteoffx + _chargeshakex, y + hurtspriteoffy);
92
            if (greenflashtimer > 0)
93
            {
94
                d3d_set_fog(true, c_lime, 0, 1);
95
                draw_sprite_ext(spr_cover_wings_defense_layer_4, siner, x + shakex + hurtspriteoffx + _chargeshakex, y + hurtspriteoffy, image_xscale, image_yscale, image_angle, image_blend, greenflashtimer / 10);
96
                d3d_set_fog(false, c_black, 0, 0);
97
            }
98
        }
99
        else if (starshootcon == 0 && shakex != 0 && drawstate != "crack" && drawstate != "crack2")
100
        {
101
            draw_monster_body_part(spr_cover_wings_defense_layer_4, siner, x, y);
102
        }
103
        else
104
        {
105
            draw_monster_body_part(spr_titan_4_backwing, siner, x, y);
106
        }
107
        if (darktimer > 0)
108
        {
109
            darktimer++;
110
            d3d_set_fog(true, c_black, 0, 1);
111
            if (darktimer < 30)
112
                draw_sprite_ext(spr_titan_4_backwing, siner, x + shakex + hurtspriteoffx, y + hurtspriteoffy, image_xscale, image_yscale, image_angle, image_blend, lerp(0, 0.8, darktimer / 30));
113
            if (darktimer >= 30 && darktimer < 60)
114
                draw_sprite_ext(spr_titan_4_backwing, siner, x + shakex + hurtspriteoffx, y + hurtspriteoffy, image_xscale, image_yscale, image_angle, image_blend, 0.8);
115
            if (darktimer >= 60 && darktimer < 90)
116
                draw_sprite_ext(spr_titan_4_backwing, siner, x + shakex + hurtspriteoffx, y + hurtspriteoffy, image_xscale, image_yscale, image_angle, image_blend, lerp(0.8, 0, (darktimer - 60) / 30));
117
            d3d_set_fog(false, c_black, 0, 0);
118
            if (darktimer >= 90)
119
                darktimer = 0;
120
        }
121
        if (greenflashtimer > 0)
122
            greenflashtimer--;
123
    }
124
    if (starshootcon > 0)
125
    {
126
        var _color = merge_color(c_red, c_white, redflashtimer / 10);
127
        redsiner++;
128
        if (shakex == 0 && !rumble)
129
        {
130
            if (drawstate == "rumble")
131
                draw_monster_body_part(spr_titan_rumble, siner, x + shakex + hurtspriteoffx + _chargeshakex, y + hurtspriteoffy);
132
            else if (drawstate == "crack")
133
                draw_monster_body_part(spr_cover_wings_defense_layer_4, siner, x + shakex + hurtspriteoffx + _chargeshakex, y + hurtspriteoffy);
134
            else
135
                draw_monster_body_part(spr_cover_wings_defense_layer_4, siner, x + shakex + hurtspriteoffx + _chargeshakex, y + hurtspriteoffy);
136
            if (redflashtimer > 0)
137
            {
138
                d3d_set_fog(true, _color, 0, 1);
139
                draw_sprite_ext(spr_cover_wings_defense_layer_4, siner, x + shakex + hurtspriteoffx, y + hurtspriteoffy, image_xscale, image_yscale, image_angle, image_blend, redflashtimer / 10);
140
                d3d_set_fog(false, c_black, 0, 0);
141
            }
142
            if (greenflashtimer > 0)
143
            {
144
                d3d_set_fog(true, c_lime, 0, 1);
145
                draw_sprite_ext(spr_cover_wings_defense_layer_4, siner, x + shakex + hurtspriteoffx, y + hurtspriteoffy, image_xscale, image_yscale, image_angle, image_blend, greenflashtimer / 10);
146
                d3d_set_fog(false, c_black, 0, 0);
147
            }
148
            d3d_set_fog(true, c_red, 0, 1);
149
            draw_sprite_ext(spr_cover_wings_defense_layer_4, siner, x + shakex + hurtspriteoffx, y + hurtspriteoffy, image_xscale, image_yscale, image_angle, image_blend, 0.1 + (sin(redsiner * 0.1) * 0.1));
150
            d3d_set_fog(false, c_black, 0, 0);
151
        }
152
        if (shakex != 0 || rumble)
153
        {
154
            draw_monster_body_part(spr_titan_hurt, hurt_index, x + shakex + hurtspriteoffx, y + hurtspriteoffy);
155
            if (redflashtimer > 0)
156
            {
157
                d3d_set_fog(true, _color, 0, 1);
158
                draw_sprite_ext(spr_titan_hurt, hurt_index, x + shakex + hurtspriteoffx, y + hurtspriteoffy, image_xscale, image_yscale, image_angle, image_blend, redflashtimer / 10);
159
                d3d_set_fog(false, c_black, 0, 0);
160
            }
161
            d3d_set_fog(true, c_red, 0, 1);
162
            draw_sprite_ext(spr_titan_hurt, hurt_index, x + shakex + hurtspriteoffx, y + hurtspriteoffy, image_xscale, image_yscale, image_angle, image_blend, 0.1 + (sin(redsiner * 0.1) * 0.1));
163
            d3d_set_fog(false, c_black, 0, 0);
164
        }
165
        if (redflashtimer > 0)
166
            redflashtimer--;
167
        if (greenflashtimer > 0)
168
            greenflashtimer--;
169
    }
170
    if (starshootcon == 0 && shakex != 0 && drawstate != "crack" && drawstate != "crack2")
171
        draw_monster_body_part(spr_titan_star_disappear, starshoottimer / 6, x + shakex + hurtspriteoffx, y + hurtspriteoffy);
172
    if (starshootcon == 1)
173
    {
174
        draw_monster_body_part(spr_titan_star_dissolve, starshoottimer / 3, x + shakex + hurtspriteoffx, y + hurtspriteoffy);
175
        gpu_set_blendmode(bm_add);
176
        draw_sprite_ext(spr_titan_star_dissolve, starshoottimer / 3, x + shakex + hurtspriteoffx + (irandom_range(-2, 2) * 2), y + hurtspriteoffy + (irandom_range(-2, 2) * 2), image_xscale, image_yscale, image_angle, #444444, image_alpha);
177
        draw_sprite_ext(spr_titan_star_dissolve, starshoottimer / 3, x + shakex + hurtspriteoffx + (irandom_range(-2, 2) * 2), y + hurtspriteoffy + (irandom_range(-2, 2) * 2), image_xscale, image_yscale, image_angle, #444444, image_alpha);
178
        gpu_set_blendmode(bm_normal);
179
    }
180
    if (starshootcon == 3)
181
        draw_monster_body_part(spr_titan_star_appear, starshoottimer / 3, x + shakex + hurtspriteoffx, y + hurtspriteoffy);
182
    if (drawstate == "crack2")
183
    {
184
        hurttimer2++;
185
        if (hurttimer2 == 1)
186
            draw_sprite_ext(spr_titan_star_break, 0, x + shakex + hurtspriteoffx, y + hurtspriteoffy, image_xscale, image_yscale, image_angle, c_red, image_alpha);
187
        if (hurttimer2 == 2)
188
            draw_sprite_ext(spr_titan_star_break, 0, x + shakex + hurtspriteoffx, y + hurtspriteoffy, image_xscale, image_yscale, image_angle, c_red, image_alpha);
189
        if (hurttimer2 == 3)
190
            draw_sprite_ext(spr_titan_star_break, 0, x + shakex + hurtspriteoffx, y + hurtspriteoffy, image_xscale, image_yscale, image_angle, c_white, image_alpha);
191
        if (hurttimer2 == 4)
192
            draw_sprite_ext(spr_titan_star_break, 0, x + shakex + hurtspriteoffx, y + hurtspriteoffy, image_xscale, image_yscale, image_angle, c_white, image_alpha);
193
        if (hurttimer2 == 5)
194
            draw_sprite_ext(spr_titan_star_break, 0, x + shakex + hurtspriteoffx, y + hurtspriteoffy, image_xscale, image_yscale, image_angle, c_black, image_alpha);
195
        if (hurttimer2 == 6)
196
            draw_sprite_ext(spr_titan_star_break, 0, x + shakex + hurtspriteoffx, y + hurtspriteoffy, image_xscale, image_yscale, image_angle, c_black, image_alpha);
197
        if (hurttimer2 > 6)
198
            draw_sprite_ext(spr_titan_star_break, 0, x + shakex + hurtspriteoffx, y + hurtspriteoffy, image_xscale, image_yscale, image_angle, c_white, image_alpha);
199
    }
200
    draw_sprite_ext(spr_titan_5_backwing, siner, x, y, image_xscale, image_yscale, image_angle, image_blend, image_alpha);
201
    if (rumble)
202
    {
203
        d3d_set_fog(true, c_red, 0, 1);
204
        draw_sprite_ext(spr_titan_5_backwing, siner, x, y, image_xscale, image_yscale, image_angle, image_blend, _rumblealpha);
205
        d3d_set_fog(false, c_black, 0, 0);
206
    }
207
    draw_sprite_ext(spr_titan_6_backwing, siner, x, y, image_xscale, image_yscale, image_angle, image_blend, image_alpha);
208
    if (rumble)
209
    {
210
        d3d_set_fog(true, c_red, 0, 1);
211
        draw_sprite_ext(spr_titan_6_backwing, siner, x, y, image_xscale, image_yscale, image_angle, image_blend, _rumblealpha);
212
        d3d_set_fog(false, c_black, 0, 0);
213
    }
214
    draw_sprite_ext(spr_titan_7_backwing, siner, x, y, image_xscale, image_yscale, image_angle, image_blend, image_alpha);
215
    if (rumble)
216
    {
217
        d3d_set_fog(true, c_red, 0, 1);
218
        draw_sprite_ext(spr_titan_7_backwing, siner, x, y, image_xscale, image_yscale, image_angle, image_blend, _rumblealpha);
219
        d3d_set_fog(false, c_black, 0, 0);
220
    }
221
    if (i_ex(obj_darkener))
222
    {
223
        draw_sprite_ext(spr_titan_5_backwing, siner, x, y, image_xscale, image_yscale, image_angle, image_blend, image_alpha);
224
        draw_sprite_ext(spr_titan_6_backwing, siner, x, y, image_xscale, image_yscale, image_angle, image_blend, image_alpha);
225
        draw_sprite_ext(spr_titan_7_backwing, siner, x, y, image_xscale, image_yscale, image_angle, image_blend, image_alpha);
226
    }
227
}
228
if (drawstate == "defense")
229
{
230
    draw_sprite_ext(spr_cover_wings_defense_layer_0, defense_timer, x, y, image_xscale, image_yscale, image_angle, image_blend, image_alpha);
231
    draw_sprite_ext(spr_cover_wings_defense_layer_1, defense_timer, x, y, image_xscale, image_yscale, image_angle, image_blend, image_alpha);
232
    draw_sprite_ext(spr_cover_wings_defense_layer_2, defense_timer, x, y, image_xscale, image_yscale, image_angle, image_blend, image_alpha);
233
    draw_sprite_ext(spr_cover_wings_defense_layer_3, defense_timer, x, y, image_xscale, image_yscale, image_angle, image_blend, image_alpha);
234
    draw_monster_body_part(spr_titan_hurt, hurt_index, x, y);
235
    if (starshootcon == 0)
236
        draw_monster_body_part(spr_titan_star_disappear, starshoottimer / 6, x, y);
237
    if (starshootcon == 3)
238
        draw_monster_body_part(spr_titan_star_appear, starshoottimer / 3, x, y);
239
    draw_sprite_ext(spr_cover_wings_defense_layer_5, defense_timer, x, y, image_xscale, image_yscale, image_angle, image_blend, image_alpha);
240
    draw_sprite_ext(spr_cover_wings_defense_layer_6, defense_timer, x, y, image_xscale, image_yscale, image_angle, image_blend, image_alpha);
241
    draw_sprite_ext(spr_cover_wings_defense_layer_7, defense_timer, x, y, image_xscale, image_yscale, image_angle, image_blend, image_alpha);
242
    if (defense_timer < 1)
243
    {
244
        defense_timer += 0.16666666666666666;
245
    }
246
    else if (defense_timer < 2)
247
    {
248
        defense_timer += 0.2;
249
    }
250
    else if (defense_timer < 3)
251
    {
252
        defense_timer += 0.25;
253
    }
254
    else if (defense_timer < 4)
255
    {
256
        defense_timer += (1/3);
257
    }
258
    else if (defense_timer < 5)
259
    {
260
        defense_timer += 0.5;
261
    }
262
    else if (defense_timer < 6)
263
    {
264
        defense_timer += (1/3);
265
    }
266
    else
267
    {
268
        drawstate = "defense end";
269
        defense_timer = 0;
270
    }
271
    if (defense_timer == 1)
272
        snd_play(snd_titan_wingshut);
273
    if (defense_timer == 2)
274
    {
275
        feathercon = 1;
276
        with (obj_heroparent)
277
        {
278
            var _adder = scr_add_instance_var(id, "siner", 4, 0, 30);
279
            _adder.roundvar = true;
280
        }
281
    }
282
}
283
if (drawstate == "defense end")
284
{
285
    if (spd < maxspd)
286
        spd += 0.2;
287
    var _spd = spd;
288
    var _distance = 4;
289
    var _xx = 0;
290
    var _yy = 0;
291
    rotation += _spd;
292
    var _c = dcos(rotation);
293
    var _s = dsin(rotation);
294
    _x = _xx + (_c * _distance) + (_s * _distance);
295
    _y = _yy + (-_s * _distance) + (_c * _distance);
296
    _c = dcos(rotation * -1);
297
    _s = dsin(rotation * -1);
298
    var _x2 = (_xx + (_c * _distance) + (_s * _distance)) * -1;
299
    var _y2 = (_yy + (-_s * _distance) + (_c * _distance)) * -1;
300
    _c = dcos(rotation - 90);
301
    _s = dsin(rotation - 90);
302
    var _x3 = _xx + (_c * _distance) + (_s * _distance);
303
    var _y3 = _yy + (-_s * _distance) + (_c * _distance);
304
    _c = dcos((rotation - 90) * -1);
305
    _s = dsin((rotation - 90) * -1);
306
    var _x4 = (_xx + (_c * _distance) + (_s * _distance)) * -1;
307
    var _y4 = (_yy + (-_s * _distance) + (_c * _distance)) * -1;
308
    _c = dcos(rotation - 180);
309
    _s = dsin(rotation - 180);
310
    var _x5 = _xx + (_c * _distance) + (_s * _distance);
311
    var _y5 = _yy + (-_s * _distance) + (_c * _distance);
312
    _c = dcos((rotation - 180) * -1);
313
    _s = dsin((rotation - 180) * -1);
314
    var _x6 = (_xx + (_c * _distance) + (_s * _distance)) * -1;
315
    var _y6 = (_yy + (-_s * _distance) + (_c * _distance)) * -1;
316
    _c = dcos(rotation - 270);
317
    _s = dsin(rotation - 270);
318
    var _x7 = _xx + (_c * _distance) + (_s * _distance);
319
    var _y7 = _yy + (-_s * _distance) + (_c * _distance);
320
    _c = dcos((rotation - 270) * -1);
321
    _s = dsin((rotation - 270) * -1);
322
    var _x8 = (_xx + (_c * _distance) + (_s * _distance)) * -1;
323
    var _y8 = (_yy + (-_s * _distance) + (_c * _distance)) * -1;
324
    if (rotation > 359)
325
        rotation -= 360;
326
    var __alpha = 0;
327
    if (darktimer > 0 && (phase == 8 || (phase == 7 && phaseturn == 3)))
328
    {
329
        if (darktimer > 0)
330
            darktimer++;
331
        if (darktimer >= 150)
332
            darktimer = 0;
333
        if (darktimer > 0 && darktimer < 100)
334
            __alpha = lerp(0, 0.9, darktimer / 100);
335
        if (darktimer >= 100 && darktimer < 110)
336
            __alpha = 0.9;
337
        if (darktimer >= 110 && darktimer < 120)
338
            __alpha = lerp(0.9, 0, (darktimer - 110) / 10);
339
    }
340
    else
341
    {
342
        if (darktimer > 0)
343
            darktimer++;
344
        if (darktimer >= 90)
345
            darktimer = 0;
346
        if (darktimer > 0 && darktimer < 70)
347
            __alpha = lerp(0, 0.9, darktimer / 70);
348
        if (darktimer >= 70 && darktimer < 80)
349
            __alpha = 0.9;
350
        if (darktimer >= 80 && darktimer < 90)
351
            __alpha = lerp(0.9, 0, (darktimer - 80) / 10);
352
    }
353
    draw_sprite_ext(spr_cover_wings_defense_layer_0, 6, x + _x, y + _y, image_xscale, image_yscale, image_angle, image_blend, image_alpha);
354
    if (darktimer > 0)
355
    {
356
        d3d_set_fog(true, c_black, 0, 1);
357
        draw_sprite_ext(spr_cover_wings_defense_layer_0, 6, x + _x, y + _y, image_xscale, image_yscale, image_angle, image_blend, __alpha);
358
        d3d_set_fog(false, c_black, 0, 0);
359
    }
360
    if (greenflashtimer > 0)
361
    {
362
        d3d_set_fog(true, c_lime, 0, 1);
363
        draw_sprite_ext(spr_cover_wings_defense_layer_0, 6, x + _x, y + _y, image_xscale, image_yscale, image_angle, image_blend, greenflashtimer / 10);
364
        d3d_set_fog(false, c_black, 0, 0);
365
    }
366
    draw_sprite_ext(spr_cover_wings_defense_layer_1, 6, x + _x2, y + _y2, image_xscale, image_yscale, image_angle, image_blend, image_alpha);
367
    if (darktimer > 0)
368
    {
369
        d3d_set_fog(true, c_black, 0, 1);
370
        draw_sprite_ext(spr_cover_wings_defense_layer_1, 6, x + _x2, y + _y2, image_xscale, image_yscale, image_angle, image_blend, __alpha);
371
        d3d_set_fog(false, c_black, 0, 0);
372
    }
373
    if (greenflashtimer > 0)
374
    {
375
        d3d_set_fog(true, c_lime, 0, 1);
376
        draw_sprite_ext(spr_cover_wings_defense_layer_1, 6, x + _x2, y + _y2, image_xscale, image_yscale, image_angle, image_blend, greenflashtimer / 10);
377
        d3d_set_fog(false, c_black, 0, 0);
378
    }
379
    draw_sprite_ext(spr_cover_wings_defense_layer_2, 6, x + _x3, y + _y3, image_xscale, image_yscale, image_angle, image_blend, image_alpha);
380
    if (darktimer > 0)
381
    {
382
        d3d_set_fog(true, c_black, 0, 1);
383
        draw_sprite_ext(spr_cover_wings_defense_layer_2, 6, x + _x3, y + _y3, image_xscale, image_yscale, image_angle, image_blend, __alpha);
384
        d3d_set_fog(false, c_black, 0, 0);
385
    }
386
    if (greenflashtimer > 0)
387
    {
388
        d3d_set_fog(true, c_lime, 0, 1);
389
        draw_sprite_ext(spr_cover_wings_defense_layer_2, 6, x + _x3, y + _y3, image_xscale, image_yscale, image_angle, image_blend, greenflashtimer / 10);
390
        d3d_set_fog(false, c_black, 0, 0);
391
    }
392
    draw_sprite_ext(spr_cover_wings_defense_layer_3, 6, x + _x4, y + _y4, image_xscale, image_yscale, image_angle, image_blend, image_alpha);
393
    if (darktimer > 0)
394
    {
395
        d3d_set_fog(true, c_black, 0, 1);
396
        draw_sprite_ext(spr_cover_wings_defense_layer_3, 6, x + _x4, y + _y4, image_xscale, image_yscale, image_angle, image_blend, __alpha);
397
        d3d_set_fog(false, c_black, 0, 0);
398
    }
399
    if (greenflashtimer > 0)
400
    {
401
        d3d_set_fog(true, c_lime, 0, 1);
402
        draw_sprite_ext(spr_cover_wings_defense_layer_3, 6, x + _x4, y + _y4, image_xscale, image_yscale, image_angle, image_blend, greenflashtimer / 10);
403
        d3d_set_fog(false, c_black, 0, 0);
404
    }
405
    draw_monster_body_part(spr_cover_wings_defense_layer_4, siner, x + _x7, y + _y7);
406
    if (darktimer > 0)
407
    {
408
        d3d_set_fog(true, c_black, 0, 1);
409
        draw_sprite_ext(spr_cover_wings_defense_layer_4, siner, x + _x7, y + _y7, image_xscale, image_yscale, image_angle, image_blend, __alpha);
410
        d3d_set_fog(false, c_black, 0, 0);
411
    }
412
    if (greenflashtimer > 0)
413
    {
414
        d3d_set_fog(true, c_lime, 0, 1);
415
        draw_sprite_ext(spr_cover_wings_defense_layer_4, siner, x + _x7, y + _y7, image_xscale, image_yscale, image_angle, image_blend, greenflashtimer / 10);
416
        d3d_set_fog(false, c_black, 0, 0);
417
    }
418
    if (starshootcon == 0)
419
    {
420
        draw_monster_body_part(spr_titan_star_disappear, starshoottimer / 6, x + _x7, y + _y7);
421
        if (darktimer > 0)
422
        {
423
            d3d_set_fog(true, c_black, 0, 1);
424
            draw_sprite_ext(spr_titan_star_disappear, starshoottimer / 6, x + _x7, y + _y7, image_xscale, image_yscale, image_angle, image_blend, __alpha);
425
            d3d_set_fog(false, c_black, 0, 0);
426
        }
427
        if (greenflashtimer > 0)
428
        {
429
            d3d_set_fog(true, c_lime, 0, 1);
430
            draw_sprite_ext(spr_titan_star_disappear, starshoottimer / 6, x + _x7, y + _y7, image_xscale, image_yscale, image_angle, image_blend, greenflashtimer / 10);
431
            d3d_set_fog(false, c_black, 0, 0);
432
        }
433
    }
434
    if (starshootcon == 1)
435
        draw_monster_body_part(spr_titan_star_dissolve, starshoottimer / 3, x + _x7, y + _y7);
436
    if (starshootcon == 3)
437
        draw_monster_body_part(spr_titan_star_appear, starshoottimer / 3, x + _x7, y + _y7);
438
    draw_sprite_ext(spr_cover_wings_defense_layer_5, 6, x + _x5, y + _y5, image_xscale, image_yscale, image_angle, image_blend, image_alpha);
439
    if (darktimer > 0)
440
    {
441
        d3d_set_fog(true, c_black, 0, 1);
442
        draw_sprite_ext(spr_cover_wings_defense_layer_5, 6, x + _x5, y + _y5, image_xscale, image_yscale, image_angle, image_blend, __alpha);
443
        d3d_set_fog(false, c_black, 0, 0);
444
    }
445
    if (greenflashtimer > 0)
446
    {
447
        d3d_set_fog(true, c_lime, 0, 1);
448
        draw_sprite_ext(spr_cover_wings_defense_layer_5, 6, x + _x5, y + _y5, image_xscale, image_yscale, image_angle, image_blend, greenflashtimer / 10);
449
        d3d_set_fog(false, c_black, 0, 0);
450
    }
451
    draw_sprite_ext(spr_cover_wings_defense_layer_6, 6, x + _x6, y + _y6, image_xscale, image_yscale, image_angle, image_blend, image_alpha);
452
    if (darktimer > 0)
453
    {
454
        d3d_set_fog(true, c_black, 0, 1);
455
        draw_sprite_ext(spr_cover_wings_defense_layer_6, 6, x + _x6, y + _y6, image_xscale, image_yscale, image_angle, image_blend, __alpha);
456
        d3d_set_fog(false, c_black, 0, 0);
457
    }
458
    if (greenflashtimer > 0)
459
    {
460
        d3d_set_fog(true, c_lime, 0, 1);
461
        draw_sprite_ext(spr_cover_wings_defense_layer_6, 6, x + _x6, y + _y6, image_xscale, image_yscale, image_angle, image_blend, greenflashtimer / 10);
462
        d3d_set_fog(false, c_black, 0, 0);
463
    }
464
    draw_sprite_ext(spr_cover_wings_defense_layer_7, 6, x + _x8, y + _y8, image_xscale, image_yscale, image_angle, image_blend, image_alpha);
465
    if (darktimer > 0)
466
    {
467
        d3d_set_fog(true, c_black, 0, 1);
468
        draw_sprite_ext(spr_cover_wings_defense_layer_7, 6, x + _x8, y + _y8, image_xscale, image_yscale, image_angle, image_blend, __alpha);
469
        d3d_set_fog(false, c_black, 0, 0);
470
    }
471
    if (greenflashtimer > 0)
472
    {
473
        d3d_set_fog(true, c_lime, 0, 1);
474
        draw_sprite_ext(spr_cover_wings_defense_layer_7, 6, x + _x8, y + _y8, image_xscale, image_yscale, image_angle, image_blend, greenflashtimer / 10);
475
        d3d_set_fog(false, c_black, 0, 0);
476
    }
477
    with (obj_titan_wing_marker)
478
    {
479
        if (wing_layer == 5)
480
        {
481
            xoff = _x5;
482
            yoff = _y5;
483
        }
484
        if (wing_layer == 6)
485
        {
486
            xoff = _x6;
487
            yoff = _y6;
488
        }
489
        if (wing_layer == 7)
490
        {
491
            xoff = _x8;
492
            yoff = _y8;
493
        }
494
        fog_alpha = __alpha;
495
    }
496
    if (greenflashtimer > 0)
497
        greenflashtimer--;
498
}
499
if (drawstate == "undefense")
500
{
501
    rumble = false;
502
    starshootcon = 3;
503
    undefense_timer -= (1/3);
504
    draw_sprite_ext(spr_cover_wings_defense_layer_0, undefense_timer, x, y, image_xscale, image_yscale, image_angle, image_blend, image_alpha);
505
    draw_sprite_ext(spr_cover_wings_defense_layer_1, undefense_timer, x, y, image_xscale, image_yscale, image_angle, image_blend, image_alpha);
506
    draw_sprite_ext(spr_cover_wings_defense_layer_2, undefense_timer, x, y, image_xscale, image_yscale, image_angle, image_blend, image_alpha);
507
    draw_sprite_ext(spr_cover_wings_defense_layer_3, undefense_timer, x, y, image_xscale, image_yscale, image_angle, image_blend, image_alpha);
508
    draw_monster_body_part(spr_cover_wings_defense_layer_4, undefense_timer, x, y);
509
    if (starshootcon == 0)
510
        draw_monster_body_part(spr_titan_star_disappear, starshoottimer / 6, x, y);
511
    if (starshootcon == 1)
512
        draw_monster_body_part(spr_titan_star_disappear, starshoottimer / 3, x, y);
513
    if (starshootcon == 3)
514
        draw_monster_body_part(spr_titan_star_appear, starshoottimer / 3, x, y);
515
    draw_sprite_ext(spr_cover_wings_defense_layer_5, undefense_timer, x, y, image_xscale, image_yscale, image_angle, image_blend, image_alpha);
516
    draw_sprite_ext(spr_cover_wings_defense_layer_6, undefense_timer, x, y, image_xscale, image_yscale, image_angle, image_blend, image_alpha);
517
    draw_sprite_ext(spr_cover_wings_defense_layer_7, undefense_timer, x, y, image_xscale, image_yscale, image_angle, image_blend, image_alpha);
518
    if (undefense_timer < 0.1)
519
    {
520
        undefense_timer = 6;
521
        drawstate = "idle";
522
    }
523
}
524
if (starshootcon == 1)
525
{
526
    starshoottimer++;
527
    if (starshoottimer == 28)
528
    {
529
        starshoottimer = 0;
530
        starshootcon = 2;
531
        var _dissolve = instance_create(x, y, obj_titan_star_dissolve);
532
        _dissolve.depth = depth - 1;
533
        _dissolve.con = 1;
534
    }
535
}
536
if (starshootcon == 3)
537
{
538
    starshoottimer++;
539
    if (starshoottimer == 18)
540
    {
541
        starshoottimer = 0;
542
        starshootcon = 0;
543
    }
544
}
545
if (becomeflash == 0)
546
    flash = 0;
547
becomeflash = 0;
548
if (feathercon == 1)
549
{
550
    feathertimer++;
551
    if (feathertimer == 5)
552
    {
553
        for (i = 0; i < 16; i++)
554
        {
555
            o = instance_create_depth(camerax() + 280 + irandom(100), cameray() + 120 + irandom(180), depth + 1, obj_titan_feather);
556
            o.direction = 130 + irandom(60);
557
            o.speed = random_range(5, 10);
558
            o.image_index = 2 + irandom(2);
559
        }
560
    }
561
    if (feathertimer >= 5)
562
    {
563
        feathercon = 0;
564
        feathertimer = 0;
565
    }
566
}
567
if (feathercon == 2)
568
{
569
    feathertimer++;
570
    if (feathertimer == 15)
571
    {
572
        for (i = 0; i < 10; i++)
573
        {
574
            o = instance_create_depth(camerax() + 280 + irandom(50), cameray() + 120 + irandom(180), depth + 1, obj_titan_feather);
575
            o.direction = 130 + irandom(60);
576
            o.speed = random_range(5, 7);
577
            o.image_index = 2 + irandom(2);
578
        }
579
    }
580
    if (feathertimer >= 20)
581
    {
582
        feathercon = 0;
583
        feathertimer = 0;
584
    }
585
}