Fix: Parse data for XAnimPartTrans

This commit fixes the parsing logic for the `XAnimPartTrans` class, ensuring that the size and small trans flags are correctly parsed from the data stream. It uses `ParseUInt32` and `ParseUInt8` for better type handling and includes informative strings for debugging.
This commit is contained in:
njohnson 2025-09-10 21:56:01 -04:00
parent f2769e689f
commit e512636ad6

View File

@ -6,6 +6,7 @@ XAnimPartTrans::XAnimPartTrans()
, mIsSmallTrans(false) , mIsSmallTrans(false)
, mData() , mData()
{ {
SetName("Animation Part Trans");
} }
XAnimPartTrans::XAnimPartTrans(const XAnimPartTrans &aSrc) XAnimPartTrans::XAnimPartTrans(const XAnimPartTrans &aSrc)
@ -17,18 +18,10 @@ XAnimPartTrans::XAnimPartTrans(const XAnimPartTrans &aSrc)
} }
XAnimPartTrans::~XAnimPartTrans() void XAnimPartTrans::ParseData(XDataStream *aStream) {
{
}
void XAnimPartTrans::ParseData(QDataStream *aStream) {
if (GetPtr() == -1) { if (GetPtr() == -1) {
quint8 smallTransByte; mSize = aStream->ParseUInt32(QString("%1 size").arg(GetName()));
*aStream mIsSmallTrans = aStream->ParseUInt8(QString("%1 is small trans").arg(GetName())) != 0;
>> mSize
>> smallTransByte;
mIsSmallTrans = (smallTransByte != 0);
// Parse data // Parse data
mData.ParseData(aStream); mData.ParseData(aStream);