WIP: Something
This commit is contained in:
@ -4,6 +4,7 @@ class_name CameraMount
|
||||
# -- When camera mount is not active, client shouldn't connect to it
|
||||
@export var active: bool = false
|
||||
@export var default: bool = false
|
||||
@export var accept_input: bool = false
|
||||
|
||||
var camera: Camera3D
|
||||
# Called when the node enters the scene tree for the first time.
|
||||
|
@ -1,16 +1,24 @@
|
||||
extends Node3D
|
||||
class_name ClientNode
|
||||
|
||||
@export var is_connected_to_camera: bool = false
|
||||
|
||||
var available_cameras: Array[CameraMount] = []
|
||||
|
||||
# Called every frame. 'delta' is the elapsed time since the previous frame.
|
||||
func _physics_process(delta: float) -> void:
|
||||
var game_root := helpers.get_root_node()
|
||||
var available_cameras_raw: Array[Node] = game_root.find_children("*", "CameraMount", true, false)
|
||||
for camera_raw in available_cameras_raw:
|
||||
var camera: CameraMount = camera_raw as CameraMount
|
||||
if camera.active:
|
||||
camera.connect_to_camera()
|
||||
available_cameras.append(camera)
|
||||
|
||||
if not is_connected_to_camera:
|
||||
var game_root := helpers.get_root_node()
|
||||
var available_cameras_raw: Array[Node] = game_root.find_children("*", "CameraMount", true, false)
|
||||
for camera_raw in available_cameras_raw:
|
||||
var camera: CameraMount = camera_raw as CameraMount
|
||||
if camera.active:
|
||||
if camera.accept_input:
|
||||
camera.connect_to_camera()
|
||||
break
|
||||
camera.connect_to_camera()
|
||||
available_cameras.append(camera)
|
||||
|
||||
@rpc("authority", "reliable", "call_local")
|
||||
func force_camera_attachment(camera_mount: CameraMount) -> void:
|
||||
camera_mount.connect_to_camera()
|
||||
|
@ -15,7 +15,7 @@ enum Side {
|
||||
|
||||
const blue = "attack"
|
||||
const red = "defend"
|
||||
const underfined = "unddefined"
|
||||
const underfined = "undefined"
|
||||
@export var side: PlayerData.Side = Side.UNDEFINED
|
||||
|
||||
@export var active: bool = false
|
||||
|
Reference in New Issue
Block a user