mj177/scripts/player/cameraController.gd
2025-01-31 22:54:00 +01:00

24 lines
670 B
GDScript

extends Camera3D
@export var PlayerNode: Node3D;
@export var turnSpeed: float = 0.25;
@export var XRotationClamp: Vector2 = Vector2(-90, 90)
var currentRotation: Vector2 = Vector2(0,0);
func _ready() -> void:
Input.mouse_mode = Input.MOUSE_MODE_CAPTURED;
func _input(event: InputEvent) -> void:
if event is not InputEventMouseMotion:
return
var inputRotation = event.relative
self.currentRotation += Vector2(inputRotation.y, inputRotation.x) * self.turnSpeed * -1;
self.currentRotation.x = clamp(currentRotation.x, XRotationClamp.x, XRotationClamp.y);
self.rotation_degrees.x = currentRotation.x;
self.PlayerNode.rotation_degrees.y = currentRotation.y