public MapDataStoreNode(BinaryReader br) { Name = new MetaHash(br.ReadUInt32()); ParentName = new MetaHash(br.ReadUInt32()); ContentFlags = br.ReadUInt32(); streamingExtentsMin = new Vector3(br.ReadSingle(), br.ReadSingle(), br.ReadSingle()); streamingExtentsMax = new Vector3(br.ReadSingle(), br.ReadSingle(), br.ReadSingle()); entitiesExtentsMin = new Vector3(br.ReadSingle(), br.ReadSingle(), br.ReadSingle()); entitiesExtentsMax = new Vector3(br.ReadSingle(), br.ReadSingle(), br.ReadSingle()); Unk1 = br.ReadByte(); //HD flag? (critical, long, strm) Unk2 = br.ReadByte(); //lod flag? - primary map files Unk3 = br.ReadByte(); //slod flag? Unk4 = br.ReadByte(); if (Unk1 != 0) { } if (Unk2 != 0) { } if (Unk3 != 0) { } if (Unk4 != 0) { } //no hits here now.. if (Unk4 == 0xFE) { //this seems to never be hit anymore... UnkExtra = new MapDataStoreNodeExtra(br); } }
public MapDataStoreNode(BinaryReader br) { Name = new MetaHash(br.ReadUInt32()); ParentName = new MetaHash(br.ReadUInt32()); ContentFlags = br.ReadUInt32(); streamingExtentsMin = new Vector3(br.ReadSingle(), br.ReadSingle(), br.ReadSingle()); streamingExtentsMax = new Vector3(br.ReadSingle(), br.ReadSingle(), br.ReadSingle()); entitiesExtentsMin = new Vector3(br.ReadSingle(), br.ReadSingle(), br.ReadSingle()); entitiesExtentsMax = new Vector3(br.ReadSingle(), br.ReadSingle(), br.ReadSingle()); Unk02 = br.ReadByte(); Unk03 = br.ReadByte(); Unk04 = br.ReadByte(); Unk05 = br.ReadByte(); if (Unk05 == 0xFE) { UnkExtra = new MapDataStoreNodeExtra(br); } }