Godot Version
Godot 4.2.2
Question
First, let me say I am very new and had no formal game programming class. So I am trying to code a generalized area detection for a game that detects an area and what group it is in, e.g. “ledge”, “cutscene”, “enemy”, and am first testing a ledge. I have an Area3D under my Player node, which is a CharacterBody3D, that connected the _area_entered signal to the Player. In a test scene there is a Ledge area (an Area3D node uniquely named Ledge in the tree) that I am trying to collide with this Ledge and just print in the output “Collided with ledge.” However, it’s not working; I do not see the print.
The Player’s Area3D has a CollisionShape3D that matches the mesh of the Player’s CollisionShape3D:
This is the signal connection with the Area3D child under Player:
The Ledge also has two CollisionShape3D nodes for the Area formal and for a StaticBody3D child to stop the player:
but the CollisionShape for the Area node is extended further away from CollisionShape of the StaicBody as I see in the viewport so the Player should be colliding with the Area first before the StaticBody walling them. The code is handled in Player.cs:
I checked the Ledge area’s group and it is spelled exactly like that, lower-case and all. I tried it with connecting the Area3D child signal to the Player in the GUI, as well as hard-coding the connection in the Player.cs script:
All other methods work in the Player.cs script, except I cannot get this print in the GUI Outputs nor an external console. I work on an Ubuntu machine and Windows machine interchangeably. Any help is much appreciated.