From 9e3f4bfa5aea52c6957f65ce162c3dd99280c4f9 Mon Sep 17 00:00:00 2001 From: Joonas Rikkonen Date: Fri, 28 Jul 2017 18:59:47 +0300 Subject: [PATCH] Syncing crouching from server to clients, not just from clients to server --- .../Source/Characters/CharacterNetworking.cs | 7 +++++++ .../Source/Characters/CharacterNetworking.cs | 4 ++++ 2 files changed, 11 insertions(+) diff --git a/Barotrauma/BarotraumaClient/Source/Characters/CharacterNetworking.cs b/Barotrauma/BarotraumaClient/Source/Characters/CharacterNetworking.cs index f33e6a00c..1b5d1698b 100644 --- a/Barotrauma/BarotraumaClient/Source/Characters/CharacterNetworking.cs +++ b/Barotrauma/BarotraumaClient/Source/Characters/CharacterNetworking.cs @@ -86,6 +86,13 @@ namespace Barotrauma keys[(int)InputType.Use].Held = useInput; keys[(int)InputType.Use].SetState(false, useInput); + if (AnimController is HumanoidAnimController) + { + bool crouching = msg.ReadBoolean(); + keys[(int)InputType.Crouch].Held = crouching; + keys[(int)InputType.Crouch].SetState(false, crouching); + } + bool hasAttackLimb = msg.ReadBoolean(); if (hasAttackLimb) { diff --git a/Barotrauma/BarotraumaShared/Source/Characters/CharacterNetworking.cs b/Barotrauma/BarotraumaShared/Source/Characters/CharacterNetworking.cs index 5f83c52f5..8f412f8b7 100644 --- a/Barotrauma/BarotraumaShared/Source/Characters/CharacterNetworking.cs +++ b/Barotrauma/BarotraumaShared/Source/Characters/CharacterNetworking.cs @@ -424,6 +424,10 @@ namespace Barotrauma tempBuffer.Write(aiming); tempBuffer.Write(use); + if (AnimController is HumanoidAnimController) + { + tempBuffer.Write(((HumanoidAnimController)AnimController).Crouching); + } bool hasAttackLimb = AnimController.Limbs.Any(l => l != null && l.attack != null); tempBuffer.Write(hasAttackLimb);