diff options
author | chai <chaifix@163.com> | 2020-12-30 20:59:04 +0800 |
---|---|---|
committer | chai <chaifix@163.com> | 2020-12-30 20:59:04 +0800 |
commit | e9ea621b93fbb58d9edfca8375918791637bbd52 (patch) | |
tree | 19ce3b1c1f2d51eda6878c9d0f2c9edc27f13650 /Client/Assembly-CSharp/HudOverrideSystemType.cs |
+init
Diffstat (limited to 'Client/Assembly-CSharp/HudOverrideSystemType.cs')
-rw-r--r-- | Client/Assembly-CSharp/HudOverrideSystemType.cs | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/Client/Assembly-CSharp/HudOverrideSystemType.cs b/Client/Assembly-CSharp/HudOverrideSystemType.cs new file mode 100644 index 0000000..82558cb --- /dev/null +++ b/Client/Assembly-CSharp/HudOverrideSystemType.cs @@ -0,0 +1,40 @@ +using System; +using Hazel; + +internal class HudOverrideSystemType : ISystemType, IActivatable +{ + public bool IsActive { get; private set; } + + public const byte DamageBit = 128; + + public const byte TaskMask = 127; + + public bool Detoriorate(float deltaTime) + { + if (this.IsActive && !PlayerTask.PlayerHasHudTask(PlayerControl.LocalPlayer)) + { + PlayerControl.LocalPlayer.AddSystemTask(SystemTypes.Comms); + } + return false; + } + + public void RepairDamage(PlayerControl player, byte amount) + { + if ((amount & 128) > 0) + { + this.IsActive = true; + return; + } + this.IsActive = false; + } + + public void Serialize(MessageWriter writer, bool initialState) + { + writer.Write(this.IsActive); + } + + public void Deserialize(MessageReader reader, bool initialState) + { + this.IsActive = reader.ReadBoolean(); + } +} |