From 088b14adc7137c1b54bbad9ca4db14368bb077e7 Mon Sep 17 00:00:00 2001 From: AleaJactaEst Date: Mon, 4 Dec 2023 23:05:35 +0100 Subject: [PATCH] update network (move some function to object network) --- client/player/PlayerNetworkingComponent.gd | 126 +++++++++++++++++---- client/player/character.gd | 120 ++++++++++---------- client/player/character.tscn | 93 +++++++-------- client/scenes/main.gd | 2 +- 4 files changed, 216 insertions(+), 125 deletions(-) diff --git a/client/player/PlayerNetworkingComponent.gd b/client/player/PlayerNetworkingComponent.gd index a6efdf7..e21b435 100644 --- a/client/player/PlayerNetworkingComponent.gd +++ b/client/player/PlayerNetworkingComponent.gd @@ -1,27 +1,40 @@ extends Node class_name PlayerNetworkingComponent -@export var character_movement_component : NodePath -@onready var PlayerRef = get_node(character_movement_component) +#@export var character_movement_component : NodePath +#@onready var player_ref = get_node(character_movement_component) +## Refrence to character mesh, should be assigned to a [Node3D] that is a parent to the actual mesh (Skeleton3D) +@export var mesh_ref : Node +## Refrence to a [RayCast3D] that should detect if character is on ground +@export var ground_check : RayCast3D +## Reference to Object CharacterMovementComponent +@export var character_movement_component : CharacterMovementComponent +## Reference Player +@export var player_ref:CharacterBody3D -var sync_camera_h_transform : Transform3D -var sync_camera_v_transform : Transform3D -var sync_view_mode : Global.VIEW_MODE = Global.VIEW_MODE.THIRD_PERSON -var sync_CameraHOffset : float -var sync_position : Vector3: - set(value): - sync_position = value - processed_position = false -var sync_mesh_rotation : Vector3 -var sync_direction : Vector3 -var sync_input_is_moving : bool -var sync_gait : Global.GAIT = Global.GAIT.WALKING -var sync_rotation_mode : Global.ROTATION_MODE = Global.ROTATION_MODE.VELOCITY_DIRECTION -var sync_stance : Global.STANCE = Global.STANCE.STANDING -var sync_movement_state : Global.MOVEMENT_STATE = Global.MOVEMENT_STATE.GROUNDED -var sync_movement_action : Global.MOVEMENT_ACTION = Global.MOVEMENT_ACTION.NONE -var sync_velocity : Vector3 -var processed_position : bool +#var sync_camera_h_transform : Transform3D +#var sync_camera_v_transform : Transform3D +#var sync_view_mode : Global.VIEW_MODE = Global.VIEW_MODE.THIRD_PERSON +#var sync_CameraHOffset : float +#var sync_position : Vector3: +# set(value): +# sync_position = value +# processed_position = false +#var sync_mesh_rotation : Vector3 +#var sync_direction : Vector3 +#var sync_input_is_moving : bool +#var sync_gait : Global.GAIT = Global.GAIT.WALKING +#var sync_rotation_mode : Global.ROTATION_MODE = Global.ROTATION_MODE.VELOCITY_DIRECTION +#var sync_stance : Global.STANCE = Global.STANCE.STANDING +#var sync_movement_state : Global.MOVEMENT_STATE = Global.MOVEMENT_STATE.GROUNDED +#var sync_movement_action : Global.MOVEMENT_ACTION = Global.MOVEMENT_ACTION.NONE +#var sync_velocity : Vector3 +#var processed_position : bool + +var save_rot:Vector3 +var tick:int = 0 +var jump:Vector3 = Vector3(0.0, 0.0, 0.0) +var tickjump: int = 0 @export var id:int = 0: @@ -85,3 +98,76 @@ func _physics_process(_delta): # sync_input_is_moving = PlayerRef.input_is_moving # sync_view_mode = PlayerRef.camera_root.view_mode # sync_CameraHOffset = PlayerRef.camera_root.CameraHOffset + +func get_my_position() -> Vector3: + #return $SpringArm3D/Camera3D.get_global_position() + return player_ref.get_global_position() + + +func get_my_rotation() -> Vector3: + return mesh_ref.get_global_rotation() + + +func set_first_position_player(ctick:int, pos:Vector3, rot:Vector3): + set_my_position(pos) + set_my_rotation(rot) + + +func update_player(ctick:int, pos:Vector3, rot:Vector3, extra:int, ctickjump:int, vel:Vector3): + #print(tick, " - ", ctick) + if tick != ctick: + #set_my_rotation(rot) + print("extra:", extra, " ctickjump:", ctickjump, " tickjump:", tickjump) + if extra & 1: + set_my_position_onlyground(pos) + if tickjump == ctickjump: + print("Already Jump") + return + tickjump = ctickjump - 1 + character_movement_component.jump() + print("Go Jump") + elif tickjump == 0 or ground_check.is_colliding(): + print("No Jump") + tickjump = 0 + set_my_position(pos) + set_my_rotation(rot) + else: + #set_my_position_onlyground(pos) + print("Always Jump") + tick = ctick + + +func set_my_position(pos:Vector3): + player_ref.set_global_position(pos) + + +func set_my_position_onlyground(pos:Vector3): + var newpos:Vector3 = Vector3(pos.x, player_ref.get_global_position().y ,pos.z) + player_ref.set_global_position(newpos) + +func set_my_rotation(rot:Vector3): + save_rot = rot + print("Update ->" + str(rot), " ", mesh_ref.get_global_rotation()) + mesh_ref.set_global_rotation(rot) + #$CharacterMovementComponent.input_direction = rot + pass + + +func is_jump() -> bool: + return jump != Vector3( 0.0, 0.0, 0.0) + + +func get_jump() -> Vector3: + var ret:Vector3 = jump + jump = Vector3(0.0, 0.0, 0.0) + return ret + +func get_tickjump() -> int: + return tickjump + +func get_comment() -> String: + return "" + +func start_jump(vertical_velocity:Vector3): + jump = vertical_velocity + tickjump += 1 diff --git a/client/player/character.gd b/client/player/character.gd index 45f718e..43c65fb 100644 --- a/client/player/character.gd +++ b/client/player/character.gd @@ -11,10 +11,10 @@ var camrot_v:float = 0.0 @export var h_sensitivity:float = 0.5 @export var v_sensitivity:float = 0.5 -var save_rot:Vector3 -var tick:int = 0 -var jump:Vector3 = Vector3(0.0, 0.0, 0.0) -var tickjump: int = 0 +#var save_rot:Vector3 +#var tick:int = 0 +#var jump:Vector3 = Vector3(0.0, 0.0, 0.0) +#var tickjump: int = 0 # Get the gravity from the project settings to be synced with RigidBody nodes. @@ -53,71 +53,82 @@ func _ready(): func _on_start_jump(vertical_velocity:Vector3): - jump = vertical_velocity - tickjump += 1 + $PlayerNetworkingComponent.start_jump(vertical_velocity) func get_my_position() -> Vector3: - #return $SpringArm3D/Camera3D.get_global_position() - return self.get_global_position() + return $PlayerNetworkingComponent.get_my_position() + #return self.get_global_position() func get_my_rotation() -> Vector3: + return $PlayerNetworkingComponent.get_my_rotation() #return $SpringArm3D/Camera3D.get_global_rotation() #return $Armature/Skeleton3D.get_global_rotation() #print($Armature/Skeleton3D.get_global_rotation(), "---", $Armature.get_global_rotation()) - return $Armature.get_global_rotation() + #return $Armature.get_global_rotation() func is_jump() -> bool: - return jump != Vector3( 0.0, 0.0, 0.0) + #return jump != Vector3( 0.0, 0.0, 0.0) + return $PlayerNetworkingComponent.is_jump() func get_jump() -> Vector3: - var ret:Vector3 = jump - jump = Vector3(0.0, 0.0, 0.0) - return ret +# var ret:Vector3 = jump +# jump = Vector3(0.0, 0.0, 0.0) +# return ret + return $PlayerNetworkingComponent.get_jump() func get_tickjump() -> int: - return tickjump +# return tickjump + return $PlayerNetworkingComponent.get_tickjump() + +func set_first_position_player(ctick:int, pos:Vector3, rot:Vector3): +# set_my_position(pos) +# set_my_rotation(rot) + $PlayerNetworkingComponent.set_first_position_player(ctick, pos, rot) + func update_player(ctick:int, pos:Vector3, rot:Vector3, extra:int, ctickjump:int, vel:Vector3): - #print(tick, " - ", ctick) - if tick != ctick: - set_my_rotation(rot) - print("extra:", extra, " ctickjump:", ctickjump, " tickjump:", tickjump) - if extra & 1: - set_my_position_onlyground(pos) - if tickjump == ctickjump: - print("Already Jump") - return - tickjump = ctickjump - 1 - $CharacterMovementComponent.jump() - print("Go Jump") - elif tickjump == 0 or $GroundCheck.is_colliding(): - print("No Jump") - tickjump = 0 - set_my_position(pos) - else: - set_my_position_onlyground(pos) - print("Always Jump") - tick = ctick + $PlayerNetworkingComponent.update_player(ctick, pos, rot, extra, ctickjump, vel) +# #print(tick, " - ", ctick) +# if tick != ctick: +# #set_my_rotation(rot) +# print("extra:", extra, " ctickjump:", ctickjump, " tickjump:", tickjump) +# if extra & 1: +# set_my_position_onlyground(pos) +# if tickjump == ctickjump: +# print("Already Jump") +# return +# tickjump = ctickjump - 1 +# $CharacterMovementComponent.jump() +# print("Go Jump") +# elif tickjump == 0 or $GroundCheck.is_colliding(): +# print("No Jump") +# tickjump = 0 +# set_my_position(pos) +# set_my_rotation(rot) +# else: +# #set_my_position_onlyground(pos) +# print("Always Jump") +# tick = ctick - -func set_my_position(pos:Vector3): - self.set_global_position(pos) - - -func set_my_position_onlyground(pos:Vector3): - var newpos:Vector3 = Vector3(pos.x, self.get_global_position().y ,pos.z) - self.set_global_position(newpos) - -func set_my_rotation(rot:Vector3): - save_rot = rot - print("Update ->" + str(rot)) - $Armature.set_global_rotation(rot) - #$CharacterMovementComponent.input_direction = rot - pass +# +#func set_my_position(pos:Vector3): +# self.set_global_position(pos) +# +# +#func set_my_position_onlyground(pos:Vector3): +# var newpos:Vector3 = Vector3(pos.x, self.get_global_position().y ,pos.z) +# self.set_global_position(newpos) +# +#func set_my_rotation(rot:Vector3): +# save_rot = rot +# print("Update ->" + str(rot), " ", $Armature.get_global_rotation()) +# $Armature.set_global_rotation(rot) +# #$CharacterMovementComponent.input_direction = rot +# pass func set_current_camera() -> void: @@ -141,7 +152,7 @@ func set_activate() -> void: func get_comment() -> String: - return str(save_rot) + \ + return $PlayerNetworkingComponent.get_comment() + \ " -> " + str($PlayerNetworkingComponent.is_local_authority()) + \ " -> " + str($CharacterMovementComponent.input_direction) @@ -175,12 +186,3 @@ func get_rotation_mode() -> String: func get_movement_state() -> String: return Global.MOVEMENT_STATE.keys()[$CharacterMovementComponent.movement_state] -# -func _process(_delta): - if ! $PlayerNetworkingComponent.is_local_authority(): - if get_my_rotation() != save_rot: - print("Ohhhhhh : " + str( get_my_rotation()) + " != " + str(save_rot)) - print("Ohhhhhh") - else: - print("Superrrr") -# $Armature.set_global_rotation(save_rot) diff --git a/client/player/character.tscn b/client/player/character.tscn index 51a36f5..67edb20 100644 --- a/client/player/character.tscn +++ b/client/player/character.tscn @@ -443,43 +443,43 @@ bones/0/name = "Hips" bones/0/parent = -1 bones/0/rest = Transform3D(0.544576, -0.0348814, -0.837986, 0.0102475, 0.999337, -0.0349382, 0.838649, 0.0104393, 0.544573, -0.000172998, 0.901879, -0.00179914) bones/0/enabled = true -bones/0/position = Vector3(0.00312781, 0.927551, -0.00757092) -bones/0/rotation = Quaternion(-0.037834, -0.367673, -0.0142571, 0.929076) +bones/0/position = Vector3(0.00227544, 0.92988, -0.00635014) +bones/0/rotation = Quaternion(-0.0387123, -0.367173, -0.0135771, 0.929247) bones/0/scale = Vector3(1, 1, 1) bones/1/name = "Spine" bones/1/parent = 0 bones/1/rest = Transform3D(0.99963, -0.0129189, 0.0239171, 0.01122, 0.997494, 0.0698543, -0.0247596, -0.0695601, 0.99727, 4.88944e-09, 0.0992349, -0.0122733) bones/1/enabled = true bones/1/position = Vector3(4.88944e-09, 0.0992349, -0.0122733) -bones/1/rotation = Quaternion(-0.0105158, 0.040604, -0.00611894, 0.999101) +bones/1/rotation = Quaternion(-0.0118977, 0.0400234, -0.00580732, 0.999111) bones/1/scale = Vector3(1, 1, 1) bones/2/name = "Spine1" bones/2/parent = 1 bones/2/rest = Transform3D(0.99985, -0.015446, 0.00786788, 0.0155655, 0.999761, -0.0153596, -0.00762876, 0.0154798, 0.999851, -2.79397e-09, 0.11732, 1.86265e-09) bones/2/enabled = true bones/2/position = Vector3(-2.79397e-09, 0.11732, 1.86265e-09) -bones/2/rotation = Quaternion(0.100729, 0.0823829, -0.00860192, 0.99146) +bones/2/rotation = Quaternion(0.0976705, 0.0812293, -0.00802303, 0.991866) bones/2/scale = Vector3(1, 1, 1) bones/3/name = "Spine2" bones/3/parent = 2 bones/3/rest = Transform3D(0.999844, -0.014346, 0.0103258, 0.0156141, 0.990645, -0.135571, -0.00828427, 0.135711, 0.990714, -2.79397e-09, 0.134588, -2.51457e-08) bones/3/enabled = true bones/3/position = Vector3(-2.79397e-09, 0.134588, -2.51457e-08) -bones/3/rotation = Quaternion(0.160369, 0.081709, -0.0135765, 0.983576) +bones/3/rotation = Quaternion(0.157365, 0.080579, -0.012948, 0.984162) bones/3/scale = Vector3(1, 1, 1) bones/4/name = "Neck" bones/4/parent = 3 bones/4/rest = Transform3D(0.968778, 0.12654, 0.213204, -0.00181599, 0.863542, -0.504273, -0.247921, 0.488142, 0.836811, 2.48197e-07, 0.150325, 0.00792907) bones/4/enabled = true bones/4/position = Vector3(2.48197e-07, 0.150325, 0.00792907) -bones/4/rotation = Quaternion(0.110971, -0.0101955, 0.0040895, 0.993763) +bones/4/rotation = Quaternion(0.1198, -0.0105286, 0.00283586, 0.992738) bones/4/scale = Vector3(1, 1, 1) bones/5/name = "Head" bones/5/parent = 4 bones/5/rest = Transform3D(0.840773, 0.330252, 0.428993, -0.33245, 0.940342, -0.0723432, -0.427291, -0.0817944, 0.900406, 5.58794e-09, 0.107895, 5.21541e-08) bones/5/enabled = true bones/5/position = Vector3(5.58794e-09, 0.107895, 5.21541e-08) -bones/5/rotation = Quaternion(-0.0325945, 0.165362, -0.0680798, 0.98334) +bones/5/rotation = Quaternion(-0.0388961, 0.164742, -0.0632418, 0.983538) bones/5/scale = Vector3(1, 1, 1) bones/6/name = "HeadTop_End" bones/6/parent = 5 @@ -507,42 +507,42 @@ bones/9/parent = 3 bones/9/rest = Transform3D(-0.250988, 0.959361, -0.128958, 0.025503, -0.126623, -0.991623, -0.967654, -0.252174, 0.0073142, 0.0610582, 0.0911044, 0.00705553) bones/9/enabled = true bones/9/position = Vector3(0.0610582, 0.0911044, 0.00705553) -bones/9/rotation = Quaternion(-0.494723, -0.515895, 0.573428, -0.40035) +bones/9/rotation = Quaternion(-0.48807, -0.522248, 0.571186, -0.403474) bones/9/scale = Vector3(1, 1, 1) bones/10/name = "LeftArm" bones/10/parent = 9 bones/10/rest = Transform3D(0.845869, -0.51692, -0.131522, 0.093338, 0.386222, -0.917671, 0.52516, 0.763954, 0.374941, 7.45058e-09, 0.129223, 3.95812e-08) bones/10/enabled = true bones/10/position = Vector3(7.45058e-09, 0.129223, 3.95812e-08) -bones/10/rotation = Quaternion(0.519371, -0.0859611, 0.145819, 0.837616) +bones/10/rotation = Quaternion(0.524602, -0.0808702, 0.144522, 0.835085) bones/10/scale = Vector3(1, 1, 1) bones/11/name = "LeftForeArm" bones/11/parent = 10 bones/11/rest = Transform3D(0.138967, -0.989426, 0.0415226, 0.989436, 0.140472, 0.0358277, -0.0412816, 0.0361051, 0.998495, -4.47035e-08, 0.274229, -7.45058e-09) bones/11/enabled = true bones/11/position = Vector3(-4.47035e-08, 0.274229, -7.45058e-09) -bones/11/rotation = Quaternion(-0.0133006, 0.0907053, 0.438557, 0.894015) +bones/11/rotation = Quaternion(-0.00994509, 0.0923788, 0.445285, 0.890555) bones/11/scale = Vector3(1, 1, 1) bones/12/name = "LeftHand" bones/12/parent = 11 bones/12/rest = Transform3D(0.746359, -0.304314, 0.591895, 0.184003, 0.949028, 0.255908, -0.639601, -0.0820888, 0.764311, 6.0536e-09, 0.276326, -1.49012e-08) bones/12/enabled = true bones/12/position = Vector3(6.0536e-09, 0.276326, -1.49012e-08) -bones/12/rotation = Quaternion(-0.160073, 0.124823, -0.00575505, 0.979164) +bones/12/rotation = Quaternion(-0.0931325, 0.118388, -0.00757654, 0.988561) bones/12/scale = Vector3(1, 1, 1) bones/13/name = "LeftHandMiddle1" bones/13/parent = 12 bones/13/rest = Transform3D(0.98654, 0.118644, -0.112532, -0.118809, 0.0472127, -0.991794, -0.112357, 0.991814, 0.0606732, -3.12924e-07, 0.127755, -7.63685e-08) bones/13/enabled = true bones/13/position = Vector3(-3.12924e-07, 0.127755, -7.63685e-08) -bones/13/rotation = Quaternion(0.125917, 0.0058918, -0.084686, 0.988402) +bones/13/rotation = Quaternion(0.130853, 0.00458425, -0.0777684, 0.988336) bones/13/scale = Vector3(1, 1, 1) bones/14/name = "LeftHandMiddle2" bones/14/parent = 13 bones/14/rest = Transform3D(0.980685, 0.110739, -0.161229, -0.112737, -0.353585, -0.928584, -0.159838, 0.928824, -0.334271, -7.45058e-09, 0.0361397, -5.21541e-08) bones/14/enabled = true bones/14/position = Vector3(-7.45058e-09, 0.0361397, -5.21541e-08) -bones/14/rotation = Quaternion(0.190678, -0.00131862, 0.014437, 0.981546) +bones/14/rotation = Quaternion(0.195944, -0.00135003, 0.0150253, 0.980499) bones/14/scale = Vector3(1, 1, 1) bones/15/name = "LeftHandMiddle3" bones/15/parent = 14 @@ -563,14 +563,14 @@ bones/17/parent = 12 bones/17/rest = Transform3D(0.922249, -0.296379, 0.248225, 0.374682, 0.843413, -0.385056, -0.0952333, 0.448123, 0.888885, -0.0300309, 0.0378879, 0.0216701) bones/17/enabled = true bones/17/position = Vector3(-0.0300309, 0.0378879, 0.0216701) -bones/17/rotation = Quaternion(0.285276, 0.111821, 0.191875, 0.932362) +bones/17/rotation = Quaternion(0.285616, 0.114447, 0.185788, 0.933171) bones/17/scale = Vector3(1, 1, 1) bones/18/name = "LeftHandThumb2" bones/18/parent = 17 bones/18/rest = Transform3D(0.793061, 0.491162, -0.360297, -0.562049, 0.818065, -0.121947, 0.234851, 0.299216, 0.924832, 1.19209e-07, 0.0474499, -2.44938e-07) bones/18/enabled = true bones/18/position = Vector3(1.19209e-07, 0.0474499, -2.44938e-07) -bones/18/rotation = Quaternion(-0.00753574, 0.000695847, -0.000678539, 0.999971) +bones/18/rotation = Quaternion(-0.00777468, 0.0011934, -0.000695829, 0.999969) bones/18/scale = Vector3(1, 1, 1) bones/19/name = "LeftHandThumb3" bones/19/parent = 18 @@ -591,14 +591,14 @@ bones/21/parent = 12 bones/21/rest = Transform3D(0.983723, 0.142189, -0.109869, -0.119058, 0.0577917, -0.991204, -0.134589, 0.988151, 0.0737798, -0.0282207, 0.122666, 0.00231682) bones/21/enabled = true bones/21/position = Vector3(-0.0282207, 0.122666, 0.00231682) -bones/21/rotation = Quaternion(0.0337901, -0.00587572, 0.0611026, 0.997542) +bones/21/rotation = Quaternion(0.0427863, -0.00484731, 0.0621866, 0.997135) bones/21/scale = Vector3(1, 1, 1) bones/22/name = "LeftHandIndex2" bones/22/parent = 21 bones/22/rest = Transform3D(0.978949, 0.10384, -0.175717, -0.111366, -0.44972, -0.8862, -0.171047, 0.887113, -0.428688, 1.11759e-07, 0.0389198, -5.96046e-08) bones/22/enabled = true bones/22/position = Vector3(1.11759e-07, 0.0389198, -5.96046e-08) -bones/22/rotation = Quaternion(0.143637, -0.000740282, -0.00676793, 0.989607) +bones/22/rotation = Quaternion(0.159694, -0.00112646, -0.00477859, 0.987154) bones/22/scale = Vector3(1, 1, 1) bones/23/name = "LeftHandIndex3" bones/23/parent = 22 @@ -619,14 +619,14 @@ bones/25/parent = 12 bones/25/rest = Transform3D(0.991492, 0.0540781, -0.118406, -0.118263, -0.00584495, -0.992965, -0.0543897, 0.99852, 0.000600219, 0.0221662, 0.12147, -9.90927e-05) bones/25/enabled = true bones/25/position = Vector3(0.0221662, 0.12147, -9.90927e-05) -bones/25/rotation = Quaternion(0.266201, -0.0136685, -0.129325, 0.955105) +bones/25/rotation = Quaternion(0.271034, -0.0161478, -0.122836, 0.954563) bones/25/scale = Vector3(1, 1, 1) bones/26/name = "LeftHandRing2" bones/26/parent = 25 bones/26/rest = Transform3D(0.981497, 0.113181, -0.154445, -0.116659, -0.286137, -0.951061, -0.151835, 0.951481, -0.267639, -3.72529e-08, 0.036012, -1.11759e-07) bones/26/enabled = true bones/26/position = Vector3(-3.72529e-08, 0.036012, -1.11759e-07) -bones/26/rotation = Quaternion(0.27616, 0.00168095, 0.0244073, 0.9608) +bones/26/rotation = Quaternion(0.281487, 0.00171936, 0.0247282, 0.959245) bones/26/scale = Vector3(1, 1, 1) bones/27/name = "LeftHandRing3" bones/27/parent = 26 @@ -647,14 +647,14 @@ bones/29/parent = 12 bones/29/rest = Transform3D(0.991785, 0.0101279, -0.127516, -0.126197, -0.0855001, -0.988314, -0.0209122, 0.996287, -0.0835196, 0.0472581, 0.109082, 0.00226384) bones/29/enabled = true bones/29/position = Vector3(0.0472581, 0.109082, 0.00226384) -bones/29/rotation = Quaternion(0.2921, -0.0144718, -0.162605, 0.942352) +bones/29/rotation = Quaternion(0.296593, -0.0172769, -0.156007, 0.942017) bones/29/scale = Vector3(1, 1, 1) bones/30/name = "LeftHandPinky2" bones/30/parent = 29 bones/30/rest = Transform3D(0.989305, 0.129006, -0.068066, -0.049097, -0.144898, -0.988228, -0.13735, 0.981001, -0.137015, -5.96046e-08, 0.0413669, -1.49012e-08) bones/30/enabled = true bones/30/position = Vector3(-5.96046e-08, 0.0413669, -1.49012e-08) -bones/30/rotation = Quaternion(0.337141, 0.0112626, 0.0499093, 0.940063) +bones/30/rotation = Quaternion(0.342265, 0.011484, 0.0499625, 0.938204) bones/30/scale = Vector3(1, 1, 1) bones/31/name = "LeftHandPinky3" bones/31/parent = 30 @@ -675,42 +675,42 @@ bones/33/parent = 3 bones/33/rest = Transform3D(-0.214833, -0.949432, 0.228968, -0.0511495, -0.223182, -0.973434, 0.975311, -0.220837, -0.000616074, -0.061057, 0.0911053, 0.00705566) bones/33/enabled = true bones/33/position = Vector3(-0.061057, 0.0911053, 0.00705566) -bones/33/rotation = Quaternion(0.547768, -0.474872, 0.540832, 0.426552) +bones/33/rotation = Quaternion(0.537594, -0.484728, 0.539166, 0.430503) bones/33/scale = Vector3(1, 1, 1) bones/34/name = "RightArm" bones/34/parent = 33 bones/34/rest = Transform3D(0.555382, 0.714901, -0.424814, -0.786414, 0.285417, -0.547804, -0.270377, 0.63832, 0.720724, -2.23517e-08, 0.129223, 9.12696e-08) bones/34/enabled = true bones/34/position = Vector3(-2.23517e-08, 0.129223, 9.12696e-08) -bones/34/rotation = Quaternion(0.506377, 0.0947784, 0.0788673, 0.853451) +bones/34/rotation = Quaternion(0.510013, 0.0879829, 0.0763869, 0.852239) bones/34/scale = Vector3(1, 1, 1) bones/35/name = "RightForeArm" bones/35/parent = 34 bones/35/rest = Transform3D(-0.491194, 0.870247, -0.0374029, -0.870282, -0.488505, 0.0630281, 0.0365786, 0.0635101, 0.997311, 7.45058e-09, 0.274776, -3.72529e-08) bones/35/enabled = true bones/35/position = Vector3(7.45058e-09, 0.274776, -3.72529e-08) -bones/35/rotation = Quaternion(0.0491453, -0.0414456, -0.425895, 0.902486) +bones/35/rotation = Quaternion(0.0553885, -0.0538736, -0.429401, 0.899803) bones/35/scale = Vector3(1, 1, 1) bones/36/name = "RightHand" bones/36/parent = 35 bones/36/rest = Transform3D(0.953663, 0.121098, 0.275431, -0.18063, 0.962538, 0.202223, -0.240624, -0.242603, 0.939811, 7.45058e-09, 0.276868, 5.96046e-08) bones/36/enabled = true bones/36/position = Vector3(7.45058e-09, 0.276868, 5.96046e-08) -bones/36/rotation = Quaternion(0.107103, -0.0242325, -0.0679675, 0.991626) +bones/36/rotation = Quaternion(0.110608, -0.0171129, -0.0640768, 0.991649) bones/36/scale = Vector3(1, 1, 1) bones/37/name = "RightHandMiddle1" bones/37/parent = 36 bones/37/rest = Transform3D(0.986308, -0.119644, 0.1135, 0.119813, 0.0469439, -0.991686, 0.113321, 0.991706, 0.060636, 3.50177e-07, 0.127755, -8.9407e-08) bones/37/enabled = true bones/37/position = Vector3(3.50177e-07, 0.127755, -8.9407e-08) -bones/37/rotation = Quaternion(0.111072, 0.00853888, 0.0245726, 0.993472) +bones/37/rotation = Quaternion(0.110499, 0.00839362, 0.025197, 0.993521) bones/37/scale = Vector3(1, 1, 1) bones/38/name = "RightHandMiddle2" bones/38/parent = 37 bones/38/rest = Transform3D(0.980361, -0.111685, 0.162538, 0.114835, -0.346749, -0.930902, 0.160328, 0.931285, -0.327114, 6.70552e-08, 0.0361398, -1.02445e-07) bones/38/enabled = true bones/38/position = Vector3(6.70552e-08, 0.0361398, -1.02445e-07) -bones/38/rotation = Quaternion(0.267004, 0.00139887, -0.0173669, 0.963538) +bones/38/rotation = Quaternion(0.287916, 0.00155106, -0.0192914, 0.95746) bones/38/scale = Vector3(1, 1, 1) bones/39/name = "RightHandMiddle3" bones/39/parent = 38 @@ -731,14 +731,14 @@ bones/41/parent = 36 bones/41/rest = Transform3D(0.940404, 0.29207, -0.174168, -0.340048, 0.811489, -0.475239, 0.00253238, 0.506143, 0.862446, 0.0300309, 0.037888, 0.0216703) bones/41/enabled = true bones/41/position = Vector3(0.0300309, 0.037888, 0.0216703) -bones/41/rotation = Quaternion(0.2028, 0.0244504, -0.227235, 0.952176) +bones/41/rotation = Quaternion(0.203503, 0.0243716, -0.228029, 0.951838) bones/41/scale = Vector3(1, 1, 1) bones/42/name = "RightHandThumb2" bones/42/parent = 41 bones/42/rest = Transform3D(0.793791, -0.608189, -0.00159446, 0.595053, 0.777184, -0.204689, 0.125729, 0.161531, 0.978826, -1.2666e-07, 0.0474498, -2.68221e-07) bones/42/enabled = true bones/42/position = Vector3(-1.2666e-07, 0.0474498, -2.68221e-07) -bones/42/rotation = Quaternion(0.00542446, 0.00144238, 0.182246, 0.983237) +bones/42/rotation = Quaternion(0.00584862, 0.00126717, 0.181441, 0.983384) bones/42/scale = Vector3(1, 1, 1) bones/43/name = "RightHandThumb3" bones/43/parent = 42 @@ -759,14 +759,14 @@ bones/45/parent = 36 bones/45/rest = Transform3D(0.978763, -0.172845, 0.110213, 0.120904, 0.0525683, -0.991271, 0.165542, 0.983545, 0.0723496, 0.0282207, 0.122666, 0.00231693) bones/45/enabled = true bones/45/position = Vector3(0.0282207, 0.122666, 0.00231693) -bones/45/rotation = Quaternion(0.0391609, 0.0098452, 0.0102146, 0.999132) +bones/45/rotation = Quaternion(0.0391871, 0.0100315, 0.00890335, 0.999142) bones/45/scale = Vector3(1, 1, 1) bones/46/name = "RightHandIndex2" bones/46/parent = 45 bones/46/rest = Transform3D(0.978593, -0.104714, 0.177172, 0.106914, -0.476935, -0.872412, 0.175853, 0.872679, -0.45553, 1.49012e-07, 0.0389196, -8.75443e-08) bones/46/enabled = true bones/46/position = Vector3(1.49012e-07, 0.0389196, -8.75443e-08) -bones/46/rotation = Quaternion(0.147256, 0.000202321, 0.00967147, 0.989051) +bones/46/rotation = Quaternion(0.146666, 0.00015375, 0.00972812, 0.989138) bones/46/scale = Vector3(1, 1, 1) bones/47/name = "RightHandIndex3" bones/47/parent = 46 @@ -787,14 +787,14 @@ bones/49/parent = 36 bones/49/rest = Transform3D(0.991829, -0.0281871, 0.124419, 0.122843, -0.0520322, -0.991061, 0.0344089, 0.998247, -0.0481446, -0.0221661, 0.12147, -9.89214e-05) bones/49/enabled = true bones/49/position = Vector3(-0.0221661, 0.12147, -9.89214e-05) -bones/49/rotation = Quaternion(0.189006, -0.00837756, 0.0668801, 0.97966) +bones/49/rotation = Quaternion(0.199561, -0.00745596, 0.0661095, 0.977624) bones/49/scale = Vector3(1, 1, 1) bones/50/name = "RightHandRing2" bones/50/parent = 49 bones/50/rest = Transform3D(0.982662, -0.117406, 0.143498, 0.122607, -0.169092, -0.977944, 0.139081, 0.978583, -0.151765, -7.45058e-09, 0.036012, 0) bones/50/enabled = true bones/50/position = Vector3(-7.45058e-09, 0.036012, 0) -bones/50/rotation = Quaternion(0.322055, -0.00236413, -0.0343392, 0.946095) +bones/50/rotation = Quaternion(0.332438, -0.0024389, -0.0352165, 0.942464) bones/50/scale = Vector3(1, 1, 1) bones/51/name = "RightHandRing3" bones/51/parent = 50 @@ -815,14 +815,14 @@ bones/53/parent = 36 bones/53/rest = Transform3D(0.989897, 0.0602255, 0.128364, 0.133612, -0.0931972, -0.986642, -0.0474579, 0.993824, -0.100302, -0.047258, 0.109082, 0.00226358) bones/53/enabled = true bones/53/position = Vector3(-0.047258, 0.109082, 0.00226358) -bones/53/rotation = Quaternion(0.207056, -0.0111269, 0.0918481, 0.973944) +bones/53/rotation = Quaternion(0.208359, -0.0111396, 0.0916531, 0.973685) bones/53/scale = Vector3(1, 1, 1) bones/54/name = "RightHandPinky2" bones/54/parent = 53 bones/54/rest = Transform3D(0.983236, -0.118306, 0.138749, 0.122507, -0.134994, -0.983244, 0.135054, 0.983758, -0.118237, -2.98023e-08, 0.0413665, 4.24334e-08) bones/54/enabled = true bones/54/position = Vector3(-2.98023e-08, 0.0413665, 4.24334e-08) -bones/54/rotation = Quaternion(0.350985, -0.0122761, -0.0691872, 0.933741) +bones/54/rotation = Quaternion(0.361046, -0.0127254, -0.0698286, 0.929843) bones/54/scale = Vector3(1, 1, 1) bones/55/name = "RightHandPinky3" bones/55/parent = 54 @@ -843,28 +843,28 @@ bones/57/parent = 0 bones/57/rest = Transform3D(-0.919821, -0.336213, -0.202214, 0.264978, -0.912457, 0.311783, -0.289337, 0.233202, 0.928386, -0.0912445, -0.0665637, -0.000553781) bones/57/enabled = true bones/57/position = Vector3(-0.0912445, -0.0665637, -0.000553781) -bones/57/rotation = Quaternion(-0.124375, 0.0250602, 0.983571, 0.128419) +bones/57/rotation = Quaternion(-0.124386, 0.0181732, 0.983642, 0.129019) bones/57/scale = Vector3(1, 1, 1) bones/58/name = "RightLeg" bones/58/parent = 57 bones/58/rest = Transform3D(0.997811, 0.0392429, -0.0532304, 0.00932048, 0.713425, 0.70067, 0.0654722, -0.699632, 0.711497, 4.84288e-08, 0.405994, 2.6077e-08) bones/58/enabled = true bones/58/position = Vector3(4.84288e-08, 0.405994, 2.6077e-08) -bones/58/rotation = Quaternion(-0.309362, 0.0724978, -0.0199418, 0.947967) +bones/58/rotation = Quaternion(-0.299426, 0.0745827, -0.0191077, 0.951008) bones/58/scale = Vector3(1, 1, 1) bones/59/name = "RightFoot" bones/59/parent = 58 bones/59/rest = Transform3D(0.96994, -0.122934, 0.210008, 0.229929, 0.180407, -0.95634, 0.0796801, 0.975879, 0.20325, -1.02445e-08, 0.42099, 9.31323e-09) bones/59/enabled = true bones/59/position = Vector3(-1.02445e-08, 0.42099, 9.31323e-09) -bones/59/rotation = Quaternion(0.599817, 0.0610654, 0.112575, 0.789821) +bones/59/rotation = Quaternion(0.596368, 0.0609206, 0.11255, 0.792443) bones/59/scale = Vector3(1, 1, 1) bones/60/name = "RightToeBase" bones/60/parent = 59 bones/60/rest = Transform3D(0.999367, 6.43255e-05, 0.0355612, 0.0227211, 0.768109, -0.639916, -0.027356, 0.640319, 0.767622, -5.51563e-09, 0.16432, -1.09159e-07) bones/60/enabled = true bones/60/position = Vector3(-5.51563e-09, 0.16432, -1.09159e-07) -bones/60/rotation = Quaternion(0.353957, 0.0206325, 0.00390541, 0.935026) +bones/60/rotation = Quaternion(0.354077, 0.0198134, 0.00428441, 0.934996) bones/60/scale = Vector3(1, 1, 1) bones/61/name = "RightToe_End" bones/61/parent = 60 @@ -878,28 +878,28 @@ bones/62/parent = 0 bones/62/rest = Transform3D(-0.893651, 0.403296, 0.196826, -0.227377, -0.785047, 0.576195, 0.386895, 0.470164, 0.793258, 0.0912445, -0.0665636, -0.000553777) bones/62/enabled = true bones/62/position = Vector3(0.0912445, -0.0665636, -0.000553777) -bones/62/rotation = Quaternion(0.0774945, 0.218253, 0.96698, -0.106346) +bones/62/rotation = Quaternion(0.0789879, 0.212269, 0.968328, -0.10509) bones/62/scale = Vector3(1, 1, 1) bones/63/name = "LeftLeg" bones/63/parent = 62 bones/63/rest = Transform3D(0.99576, 0.0029921, 0.0919402, -0.056273, 0.810456, 0.583091, -0.0727688, -0.585792, 0.807188, 5.12227e-08, 0.405994, -2.04891e-08) bones/63/enabled = true bones/63/position = Vector3(5.12227e-08, 0.405994, -2.04891e-08) -bones/63/rotation = Quaternion(-0.314195, 0.120707, -0.0387034, 0.940858) +bones/63/rotation = Quaternion(-0.306932, 0.121777, -0.0389884, 0.943103) bones/63/scale = Vector3(1, 1, 1) bones/64/name = "LeftFoot" bones/64/parent = 63 bones/64/rest = Transform3D(0.977802, 0.128039, -0.165856, -0.209522, 0.59104, -0.778956, -0.00170929, 0.796415, 0.604748, -2.04891e-08, 0.42099, 6.98492e-09) bones/64/enabled = true bones/64/position = Vector3(-2.04891e-08, 0.42099, 6.98492e-09) -bones/64/rotation = Quaternion(0.48802, -0.0224361, -0.040733, 0.871593) +bones/64/rotation = Quaternion(0.485511, -0.0222796, -0.0403092, 0.873017) bones/64/scale = Vector3(1, 1, 1) bones/65/name = "LeftToeBase" bones/65/parent = 64 bones/65/rest = Transform3D(0.999367, -0.000945242, -0.0355486, -0.0227206, 0.752033, -0.658734, 0.0273564, 0.659125, 0.751536, 3.66616e-08, 0.16432, -1.10293e-07) bones/65/enabled = true bones/65/position = Vector3(3.66616e-08, 0.16432, -1.10293e-07) -bones/65/rotation = Quaternion(0.358277, 0.00126557, -0.0287554, 0.933172) +bones/65/rotation = Quaternion(0.358755, -0.000506015, -0.0293594, 0.93297) bones/65/scale = Vector3(1, 1, 1) bones/66/name = "LeftToe_End" bones/66/parent = 65 @@ -918,7 +918,7 @@ mesh = SubResource("ArrayMesh_ludfp") skin = SubResource("Skin_0b2ap") [node name="BoneAttachment3D" type="BoneAttachment3D" parent="Armature/Skeleton3D"] -transform = Transform3D(0.998035, -0.059141, 0.0207047, 0.0607923, 0.83381, -0.548694, 0.0151865, 0.548875, 0.835767, -0.0201189, 1.49454, 0.113379) +transform = Transform3D(0.997604, -0.0679101, 0.0132223, 0.0643388, 0.840348, -0.538215, 0.0254388, 0.537776, 0.842704, -0.0203131, 1.4981, 0.110149) bone_name = "Head" bone_idx = 5 @@ -970,9 +970,12 @@ UsingCrouchToggle = true character_component = NodePath("../CharacterMovementComponent") networking = NodePath("../PlayerNetworkingComponent") -[node name="PlayerNetworkingComponent" type="Node" parent="."] +[node name="PlayerNetworkingComponent" type="Node" parent="." node_paths=PackedStringArray("mesh_ref", "ground_check", "character_movement_component", "player_ref")] script = ExtResource("6_uat01") +mesh_ref = NodePath("../Armature") +ground_check = NodePath("../GroundCheck") character_movement_component = NodePath("../CharacterMovementComponent") +player_ref = NodePath("..") [node name="CharacterMovementComponent" type="Node" parent="." node_paths=PackedStringArray("networking", "targeting_component", "mesh_ref", "anim_ref", "skeleton_ref", "collision_shape_ref", "camera_root", "character_node", "ground_check", "look_at_object")] script = ExtResource("7_bwjer") diff --git a/client/scenes/main.gd b/client/scenes/main.gd index c54f8de..c6de0bc 100644 --- a/client/scenes/main.gd +++ b/client/scenes/main.gd @@ -84,7 +84,7 @@ func _on_connexion_updated(new_state:Multi.Connexion): func _on_update_me(tick:int, pos:Vector3, rot:Vector3): - $PlayerSpawnLocation.get_child(0).update_player(tick, pos, rot, 0, 0, Vector3(0.0, 0.0, 0.0)) + $PlayerSpawnLocation.get_child(0).set_first_position_player(tick, pos, rot) func _on_update_player(id:int, tick:int, pos:Vector3, rot:Vector3, extra:int, tickjump:int, vel:Vector3):