image_speed = 0.25; footoffsetx = 54; footoffsety = 126; if (type == 0) { var floatheight = 80; if (con == 0) { if (image_yscale > 0) { scr_lerpvar("image_alpha", 0.5, 0, 10, 2, "in"); scr_lerpvar("y", y, y - floatheight, 10, 2, "out"); scr_script_delayed(scr_var, 15, "con", 1); } else { scr_lerpvar("image_alpha", 0.5, 0, 10, 2, "in"); scr_lerpvar("y", y, y + floatheight, 10, 2, "out"); scr_script_delayed(scr_var, 15, "con", 1); } con = -1; } if (con == 1) { var boxrandx = round(irandom_range(obj_growtangle.x - (obj_growtangle.sprite_width / 2), obj_growtangle.x + (obj_growtangle.sprite_width / 2)) / 2) * 2; var boxrandy = round(irandom_range(obj_growtangle.y - (obj_growtangle.sprite_height / 2), obj_growtangle.y + (obj_growtangle.sprite_height / 2)) / 2) * 2; if (boxrandy > obj_growtangle.y) { setxy(boxrandx - footoffsetx, boxrandy + footoffsety + floatheight); scr_lerpvar("y", y, y - floatheight, 10, 2, "in"); image_yscale = -2; } else { setxy(boxrandx - footoffsetx, boxrandy - footoffsety - floatheight); scr_lerpvar("y", y, y + floatheight, 10, 2, "in"); image_yscale = 2; } scr_script_delayed(scr_var, 20, "createbullet", 1); scr_lerpvar("image_alpha", 0, 0.5, 10, 2, "in"); scr_script_delayed(scr_var, 16, "con", 0); con = 2; } if (createbullet == 1) { var ycreate = y + footoffsety; if (image_yscale < 0) ycreate = y - footoffsety; var bulletCount = 7; var angleoffset = irandom(360); for (var i = 0; i < bulletCount; i++) { if (i_ex(obj_dbulletcontroller)) bullet = instance_create(x + footoffsetx, ycreate, obj_regularbullet); else bullet = instance_create(x + footoffsetx, ycreate, obj_marker); bullet.direction = ((i / bulletCount) * 360) + angleoffset; with (bullet) scr_script_delayed(scr_var, 20, "speed", 0.5); bullet.friction = -0.05; bullet.sprite_index = spr_bullet_werewire_spark; bullet.image_speed = 0; bullet.image_alpha = 0; with (bullet) scr_lerpvar("image_alpha", 0, 1 / bulletCount, 19); with (bullet) scr_script_delayed(scr_var, 20, "image_alpha", 1); scr_doom(bullet, 120); bullet.image_xscale = 0; bullet.image_yscale = 0; with (bullet) scr_lerpvar("image_xscale", 0, 2, 20, 2, "out"); with (bullet) scr_lerpvar("image_yscale", 0, 2, 20, 2, "in"); } bullet = instance_create(x + footoffsetx, ycreate, obj_effect_ripple); createbullet = 0; } draw_self(); } if (type == 1) { if (typeinit == 0) { typeinit = 1; timer = 0; instance_create(obj_growtangle.x - 50, obj_growtangle.y - 50, obj_enemy_blue_attack); scr_script_delayed(instance_create, 5, obj_growtangle.x - 50, obj_growtangle.y + 50, 695); scr_script_delayed(instance_create, 10, obj_growtangle.x + 50, obj_growtangle.y - 50, 695); scr_script_delayed(instance_create, 15, obj_growtangle.x + 50, obj_growtangle.y + 50, 695); if (!i_ex(obj_enemy_yellow_example)) { instance_create(x, y, obj_enemy_yellow_example); scr_script_delayed(instance_create, 40, obj_enemy_yellow_example.x + 2, obj_enemy_yellow_example.y + 50, 261); } } else { timer++; if (timer > 60) { if (!i_ex(obj_attack_yellow_reticle)) { safe_delete(obj_enemy_yellow_example); instance_destroy(); } } } } if (type == 2) { var lifetime = 120; var floatheight = 10; if (con == 0) { scr_lerpvar("image_alpha", 0.5, 0, 10, 2, "in"); scr_lerpvar("y", y, y - floatheight, 10, 2, "out"); scr_script_delayed(scr_var, 15, "con", 1); brate = 30; btimer = brate - 1; con = -99; } if (con == 1) { btimer++; if ((btimer % brate) == 0) { var boxrandx = round(irandom_range(obj_growtangle.x - (obj_growtangle.sprite_width / 2), obj_growtangle.x + (obj_growtangle.sprite_width / 2)) / 2) * 2; var boxrandy = round(irandom_range(obj_growtangle.y - (obj_growtangle.sprite_height / 2), obj_growtangle.y + (obj_growtangle.sprite_height / 2)) / 2) * 2; var __d = instance_create(boxrandx, boxrandy, obj_enemy_blue_attack); __d.type = 0; } if (btimer >= lifetime) con = 2; } if (con == 2) { scr_lerpvar("image_alpha", 0, 1, 10, 2, "in"); scr_lerpvar("y", y, ystart, 10, 2, "out"); scr_doom(id, 90); con = 3; } } draw_self();