Exemplo n.º 1
0
        public static HostGameRequest Deserialize(HazelBinaryReader reader)
        {
            var result = new HostGameRequest();

            result.gameOptions = GameOptionsData.Deserialize(reader.ReadBytesAndSize());
            return(result);
        }
Exemplo n.º 2
0
 public static GameOptionsData Deserialize(byte[] bytes)
 {
     using (var reader = new HazelBinaryReader(bytes))
     {
         return(Deserialize(reader));
     }
 }
Exemplo n.º 3
0
        public static List <RpcUpdateGameData> Deserialize(HazelBinaryReader reader)
        {
            var items = new List <RpcUpdateGameData>();

            while (reader.HasBytesLeft())
            {
                var msg    = new RpcUpdateGameData();
                var length = reader.ReadInt16();
                var body   = new HazelBinaryReader(reader.ReadBytes(length));
                reader.ReadByte();

                msg.playerId = body.ReadByte();
                msg.name     = body.ReadString();

                msg.color   = body.ReadByte();
                msg.hat     = (Hat)body.ReadByte();
                msg.pet     = (Pet)body.ReadByte();
                msg.skin    = (Skin)body.ReadByte();
                msg.unknown = body.ReadByte();

                items.Add(msg);
            }

            return(items);
        }
Exemplo n.º 4
0
        public static Ready Deserialize(HazelBinaryReader reader)
        {
            var msg = new Ready();

            msg.playerId = reader.ReadPackedInt32();
            return(msg);
        }
Exemplo n.º 5
0
        public void Deserialize(HazelBinaryReader reader, bool onSpawn)
        {
            if (onSpawn)
            {
                //This number of doors depends on the map
                //Skeld: 13
                //HQ: 2?
                //Polus: 12
                for (int i = 0; i < 12; i++)
                {
                    doors.Add(new Doorway()
                    {
                        isOpen = reader.ReadBoolean(),
                    });
                }
                return;
            }
            uint doorFlags = reader.ReadPackedUInt32();

            for (int j = 0; j < doors.Count; j++)
            {
                if ((doorFlags & (1U << j)) != 0U)
                {
                    doors[j].isOpen = reader.ReadBoolean();
                }
            }
        }
Exemplo n.º 6
0
        public static RpcSetHat Deserialize(HazelBinaryReader reader)
        {
            var msg = new RpcSetHat();

            msg.hatId = (Hat)reader.ReadPackedInt32();
            return(msg);
        }
Exemplo n.º 7
0
        public static StartGame Deserialize(HazelBinaryReader reader)
        {
            var msg = new StartGame();

            msg.unknownid = reader.ReadInt32();
            return(msg);
        }
Exemplo n.º 8
0
        public static RpcSetSkin Deserialize(HazelBinaryReader reader)
        {
            var msg = new RpcSetSkin();

            msg.skinId = (Skin)reader.ReadPackedInt32();
            return(msg);
        }
Exemplo n.º 9
0
        public override void Deserialize(HazelBinaryReader reader, bool onSpawn)
        {
            if (onSpawn)
            {
                Console.WriteLine("Meetinghud spawn");
                for (int i = 0; i < 10; i++)//need to fix this here, packet only contains the amount of players in the server
                {
                    while (reader.HasBytesLeft())
                    {
                        playerStates.Add(new PlayerVoteArea()
                        {
                            value = (PlayerVoteAreaFlags)reader.ReadByte(),
                        });
                    }
                }
                return;
            }
            Console.WriteLine("Meetinghud data");
            uint updateMask = reader.ReadPackedUInt32();

            for (int j = 0; j < 10; j++)
            {
                if ((updateMask & (1u << j)) != 0u)
                {
                    playerStates[j].value = (PlayerVoteAreaFlags)reader.ReadByte();
                }
            }
        }
Exemplo n.º 10
0
        public static RpcSetPet Deserialize(HazelBinaryReader reader)
        {
            var msg = new RpcSetPet();

            msg.petId = reader.ReadPackedInt32();
            return(msg);
        }
Exemplo n.º 11
0
        public static RpcSendChat Deserialize(HazelBinaryReader reader)
        {
            var msg = new RpcSendChat();

            msg.text = reader.ReadString();

            return(msg);
        }
Exemplo n.º 12
0
        public static AlterGameRequest Deserialize(HazelBinaryReader reader)
        {
            var msg = new AlterGameRequest();

            msg.gameTag = (AlterGameTags)reader.ReadByte();
            msg.value   = reader.ReadBoolean();
            return(msg);
        }
Exemplo n.º 13
0
        public static RpcEnterVent Deserialize(HazelBinaryReader reader)
        {
            var msg = new RpcEnterVent();

            msg.id = reader.ReadPackedInt32();

            return(msg);
        }
Exemplo n.º 14
0
        public static GetGameListV2Request Deserialize(HazelBinaryReader reader)
        {
            var msg = new GetGameListV2Request();

            reader.ReadPackedInt32(); // Hardcoded 0.
            msg.options = GameOptionsData.Deserialize(reader.ReadBytesAndSize());
            return(msg);
        }
Exemplo n.º 15
0
        public static RpcSetInfected Deserialize(HazelBinaryReader reader)
        {
            var msg = new RpcSetInfected();

            msg.infectedIds = reader.ReadList(read => read.ReadByte());

            return(msg);
        }
Exemplo n.º 16
0
        public static RpcStartMeeting Deserialize(HazelBinaryReader reader)
        {
            var msg = new RpcStartMeeting();

            msg.playerId = reader.ReadByte();

            return(msg);
        }
Exemplo n.º 17
0
        public static RpcSetName Deserialize(HazelBinaryReader reader)
        {
            var msg = new RpcSetName();

            msg.name = reader.ReadString();

            return(msg);
        }
Exemplo n.º 18
0
        public static RpcSetColor Deserialize(HazelBinaryReader reader)
        {
            var msg = new RpcSetColor();

            msg.color = reader.ReadByte();

            return(msg);
        }
Exemplo n.º 19
0
        static void HandleGameDataTo(GameDataTo data, bool send)
        {
            var ms       = new MemoryStream(data.body);
            var reader   = new HazelBinaryReader(ms);
            var datatype = (GameDataType)data.type;

            HandleGameData(reader, datatype, send);
        }
Exemplo n.º 20
0
        public static RpcCloseDoorsOfType Deserialize(HazelBinaryReader reader)
        {
            var msg = new RpcCloseDoorsOfType();

            msg.type = (SystemTypes)reader.ReadByte();

            return(msg);
        }
Exemplo n.º 21
0
        public static Redirect Deserialize(HazelBinaryReader reader)
        {
            var msg = new Redirect();

            msg.adress = reader.ReadBytes(4);
            msg.port   = reader.ReadUInt16();
            return(msg);
        }
Exemplo n.º 22
0
 public void Deserialize(HazelBinaryReader reader, bool onSpawn)
 {
     Countdown = reader.ReadSingle();
     if (reader.HasBytesLeft())
     {
         CompletedConsoles = reader.ReadList(read => reader.ReadPackedInt32());
     }
 }
Exemplo n.º 23
0
        public static WaitForHost Deserialize(HazelBinaryReader reader)
        {
            var msg = new WaitForHost();

            msg.gameCode = reader.ReadInt32();
            msg.playerId = reader.ReadPackedInt32();
            return(msg);
        }
Exemplo n.º 24
0
        public static CmdReportDeadBody Deserialize(HazelBinaryReader reader)
        {
            var msg = new CmdReportDeadBody();

            msg.playerId = reader.ReadByte();

            return(msg);
        }
Exemplo n.º 25
0
        public static KickPlayerRequest Deserialize(HazelBinaryReader reader)
        {
            var msg = new KickPlayerRequest();

            msg.playerId = reader.ReadPackedInt32();
            msg.isBan    = reader.ReadBoolean();
            return(msg);
        }
Exemplo n.º 26
0
        public static Despawn Deserialize(HazelBinaryReader reader)
        {
            var msg = new Despawn();

            msg.netId = reader.ReadPackedInt32();

            return(msg);
        }