event_inherited(); if (con >= 1 && con < 10) image_angle = lerp(image_angle, 0.5 * (((85 - right_handle_angle) + left_handle_angle) - 85), min(1, lerptimer)); if (con < 100) { with (ral_hook_left) { if (instance_exists(_act)) { image_xscale = other.image_xscale; image_yscale = other.image_yscale; if (ralsei_ready) { if (other.con <= 1 || other.con == 10) { with (other) { recovertimer = 0; animate(anim_lefthandle_down); scr_lerpvar("auraalph", auraalph, 0, 15); } } } active = other.con == 1 && other.anim_phase < 0 && other.bullet_pattern_endstate == 0; _act.active = active; _act.blocked = other.con >= 10; x = other.x + lengthdir_x((-other.sprite_width * 0.5) + 8, other.image_angle); y = other.y + lengthdir_y((-other.sprite_width * 0.5) + 8, other.image_angle); image_angle = other.left_handle_angle + other.image_angle; image_alpha = other.imagealpha; image_index = active; xoffset = lengthdir_x(50, image_angle); hang_xoffset = xoffset; newx = x + hang_xoffset; yoffset = lengthdir_y(50, image_angle); hang_yoffset = yoffset; newy = y + hang_yoffset; } } with (ral_hook_right) { if (instance_exists(_act)) { image_xscale = -other.image_xscale; image_yscale = other.image_yscale; if (ralsei_ready) { if (other.con <= 1 || other.con == 10) { with (other) { recovertimer = 0; animate(anim_righthandle_down); scr_lerpvar("auraalph", auraalph, 0, 15); } } } active = other.con == 1 && other.anim_phase < 0 && other.bullet_pattern_endstate == 0; _act.active = active; _act.blocked = other.con >= 10; x = other.x + lengthdir_x((other.sprite_width * 0.5) - 8, other.image_angle); y = other.y + lengthdir_y((other.sprite_width * 0.5) - 8, other.image_angle); image_angle = -other.right_handle_angle + other.image_angle; image_alpha = other.imagealpha; image_index = active; xoffset = lengthdir_x(50, image_angle); hang_xoffset = -xoffset; newx = x + hang_xoffset; yoffset = lengthdir_y(50, image_angle); hang_yoffset = -yoffset; newy = y + hang_yoffset; } } } if ((con >= 9 && image_angle == 0) || con >= 99) exit; var bifurcate = ds_list_create(); left_lens_hitbox.image_angle = image_angle; right_lens_hitbox.image_angle = image_angle; left_lens_hitbox.x = x - lengthdir_x(92, image_angle); left_lens_hitbox.y = y - lengthdir_y(92, image_angle); bifurcate_hitbox.x = x - lengthdir_x(92, image_angle); bifurcate_hitbox.y = y - lengthdir_y(92, image_angle); bifurcate_hitbox.image_angle = image_angle; with (bifurcate_hitbox) instance_place_list(x, y, 38, bifurcate, false); for (var i = 0; i < ds_list_size(bifurcate); i++) { left_lens_opacity = 0.2; var elem = ds_list_find_value(bifurcate, i); refract_bullet(elem, lefthp); } ds_list_clear(bifurcate); right_lens_hitbox.x = x + lengthdir_x(92, image_angle); right_lens_hitbox.y = y + lengthdir_y(92, image_angle); bifurcate_hitbox.x = x + lengthdir_x(92, image_angle); bifurcate_hitbox.y = y + lengthdir_y(92, image_angle); bifurcate_hitbox.image_angle = image_angle; with (bifurcate_hitbox) instance_place_list(x, y, 38, bifurcate, false); for (var i = 0; i < ds_list_size(bifurcate); i++) { var elem = ds_list_find_value(bifurcate, i); right_lens_opacity = 0.2; refract_bullet(elem, righthp); }