Merge branch 'fix/mouse' into 'develop'

🐛 fix camera updates

See merge request open-fpsz/open-fpsz!47
This commit is contained in:
anyreso 2024-04-18 15:55:07 +00:00
commit c3582b04e6

View file

@ -24,8 +24,6 @@ signal jumped
signal fired_primary
signal throwed_flag
var _mouse_position: Vector2
func _ready():
var has_authority = is_multiplayer_authority()
set_process(has_authority)
@ -38,7 +36,15 @@ func _unhandled_input(event: InputEvent) -> void:
if event is InputEventMouseMotion:
if mouse_mode == Input.MOUSE_MODE_CAPTURED:
# retrieve mouse position relative to last frame
_mouse_position = event.relative * MOUSE_SENSITIVITY
_update_camera(event.relative)
func _update_camera(relative_motion : Vector2, sensitivity : float = MOUSE_SENSITIVITY) -> void:
# clamp vertical rotation (head motion)
camera_rotation.y -= relative_motion.y * sensitivity / 100
camera_rotation.y = clamp(camera_rotation.y, deg_to_rad(-90.0),deg_to_rad(90.0))
# wrap horizontal rotation (to prevent accumulation)
camera_rotation.x -= relative_motion.x * sensitivity / 100
camera_rotation.x = wrapf(camera_rotation.x, deg_to_rad(0.0),deg_to_rad(360.0))
func _process(delta):
direction = Input.get_vector("left", "right", "forward", "backward")
@ -50,7 +56,6 @@ func _process(delta):
_throw_flag.rpc()
jetting = Input.is_action_pressed("jump_and_jet")
skiing = Input.is_action_pressed("ski")
_update_camera(delta)
@rpc("call_local")
func _jump():
@ -64,12 +69,3 @@ func _fire_primary():
func _throw_flag():
throwed_flag.emit()
func _update_camera(delta):
# clamp vertical rotation (head motion)
camera_rotation.y -= _mouse_position.y * delta
camera_rotation.y = clamp(camera_rotation.y, deg_to_rad(-90.0),deg_to_rad(90.0))
# wrap horizontal rotation (to prevent accumulation)
camera_rotation.x -= _mouse_position.x * delta
camera_rotation.x = wrapf(camera_rotation.x, deg_to_rad(0.0),deg_to_rad(360.0))
# reset mouse motion until next input event
_mouse_position = Vector2.ZERO