is_secondary to bool
This commit is contained in:
parent
1728e708dd
commit
5ba3720405
4 changed files with 11 additions and 9 deletions
|
@ -15,7 +15,7 @@ public:
|
|||
|
||||
public:
|
||||
QString name;
|
||||
QString is_secondary;
|
||||
bool is_secondary;
|
||||
QString tiles_label;
|
||||
QString palettes_label;
|
||||
QString metatiles_label;
|
||||
|
|
|
@ -128,19 +128,20 @@ QList<QRgb> Tileset::getPalette(int paletteId, Tileset *primaryTileset, Tileset
|
|||
|
||||
bool Tileset::appendToHeaders(QString root, QString friendlyName, bool usingAsm) {
|
||||
QString headersFile = root + "/" + (usingAsm ? projectConfig.getFilePath(ProjectFilePath::tilesets_headers_asm)
|
||||
: projectConfig.getFilePath(ProjectFilePath::tilesets_headers));
|
||||
: projectConfig.getFilePath(ProjectFilePath::tilesets_headers));
|
||||
QFile file(headersFile);
|
||||
if (!file.open(QIODevice::WriteOnly | QIODevice::Append)) {
|
||||
logError(QString("Could not write to file \"%1\"").arg(headersFile));
|
||||
return false;
|
||||
}
|
||||
QString isSecondaryStr = this->is_secondary ? "TRUE" : "FALSE";
|
||||
QString dataString = "\n";
|
||||
if (usingAsm) {
|
||||
// Append to asm file
|
||||
dataString.append("\t.align 2\n");
|
||||
dataString.append(QString("%1::\n").arg(this->name));
|
||||
dataString.append("\t.byte TRUE @ is compressed\n");
|
||||
dataString.append(QString("\t.byte %1 @ is secondary\n").arg(this->is_secondary));
|
||||
dataString.append(QString("\t.byte %1 @ is secondary\n").arg(isSecondaryStr));
|
||||
dataString.append("\t.2byte 0 @ padding\n");
|
||||
dataString.append(QString("\t.4byte gTilesetTiles_%1\n").arg(friendlyName));
|
||||
dataString.append(QString("\t.4byte gTilesetPalettes_%1\n").arg(friendlyName));
|
||||
|
@ -156,7 +157,7 @@ bool Tileset::appendToHeaders(QString root, QString friendlyName, bool usingAsm)
|
|||
// Append to C file
|
||||
dataString.append(QString("const struct Tileset %1 =\n{\n").arg(this->name));
|
||||
if (projectConfig.getTilesetsHaveIsCompressed()) dataString.append(" .isCompressed = TRUE,\n");
|
||||
dataString.append(QString(" .isSecondary = %1,\n").arg(this->is_secondary));
|
||||
dataString.append(QString(" .isSecondary = %1,\n").arg(isSecondaryStr));
|
||||
dataString.append(QString(" .tiles = gTilesetTiles_%1,\n").arg(friendlyName));
|
||||
dataString.append(QString(" .palettes = gTilesetPalettes_%1,\n").arg(friendlyName));
|
||||
dataString.append(QString(" .metatiles = gMetatiles_%1,\n").arg(friendlyName));
|
||||
|
@ -245,7 +246,7 @@ bool Tileset::appendToMetatiles(QString root, QString friendlyName, bool usingAs
|
|||
// Example: for gTileset_DepartmentStore, returns "data/tilesets/secondary/department_store"
|
||||
QString Tileset::getExpectedDir()
|
||||
{
|
||||
return Tileset::getExpectedDir(this->name, ParseUtil::gameStringToBool(this->is_secondary));
|
||||
return Tileset::getExpectedDir(this->name, this->is_secondary);
|
||||
}
|
||||
|
||||
QString Tileset::getExpectedDir(QString tilesetName, bool isSecondary)
|
||||
|
|
|
@ -1284,7 +1284,7 @@ void MainWindow::on_actionNew_Tileset_triggered() {
|
|||
newSet.tilesImagePath = fullDirectoryPath + "/tiles.png";
|
||||
newSet.metatiles_path = fullDirectoryPath + "/metatiles.bin";
|
||||
newSet.metatile_attrs_path = fullDirectoryPath + "/metatile_attributes.bin";
|
||||
newSet.is_secondary = createTilesetDialog->isSecondary ? "TRUE" : "FALSE";
|
||||
newSet.is_secondary = createTilesetDialog->isSecondary;
|
||||
int numMetaTiles = createTilesetDialog->isSecondary ? (Project::getNumTilesTotal() - Project::getNumTilesPrimary()) : Project::getNumTilesPrimary();
|
||||
QImage tilesImage(":/images/blank_tileset.png");
|
||||
editor->project->loadTilesetTiles(&newSet, tilesImage);
|
||||
|
|
|
@ -1062,7 +1062,7 @@ Tileset* Project::loadTileset(QString label, Tileset *tileset) {
|
|||
tileset = new Tileset;
|
||||
}
|
||||
tileset->name = label;
|
||||
tileset->is_secondary = values.value(memberMap.key("isSecondary"));
|
||||
tileset->is_secondary = ParseUtil::gameStringToBool(values.value(memberMap.key("isSecondary")));
|
||||
tileset->tiles_label = values.value(memberMap.key("tiles"));
|
||||
tileset->palettes_label = values.value(memberMap.key("palettes"));
|
||||
tileset->metatiles_label = values.value(memberMap.key("metatiles"));
|
||||
|
@ -1078,7 +1078,7 @@ Tileset* Project::loadTileset(QString label, Tileset *tileset) {
|
|||
}
|
||||
const auto tilesetAttributes = structs[label];
|
||||
tileset->name = label;
|
||||
tileset->is_secondary = tilesetAttributes.value("isSecondary");
|
||||
tileset->is_secondary = ParseUtil::gameStringToBool(tilesetAttributes.value("isSecondary"));
|
||||
tileset->tiles_label = tilesetAttributes.value("tiles");
|
||||
tileset->palettes_label = tilesetAttributes.value("palettes");
|
||||
tileset->metatiles_label = tilesetAttributes.value("metatiles");
|
||||
|
@ -1568,7 +1568,8 @@ void Project::loadTilesetMetatileLabels(Tileset* tileset) {
|
|||
for (QString labelName : labels.keys()) {
|
||||
int metatileId = labels[labelName];
|
||||
// subtract Project::num_tiles_primary from secondary metatiles
|
||||
Metatile *metatile = Tileset::getMetatile(metatileId - (ParseUtil::gameStringToBool(tileset->is_secondary) ? Project::num_tiles_primary : 0), tileset, nullptr);
|
||||
int offset = tileset->is_secondary ? Project::num_tiles_primary : 0;
|
||||
Metatile *metatile = Tileset::getMetatile(metatileId - offset, tileset, nullptr);
|
||||
if (metatile) {
|
||||
metatile->label = labelName.replace(tilesetPrefix, "");
|
||||
} else {
|
||||
|
|
Loading…
Reference in a new issue