extends Node2D @onready var ball : Area2D = $Area2D var anglespeed = 0.3 var player_damage = 1 var enemy_damage = 10 func _ready() -> void: rotate(randf() * TAU) anglespeed = anglespeed * (2 * randi_range(0,1) - 1) func _physics_process(delta: float) -> void: rotate(anglespeed * delta * TAU) for target in ball.get_overlapping_areas(): damage_target(target) for target in ball.get_overlapping_bodies(): damage_target(target) func damage_target(target: CollisionObject2D): var dir = (position - target.position).normalized() if(target.get_collision_layer_value(3)): target.hurt(player_damage, dir) else: target.hurt(enemy_damage, 2.5*dir)