public TesCellMain(TesFileReader fr) : base(fr, false) { while (!fr.EOF) { Subs.Add(new TesCellMainSub(fr.GetGroup())); } OutputItems.Add(Subs); }
public TesCellSubBlock(TesFileReader fr) : base(fr, false) { while (!fr.EOF) { Cells.Add(new TesRecordCell(fr.GetCell())); } OutputItems.Add(Cells); }
public TesCellBlock(TesFileReader fr) : base(fr, false) { while (!fr.EOF) { SubBlocks.Add(new TesCellSubBlock(fr.GetGroup())); } OutputItems.Add(SubBlocks); }
public TesWorldspace(TesFileReader fr) : base(fr, false) { while (!fr.EOF) { Records.Add(new TesRecordWorldspace(fr.GetCell())); } OutputItems.Add(Records); }
public TesGroup(TesFileReader fr, bool readRecord = true) { GRUP = new TesString(fr); DataSize = new TesUInt32(fr); OutputItems.Add(GRUP); OutputItems.Add(DataSize); //グループタイプ別 uint type = fr.GetUInt32(4, false); switch (type) { case 0: Signature = new TesString(fr); OutputItems.Add(Signature); break; case 1: case 6: case 8: case 9: FormID = new TesUInt32(fr); OutputItems.Add(FormID); break; case 2: case 3: Index = new TesUInt32(fr); OutputItems.Add(Index); break; case 4: case 5: Grid = new TesCellGrid(fr); OutputItems.Add(Grid); break; default: throw new Exception(); } GroupType = new TesUInt32(fr); Other = new TesBytes(fr.GetBytes(8)); OutputItems.Add(GroupType); OutputItems.Add(Other); if (readRecord) { while (!fr.EOF) { Records.Add(new TesRecord(fr.GetRecord())); } } OutputItems.Add(Records); }