extends "res://objects/enemy/enemy_move_sidesideupdown.gd" signal entered_phase(phase) #Stats var hp = 3 var arrow_speed = 80 var shoot_time = Vector2(0.4,0.7) export var phase2_speed = 100 export var phase3_speed = 150 #Onready onready var shoot_timer = $ShootTimer onready var shootpoint = $Position2D onready var blood_position = $BloodPosition onready var map = get_owner() const Projectile = preload("res://objects/enemy/boss/scrump_projectile.tscn") const Gore = preload("res://objects/enemy/boss/scrump_gore.tscn") func _ready(): seed(hash("HEROMARK2")) #Easy mode if Game.is_easy_mode: arrow_speed *= Game.easy_mode_speed_factor shoot_time /= Game.easy_mode_speed_factor speed *= Game.easy_mode_speed_factor phase2_speed *= Game.easy_mode_speed_factor phase3_speed *= Game.easy_mode_speed_factor func shoot(): Game.instance_node(Projectile,shootpoint.global_position.x,stepify(shootpoint.global_position.y,8),map) func _on_ShootTimer_timeout(): shoot_timer.start(rand_range(shoot_time.x,shoot_time.y)) shoot() func die(): hp -= 1 Audio.play_sound(Audio.a_boss_hurt,Audio.ac_boss) match hp: 2: emit_signal("entered_phase", 2) speed = phase2_speed shoot_time = Vector2(0.4,0.5) 1: emit_signal("entered_phase", 3) speed = phase3_speed shoot_time = Vector2(0.3,0.5) 0: Game.instance_node(Gore,position.x,position.y,map) Audio.play_sound(Audio.a_scrump_die,Audio.ac_boss) emit_signal("entered_phase",4) queue_free() #Bleed particles var death_particles = DeathParticles.instance() death_particles.global_position = blood_position.global_position death_particles.emitting = true death_particles.amount = 64 death_particles.lifetime = 0.45 get_parent().add_child(death_particles)