Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches
NetCreativePowerPermissionsModule.cs
Go to the documentation of this file.
1using System.IO;
3using Terraria.Net;
4
6
8{
9 private const byte _setPermissionLevelId = 0;
10
11 public static NetPacket SerializeCurrentPowerPermissionLevel(ushort powerId, int level)
12 {
14 result.Writer.Write((byte)0);
15 result.Writer.Write(powerId);
16 result.Writer.Write((byte)level);
17 return result;
18 }
19
20 public override bool Deserialize(BinaryReader reader, int userId)
21 {
22 if (reader.ReadByte() == 0)
23 {
24 ushort id = reader.ReadUInt16();
25 int currentPermissionLevel = reader.ReadByte();
26 if (Main.netMode == 2)
27 {
28 return false;
29 }
30 if (!CreativePowerManager.Instance.TryGetPower(id, out var power))
31 {
32 return false;
33 }
34 power.CurrentPermissionLevel = (PowerPermissionLevel)currentPermissionLevel;
35 }
36 return true;
37 }
38}
virtual byte ReadByte()
virtual ushort ReadUInt16()
virtual void Write(bool value)
static int netMode
Definition Main.cs:2095
BinaryWriter Writer
Definition NetPacket.cs:16