19 lines
642 B
GDScript
19 lines
642 B
GDScript
extends Node3D
|
|
|
|
@onready var y_rotator: Node3D = $blockbench_export/Node/base/bearing
|
|
@onready var x_rotator: Node3D = $blockbench_export/Node/base/bearing/tilt
|
|
|
|
@export var target : Node3D
|
|
|
|
func _physics_process(delta: float) -> void:
|
|
if is_instance_valid(target):
|
|
var t_pos = target.global_position
|
|
var y_rot_pos = Vector3(t_pos.x, y_rotator.global_position.y, t_pos.z)
|
|
y_rotator.look_at(y_rot_pos)
|
|
x_rotator.look_at(t_pos)
|
|
x_rotator.rotation_degrees.x = clamp(x_rotator.rotation_degrees.x, -20, 60)
|
|
y_rotator.rotation_degrees.y = clamp(y_rotator.rotation_degrees.y, -180, 180)
|
|
|
|
func set_target(value: Node3D):
|
|
target = value
|