Files
MovementTests/assets/lift/lift.gd
Minimata 1c7abeb0d9
All checks were successful
Create tag and build when new code gets to main / BumpTag (push) Successful in 20s
Create tag and build when new code gets to main / Export (push) Successful in 4m49s
tutorial is set up and final lift as well
2025-10-29 18:48:49 +01:00

29 lines
858 B
GDScript

extends Node3D
var lift_already_used : bool = false
@export var end_location : Vector3 = Vector3.ZERO
@export var lift_time : float = 1.0
@onready var button: MeshInstance3D = $Cylinder_001
func start_climbing() -> void:
var elevator_tween = get_tree().create_tween()
elevator_tween.set_ease(Tween.EASE_IN_OUT)
elevator_tween.set_trans(Tween.TRANS_CUBIC)
elevator_tween.tween_property(self, "global_position", end_location, lift_time)
func _on_area_3d_body_entered(body: Node3D) -> void:
if lift_already_used:
return
if is_instance_of(body, CharacterBody3D):
lift_already_used = true
var button_tween = get_tree().create_tween()
var button_final_pos = button.global_position + Vector3.DOWN * 0.35
button_tween.tween_property(button, "global_position", button_final_pos, 0.3)
button_tween.tween_callback(start_climbing)