diff options
| author | Anson Bridges <bridges.anson@gmail.com> | 2022-10-20 13:54:06 -0400 |
|---|---|---|
| committer | Anson Bridges <bridges.anson@gmail.com> | 2022-10-20 13:54:06 -0400 |
| commit | d34c96aa69d2aee1aaa3bb12366b36ff22d674c0 (patch) | |
| tree | 12c32c2c452922c92d1daf84a4bd5bebb539c204 /godot/scripts/characters/NetworkedCharacter.gd | |
| parent | 6dd265a0aee5fa0ed21b3d272fa3bc07d5d483d9 (diff) | |
Diffstat (limited to 'godot/scripts/characters/NetworkedCharacter.gd')
| -rw-r--r-- | godot/scripts/characters/NetworkedCharacter.gd | 17 |
1 files changed, 12 insertions, 5 deletions
diff --git a/godot/scripts/characters/NetworkedCharacter.gd b/godot/scripts/characters/NetworkedCharacter.gd index 8a0282d..d904593 100644 --- a/godot/scripts/characters/NetworkedCharacter.gd +++ b/godot/scripts/characters/NetworkedCharacter.gd @@ -2,7 +2,7 @@ extends RigidBody class_name NetChar # Game -export var team: String = "RED" +export var team = 0 export var health: int = 100 export var weapon_slot1: Resource = null export var weapon_slot2: Resource = null @@ -40,7 +40,7 @@ remote func set_phys_transform(trfrm: Transform, lvel: Vector3): transform = trfrm linear_velocity = lvel -remotesync func set_net_owner(owner_id: int): +remotesync func set_net_owner(owner_id: int, singleplayer_reset: bool = false): $Nametag.text = "" set_network_master(owner_id) if owner_id != 1: @@ -55,12 +55,19 @@ remotesync func set_net_owner(owner_id: int): $Nametag.visible = true is_player = false world.get_node("HUD").update_characters() + elif world.is_local: + if singleplayer_reset: + is_player = false + else: + world.player_char = self + is_player = true + world.cam.attach(self, "FIRSTPERSON", "./Neck/Head") func deselect_character(): - if is_network_master(): + if is_network_master() and world.player_char == self: world.player_char = null - if world.client_id != 1: world.cam.attach(world, "STATIC", "./DEFAULTCAM") - rpc("set_net_owner", 1) + world.cam.attach(world, "STATIC", "./DEFAULTCAM") + rpc("set_net_owner", 1, true) func take_control_of_machine(slave_machine: RigidBody): machine = slave_machine |
