internal unsafe ModfChunk(ChunkHeader* header) : base(header)
{
var begin = (byte*)ChunkHeader.ChunkBegin(header);
var end = begin + header->Size;
Definitions = new List<IModelDefinition>(header->Size / sizeof(ModfEntry));
for (var entry = (ModfEntry*)begin; entry < end; entry++)
{
Definitions.Add(new RootModelDefinition
{
Id = entry->uniqueId,
ReferenceIndex = entry->mwidEntry,
Position = new Vector3(
MapOriginOffset - entry->position.Z,
MapOriginOffset - entry->position.X,
entry->position.Y
),
Rotation = entry->rotation,
Scale = 1.0f,
ExtraDoodadSetIndex = entry->doodadSet,
Flags = entry->flags
});
}
}