+3 votes


I have 2 Area2D's that collide, say a large square and small square, once they touch, this invokes the areaentered signal as soon as the small square is completely inside the large square the areaexited signal is invoked.

I am wondering is this is expected behavior or should area_exited invoke only when they are no longer overlapping?


Godot version 3.4.1
in Engine by (15 points)

Maybe could you show us a detailed log with what signal is emitted and received from where, what area's or body's are involved ? Have you check the shapes of each area to be sure they are where they shoulb be ?

1 Answer

0 votes

This is a weird case. It shouldn't invoke area exited because the collision shapes are still colliding. I have two ideas on what to do. Check if the signals are actually areaentered and areaexited. If they are set to areaentered and bodyexited, It wont react the same. Make sure that the signals are areaentered and areaexited. If that doesn't work, Try resetting the collision shapes. I'm new to Godot and this hasn't happened to me before but I believe it's the functions. If not, Which Area2D is invoking area_exited?

by (62 points)
Welcome to Godot Engine Q&A, where you can ask questions and receive answers from other members of the community.

Please make sure to read Frequently asked questions and How to use this Q&A? before posting your first questions.
Social login is currently unavailable. If you've previously logged in with a Facebook or GitHub account, use the I forgot my password link in the login box to set a password for your account. If you still can't access your account, send an email to [email protected] with your username.