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); }
private Task DispatchPacket(EntityLookAndRelativeMove packet) { return(Task.CompletedTask); }
public void OnEntityLookAndRelativeMove(EntityLookAndRelativeMove packet) { }
private void InvokeEntityLookAndRelativeMove(EntityLookAndRelativeMove packet) { packetListener.OnEntityLookAndRelativeMove(packet); }