public override void Deserialize(LittleEndianReader reader) { base.Deserialize(reader); MovementDataType movementType = reader.ReadMovementDataType(); MovementSyncID = reader.ReadInt(); MovementData = reader.ReadMovementData(movementType); }
public override void ReadBodyInternal(PacketReader reader) { base.ReadBodyInternal(reader); MovementDataType movementType = reader.ReadMovementDataType(); MovementSyncID = reader.ReadInt32(); MovementData = reader.ReadMovementData(movementType); }
public static MovementData ReadMovementData(this LittleEndianReader reader, MovementDataType type) { switch (type) { case MovementDataType.Stop: return(new MovementDataStop(reader)); case MovementDataType.Normal: return(new MovementDataNormal(reader)); case MovementDataType.WithSpeed: return(new MovementDataWithSpeed(reader)); default: return(new MovementDataNone(reader)); } }
public static void WriteMovementDataType(this LittleEndianWriter writer, MovementDataType type) { writer.WriteByte((byte)type); }
public static void WriteMovementDataType(this PacketWriter writer, MovementDataType type) { writer.WriteByte((byte)type); }