summaryrefslogtreecommitdiff
path: root/Client/Assembly-CSharp/InnerNet/MessageExtensions.cs
diff options
context:
space:
mode:
Diffstat (limited to 'Client/Assembly-CSharp/InnerNet/MessageExtensions.cs')
-rw-r--r--Client/Assembly-CSharp/InnerNet/MessageExtensions.cs24
1 files changed, 24 insertions, 0 deletions
diff --git a/Client/Assembly-CSharp/InnerNet/MessageExtensions.cs b/Client/Assembly-CSharp/InnerNet/MessageExtensions.cs
new file mode 100644
index 0000000..9e9bd49
--- /dev/null
+++ b/Client/Assembly-CSharp/InnerNet/MessageExtensions.cs
@@ -0,0 +1,24 @@
+using System;
+using Hazel;
+
+namespace InnerNet
+{
+ public static class MessageExtensions
+ {
+ public static void WriteNetObject(this MessageWriter self, InnerNetObject obj)
+ {
+ if (!obj)
+ {
+ self.Write(0);
+ return;
+ }
+ self.WritePacked(obj.NetId);
+ }
+
+ public static T ReadNetObject<T>(this MessageReader self) where T : InnerNetObject
+ {
+ uint netId = self.ReadPackedUInt32();
+ return AmongUsClient.Instance.FindObjectByNetId<T>(netId);
+ }
+ }
+}