extends "res://scripts/base_defender.gd" @onready var game_stats_config = preload("res://resources/game_stats_config.tres") var projectile: PackedScene = preload("res://scenes/warlock_projectile.tscn") var range_collision : CollisionShape2D func _ready(): damage = game_stats_config.defenders["warlock"]["damage"] fire_rate = game_stats_config.defenders["warlock"]["fire_rate"] defender_range = game_stats_config.defenders["warlock"]["range"] idle_atlas_coords = game_stats_config.defenders["warlock"]["sprite_idle"] attack_atlas_coords = game_stats_config.defenders["warlock"]["sprite_attacking"] range_collision = $Tower/CollisionShape2D range_collision.shape.radius = defender_range super() func _on_fire_timer_timeout(): select_target() if (target != null): var tmp_projectile = projectile.instantiate() tmp_projectile.target = target tmp_projectile.projectile_damage = damage get_node("ProjectileContainer").call_deferred("add_child", tmp_projectile) tmp_projectile.global_position = $Aim.global_position else: $FireTimer.stop()