示例#1
0
        private object DeserializePlayPacket(UncompressedPacket packet)
        {
            var    br = new SpanReader(packet.Data);
            object innerPacket;

            switch (packet.PacketId)
            {
            // Entity Look And Relative Move
            case 0x27:
                innerPacket = EntityLookAndRelativeMove.Deserialize(ref br);
                break;

            // Chunk Data
            case 0x20:
                innerPacket = ChunkData.Deserialize(ref br, true);
                break;

            default:
                // Debug.LogWarning($"Unrecognizable packet id: 0x{packet.PacketId:X2}.");
                return(null);
            }

            if (!br.IsCosumed)
            {
                throw new InvalidDataException($"Packet data is not fully consumed.");
            }
            return(innerPacket);
        }
示例#2
0
 private Task DispatchPacket(EntityLookAndRelativeMove packet)
 {
     return(Task.CompletedTask);
 }
 public void OnEntityLookAndRelativeMove(EntityLookAndRelativeMove packet)
 {
 }
 private void InvokeEntityLookAndRelativeMove(EntityLookAndRelativeMove packet)
 {
     packetListener.OnEntityLookAndRelativeMove(packet);
 }