DEVTOOLS: Add second starfield points array to create_titanic

This commit is contained in:
Paul Gilbert 2016-07-03 11:28:26 -04:00
parent 2ff4d3ed66
commit 82c0be2bc5

View file

@ -422,7 +422,6 @@ void writeSentenceMappings(const char *name, uint offset, int numValues) {
dataOffset += size;
}
void writeStarfieldPoints() {
outputFile.seek(dataOffset);
@ -434,6 +433,25 @@ void writeStarfieldPoints() {
dataOffset += size;
}
void writeStarfieldPoints2() {
outputFile.seek(dataOffset);
for (int rootCtr = 0; rootCtr < 80; ++rootCtr) {
inputFile.seek(0x5A2F28 - FILE_DIFF + rootCtr * 8);
uint offset = inputFile.readUint32LE();
uint count = inputFile.readUint32LE();
outputFile.writeLong(count);
inputFile.seek(offset - FILE_DIFF);
outputFile.write(inputFile, count * 4 * 4);
}
uint size = outputFile.size() - dataOffset;
outputFile.write(inputFile, size);
writeEntryHeader("STARFIELD/POINTS2", dataOffset, size);
dataOffset += size;
}
void writeHeader() {
// Write out magic string
const char *MAGIC_STR = "SVTN";
@ -464,6 +482,7 @@ void writeData() {
writeResource("STARFIELD", 132);
writeStarfieldPoints();
writeStarfieldPoints2();
writeResource("TEXT", "STVOCAB.TXT");
writeResource("TEXT", "JRQUOTES.TXT");