Not sure why the "shooting range" is not detecting incoming mobs

Godot Version

4.7.stable

Question

I have multiple collision masks in my game. One for the wizard tower to detect incoming mobs, so it knows when to trigger the “being attacked” animation, my mobs each have collision shapes, and another one for the orb, to describe its shooting range.

Screenshot shows how I have the wizard tower, orb, and shooting rays organized (the Line2D node is the shots themselves):

The Orb sends a signal to the Line2D script, which is what my question is referring to. This signal is being triggered, but only when the game starts. The incoming mobs do not trigger this method, which is what I intended. Code below is what the signal is supposed to trigger:

func _on_orb_body_entered(_body: Node2D):
	print("Enemy is at the gates.")

Screenshot below is how the tower’s and orb’s collision masks are laid out:

Each of the mobs are a separate scene, shown below:

It looks like the signal+func is checking for a body but the mob has an area. Try connecting the area_entered signal instead. OR adding a collision shape as a child of the enemy characterbody.

Checking for the Area2D worked, thank you!