#include "xcollisionpartition.h" XCollisionPartition::XCollisionPartition() : XAsset() , mTriCount(0) , mBorderCount(0) , mFirstTri(0) , mBorders() { SetName("Collision Partition"); } XCollisionPartition::~XCollisionPartition() { } void XCollisionPartition::ParseData(XDataStream *aStream) { if (GetPtr() == -1) { mTriCount = aStream->ParseUInt8(QString("%1 tri count").arg(GetName())); mBorderCount = aStream->ParseUInt8(QString("%1 border count").arg(GetName())); aStream->skipRawData(2); mFirstTri = aStream->ParseUInt32(QString("%1 first tri").arg(GetName())); qint32 bordersPtr; bordersPtr = aStream->ParseUInt32(QString("%1 first tri").arg(GetName())); if (bordersPtr == -1) { for (int i = 0; i < mBorderCount; i++) { XCollisionBorder newBorder; newBorder.ParseData(aStream); mBorders.append(newBorder); } } } } void XCollisionPartition::Clear() { mTriCount = 0; mBorderCount = 0; mFirstTri = 0; mBorders = QVector(); }