camera_push r7_lift_door_floor_2 3
teleport player r7_lift_door_floor_2
and a node tree like this
the camera_push command will use the "$camera_node" ESCLocation as the coordinates to push the camera to. The teleport however will use the last location found. In the screenshot that means the node called "camera_node" will be the teleport point, rather than the ESCLocation node.
esc_item.gd : get_interact_position() - interact_position will be the last ESCLocation based child node found
for c in get_children():
if c is Position2D:
if interact_position != null:
multiple_positions_found = true
interact_position = c.global_position
We need a naming convention or a different node type so we're not relying on node order for consistent behavior for walk/teleport/etc commands.
Whoever works on this, please check any other commands that look for a child ESCLocation as their interaction point and make sure all get the same fix.
To Reproduce
As above
Expected behavior
Dependable interaction locations for ESCItems.
Versions
Escoria: Latest
Godot: 3.5
Additional context
Add any other context about the problem here.
Describe the bug If you have a script like this
and a node tree like this
the camera_push command will use the "$camera_node" ESCLocation as the coordinates to push the camera to. The teleport however will use the last location found. In the screenshot that means the node called "camera_node" will be the teleport point, rather than the ESCLocation node.
esc_item.gd : get_interact_position() - interact_position will be the last ESCLocation based child node found
We need a naming convention or a different node type so we're not relying on node order for consistent behavior for walk/teleport/etc commands.
Whoever works on this, please check any other commands that look for a child ESCLocation as their interaction point and make sure all get the same fix.
To Reproduce As above
Expected behavior Dependable interaction locations for ESCItems.
Versions
Additional context Add any other context about the problem here.