This commit refactors the data parsing logic for XAnimParts to improve clarity and maintainability. It replaces the use of raw `*aStream` with `aStream->ParseUIntX()` for all data fields. This approach simplifies the code and enhances readability by explicitly stating the data type being parsed. Furthermore, the message has been updated to reflect the name change of this asset.
This commit fixes an issue in the parsing of Animation Notify Info data.
Specifically, the parsing logic for `mName` and `mTime` was incorrect.
The fix adds proper parsing implementation, ensuring that the data is
correctly loaded during deserialization.
This commit fixes the parsing of `XAnimIndices` data, ensuring that the index is correctly parsed from the data stream, including handling the case where the index pointer is -1.
The animation dynamic indices parsing was incorrectly using the stream's `>>` operator. The `XDataStream` class provides `ParseUInt8` for proper parsing of unsigned 8-bit integers, ensuring data integrity. This commit updates the parsing logic to use `ParseUInt8` and include a descriptive string for logging.
The frames were parsed incorrectly from the data stream. This commit fixes the parsing logic to properly read the frame data using `ParseUInt8` and includes a descriptive name for the asset.
The `mFramesPtr` member was previously defined as `quint32`, which is an unsigned 32-bit integer. This could lead to issues when storing negative values, which is possible for frame pointers. Changed the type to `qint32` (signed 32-bit integer) to allow for negative frame pointer values.
This commit fixes the parsing logic for the XAnimDeltaPartQuatDataFrames data stream, ensuring that the frames pointer, frame 0, and frame 1 are correctly parsed from the stream.
This commit replaces `QDataStream` with `XDataStream` in the `ParseData` method of `XAnimDeltaPartQuatData`. This aligns with the project's naming conventions for data streams.
The `ParseData` method was incorrectly using `QDataStream` instead of `XDataStream`. This commit changes the type from `QDataStream` to `XDataStream` to align with the project's data stream implementation.
This commit fixes a parsing issue in `XAnimDeltaPartQuat` where the size of the data was not being correctly read from the data stream. It now uses `aStream->ParseUInt32()` to read the size, including a descriptive string for debugging.
This commit implements a default destructor for the `XAnimDeltaPart` class, ensuring proper resource cleanup and adhering to best practices. The destructor is now implicitly generated, simplifying the codebase.
This commit updates the parsing functions within the FastFile class to use the XDataStream instead of the QDataStream. This change aligns the code with newer data stream implementations and improves maintainability.
This commit changes the code to use `XDataStream` instead of `QDataStream` for parsing the COD8 Wii file format. This aligns with the use of `XDataStream` in other parts of the FastFile library.
This commit corrects the byte order handling for the COD7/COD9 file parsing, utilizing `XDataStream` and `BigEndian` to ensure correct data interpretation.
This commit replaces `QDataStream` with `XDataStream` and ensures `BigEndian` byte order is used, aligning with the specific requirements for COD8/COD9 file loading.
This commit fixes an issue where the ZLIB decompression was not being performed correctly after stripping hash blocks. The corrected code ensures that the decompressed data is properly handled.