using Godot; public partial class GravityZone : Area3D { public Node3D Parent; public override void _Ready() { Parent = GetParent(); } public void OnBodyEntered(Node3D body) { GravityReceiver receiver = body.GetNodeOrNull("GravityReceiver"); receiver?.EnterGravityZone(this, Parent.GetParent()); } public void OnBodyExited(Node3D body) { GravityReceiver receiver = body.GetNodeOrNull("GravityReceiver"); receiver?.ExitGravityZone(this); } }