diff --git a/QSB/Animation/AnimationSync.cs b/QSB/Animation/AnimationSync.cs index 5d3895fa..d71da63d 100644 --- a/QSB/Animation/AnimationSync.cs +++ b/QSB/Animation/AnimationSync.cs @@ -103,7 +103,6 @@ namespace QSB.Animation public void InitLocal(Transform body) { - DebugLog.DebugWrite($"InitLocal ({PlayerId})"); InitCommon(body); _playerController = body.parent.GetComponent(); @@ -116,7 +115,6 @@ namespace QSB.Animation public void InitRemote(Transform body) { - DebugLog.DebugWrite($"InitRemote ({PlayerId})"); InitCommon(body); var playerAnimController = body.GetComponent(); diff --git a/QSB/Animation/Events/ChangeAnimTypeEvent.cs b/QSB/Animation/Events/ChangeAnimTypeEvent.cs index 53d75246..cb9235a1 100644 --- a/QSB/Animation/Events/ChangeAnimTypeEvent.cs +++ b/QSB/Animation/Events/ChangeAnimTypeEvent.cs @@ -1,10 +1,10 @@ using QSB.EventsCore; +using QSB.MessagesCore; using QSB.Player; -using QSB.Utility; namespace QSB.Animation.Events { - public class ChangeAnimTypeEvent : QSBEvent + public class ChangeAnimTypeEvent : QSBEvent> { public override EventType Type => EventType.PlayInstrument; @@ -14,16 +14,15 @@ namespace QSB.Animation.Events private void Handler(uint player, AnimationType type) => SendEvent(CreateMessage(player, type)); - private ChangeAnimTypeMessage CreateMessage(uint player, AnimationType type) => new ChangeAnimTypeMessage + private EnumMessage CreateMessage(uint player, AnimationType type) => new EnumMessage { AboutId = player, - Type = type + Value = type }; - public override void OnReceiveRemote(ChangeAnimTypeMessage message) + public override void OnReceiveRemote(EnumMessage message) { - DebugLog.DebugWrite($"ChangeAnimType for {message.AboutId} - {message.Type}"); - QSBPlayerManager.GetPlayer(message.AboutId).Animator.SetAnimationType(message.Type); + QSBPlayerManager.GetPlayer(message.AboutId).Animator.SetAnimationType(message.Value); } } } \ No newline at end of file diff --git a/QSB/Animation/Events/PlayerSuitEvent.cs b/QSB/Animation/Events/PlayerSuitEvent.cs index 32427d60..81626920 100644 --- a/QSB/Animation/Events/PlayerSuitEvent.cs +++ b/QSB/Animation/Events/PlayerSuitEvent.cs @@ -1,7 +1,6 @@ using QSB.EventsCore; using QSB.Messaging; using QSB.Player; -using QSB.Utility; namespace QSB.Animation { @@ -32,25 +31,20 @@ namespace QSB.Animation public override void OnReceiveRemote(ToggleMessage message) { - DebugLog.DebugWrite($"remote suit {(message.ToggleValue ? "on" : "off")} player {message.AboutId}"); var player = QSBPlayerManager.GetPlayer(message.AboutId); player?.UpdateState(State.Suit, message.ToggleValue); + + var animator = player.Animator; + var type = message.ToggleValue ? AnimationType.PlayerSuited : AnimationType.PlayerUnsuited; + animator.SetAnimationType(type); } public override void OnReceiveLocal(ToggleMessage message) { - DebugLog.DebugWrite($"local suit {(message.ToggleValue ? "on" : "off")}"); QSBPlayerManager.LocalPlayer.UpdateState(State.Suit, message.ToggleValue); var animator = QSBPlayerManager.LocalPlayer.Animator; - if (message.ToggleValue) - { - animator.CurrentType = AnimationType.PlayerSuited; - } - else - { - animator.CurrentType = AnimationType.PlayerUnsuited; - } - animator.Mirror.RebuildFloatParams(); + var type = message.ToggleValue ? AnimationType.PlayerSuited : AnimationType.PlayerUnsuited; + animator.CurrentType = type; } } } \ No newline at end of file diff --git a/QSB/Animation/QSBNetworkAnimator.cs b/QSB/Animation/QSBNetworkAnimator.cs index ac5cd087..fd4d89f0 100644 --- a/QSB/Animation/QSBNetworkAnimator.cs +++ b/QSB/Animation/QSBNetworkAnimator.cs @@ -1,8 +1,6 @@ using QSB.Animation.Events; -using QSB.Utility; using UnityEngine; using UnityEngine.Networking; -using Object = UnityEngine.Object; namespace QSB.Animation { diff --git a/QSB/DeathSync/Events/PlayerDeathEvent.cs b/QSB/DeathSync/Events/PlayerDeathEvent.cs index c4109236..57cd35c1 100644 --- a/QSB/DeathSync/Events/PlayerDeathEvent.cs +++ b/QSB/DeathSync/Events/PlayerDeathEvent.cs @@ -1,10 +1,11 @@ using QSB.EventsCore; +using QSB.MessagesCore; using QSB.Player; using QSB.Utility; namespace QSB.DeathSync.Events { - public class PlayerDeathEvent : QSBEvent + public class PlayerDeathEvent : QSBEvent> { public override EventType Type => EventType.PlayerDeath; @@ -14,19 +15,19 @@ namespace QSB.DeathSync.Events private void Handler(DeathType type) => SendEvent(CreateMessage(type)); - private PlayerDeathMessage CreateMessage(DeathType type) => new PlayerDeathMessage + private EnumMessage CreateMessage(DeathType type) => new EnumMessage { AboutId = LocalPlayerId, - DeathType = type + Value = type }; - public override void OnReceiveRemote(PlayerDeathMessage message) + public override void OnReceiveRemote(EnumMessage message) { var playerName = QSBPlayerManager.GetPlayer(message.AboutId).Name; - var deathMessage = Necronomicon.GetPhrase(message.DeathType); + var deathMessage = Necronomicon.GetPhrase(message.Value); DebugLog.ToAll(string.Format(deathMessage, playerName)); } - public override void OnReceiveLocal(PlayerDeathMessage message) => OnReceiveRemote(message); + public override void OnReceiveLocal(EnumMessage message) => OnReceiveRemote(message); } } diff --git a/QSB/DeathSync/Events/PlayerDeathMessage.cs b/QSB/DeathSync/Events/PlayerDeathMessage.cs deleted file mode 100644 index 14f398b5..00000000 --- a/QSB/DeathSync/Events/PlayerDeathMessage.cs +++ /dev/null @@ -1,22 +0,0 @@ -using QSB.Messaging; -using UnityEngine.Networking; - -namespace QSB.DeathSync.Events -{ - public class PlayerDeathMessage : PlayerMessage - { - public DeathType DeathType { get; set; } - - public override void Deserialize(NetworkReader reader) - { - base.Deserialize(reader); - DeathType = (DeathType)reader.ReadInt16(); - } - - public override void Serialize(NetworkWriter writer) - { - base.Serialize(writer); - writer.Write((short)DeathType); - } - } -} diff --git a/QSB/Animation/Events/ChangeAnimTypeMessage.cs b/QSB/MessagesCore/EnumMessage.cs similarity index 59% rename from QSB/Animation/Events/ChangeAnimTypeMessage.cs rename to QSB/MessagesCore/EnumMessage.cs index a3b1fe90..6138b2db 100644 --- a/QSB/Animation/Events/ChangeAnimTypeMessage.cs +++ b/QSB/MessagesCore/EnumMessage.cs @@ -1,22 +1,22 @@ using QSB.Messaging; using UnityEngine.Networking; -namespace QSB.Animation.Events +namespace QSB.MessagesCore { - public class ChangeAnimTypeMessage : PlayerMessage + public class EnumMessage : PlayerMessage { - public AnimationType Type; + public T Value; public override void Deserialize(NetworkReader reader) { base.Deserialize(reader); - Type = (AnimationType)reader.ReadInt32(); + Value = (T)(object)reader.ReadInt32(); } public override void Serialize(NetworkWriter writer) { base.Serialize(writer); - writer.Write((int)Type); + writer.Write((int)(object)Value); } } -} \ No newline at end of file +} diff --git a/QSB/QSB.cs b/QSB/QSB.cs index 1310329f..9f8be2f2 100644 --- a/QSB/QSB.cs +++ b/QSB/QSB.cs @@ -28,7 +28,7 @@ namespace QSB Application.runInBackground = true; var instance = TextTranslation.Get().GetValue("m_table"); - instance.theUITable[(int)UITextType.PleaseUseController] = + instance.theUITable[(int)UITextType.PleaseUseController] = "Quantum Space Buddies is best experienced with fellow travellers..."; } diff --git a/QSB/QSB.csproj b/QSB/QSB.csproj index a3cf17e8..64329e15 100644 --- a/QSB/QSB.csproj +++ b/QSB/QSB.csproj @@ -150,11 +150,11 @@ - + @@ -182,7 +182,6 @@ -