TrackJoint.gd 477 B

12345678910111213141516171819
  1. class_name TrackJoint
  2. extends Node
  3. signal attached
  4. @export var offset := Vector2(0, 8)
  5. @export var movement_node: Node = null
  6. @export var disable_physics := true
  7. var rider: TrackRider = null
  8. var is_attached := false
  9. func detach() -> void:
  10. if rider == null: return
  11. owner.physics_interpolation_mode = Node.PHYSICS_INTERPOLATION_MODE_INHERIT
  12. rider.attached_entity = null
  13. rider.queue_free()
  14. get_parent().reparent(rider.get_parent())
  15. owner.reset_physics_interpolation()