Why cant I call this function

Where is this script being called, What is taking damage? Where would it live in the scene tree?

the script is in the enemy where the spawner spawn

So the spawner is instantiating this enemy; give the enemy a variable to track it’s spawner.

var spawner

func take_hit(amount: float) -> void:
	if health_barr.value <= 0:
		spawner._dead()
		queue_free()

Now when your spawner makes an enemy, assign the enemy’s ‘spawner’ variable

var enemy = ENEMY.instantiate()
enemy.spawner = self # add this line
add_sibling(enemy)