diff --git a/include/project.h b/include/project.h index fe484645..1a32ef11 100644 --- a/include/project.h +++ b/include/project.h @@ -13,6 +13,7 @@ #include #include #include +#include static QString NONE_MAP_CONSTANT = "MAP_NONE"; static QString NONE_MAP_NAME = "None"; @@ -26,6 +27,7 @@ public: QMap *map_groups; QList groupedMapNames; QStringList *mapNames = nullptr; + QMap miscConstants; QList flyableMaps; QMap* mapConstantsToMapNames; QMap* mapNamesToMapConstants; @@ -141,6 +143,7 @@ public: void readBgEventFacingDirections(); void readMetatileBehaviors(); void readHealLocations(); + void readMiscellaneousConstants(); void loadEventPixmaps(QList objects); QMap getEventObjGfxConstants(); diff --git a/src/mainwindow.cpp b/src/mainwindow.cpp index 69c52c5b..07df271c 100644 --- a/src/mainwindow.cpp +++ b/src/mainwindow.cpp @@ -618,6 +618,7 @@ void MainWindow::loadDataStructures() { project->readMetatileBehaviors(); project->readTilesetProperties(); project->readHealLocations(); + project->readMiscellaneousConstants(); project->readSpeciesIconPaths(); project->readWildMonData(); } diff --git a/src/project.cpp b/src/project.cpp index 64cba705..22b9623f 100644 --- a/src/project.cpp +++ b/src/project.cpp @@ -1758,6 +1758,12 @@ QMap Project::getEventObjGfxConstants() { return constants; } +void Project::readMiscellaneousConstants() { + QMap pokemonDefines = parser.readCDefines("include/pokemon.h", QStringList() << "MIN_" << "MAX_"); + miscConstants.insert("max_level_define", pokemonDefines.value("MAX_LEVEL")); + miscConstants.insert("min_level_define", pokemonDefines.value("MIN_LEVEL")); +} + QString Project::fixPalettePath(QString path) { path = path.replace(QRegExp("\\.gbapal$"), ".pal"); return path; diff --git a/src/ui/montabwidget.cpp b/src/ui/montabwidget.cpp index 24f1a68f..18319f9a 100644 --- a/src/ui/montabwidget.cpp +++ b/src/ui/montabwidget.cpp @@ -68,7 +68,7 @@ void MonTabWidget::populateTab(int tabIndex, WildMonInfo monInfo, QString fieldN speciesTable->setColumnCount(6); QStringList landMonTableHeaders; - landMonTableHeaders << "Index" << "Species" << "Min Level" << "Max Level" << "Index Percentage" << "Encounter Rate"; + landMonTableHeaders << "Index" << "Species" << "Min Level" << "Max Level" << "Index Ratio" << "Encounter Rate"; speciesTable->setHorizontalHeaderLabels(landMonTableHeaders); speciesTable->horizontalHeader()->show(); speciesTable->verticalHeader()->hide(); @@ -126,10 +126,10 @@ void MonTabWidget::createSpeciesTableRow(QTableWidget *table, WildPokemon mon, i QSpinBox *minLevel = new QSpinBox; QSpinBox *maxLevel = new QSpinBox; - minLevel->setMinimum(1); - minLevel->setMaximum(100); - maxLevel->setMinimum(1); - maxLevel->setMaximum(100); + minLevel->setMinimum(project->miscConstants.value("min_level_define").toInt()); + minLevel->setMaximum(project->miscConstants.value("max_level_define").toInt()); + maxLevel->setMinimum(project->miscConstants.value("min_level_define").toInt()); + maxLevel->setMaximum(project->miscConstants.value("max_level_define").toInt()); minLevel->setValue(mon.minLevel); maxLevel->setValue(mon.maxLevel); @@ -143,7 +143,7 @@ void MonTabWidget::createSpeciesTableRow(QTableWidget *table, WildPokemon mon, i if (field.first == fieldName) break; fieldIndex++; } - QLabel *percentLabel = new QLabel(QString("%1%").arg( + QLabel *percentLabel = new QLabel(QString("%1").arg( QString::number(project->wildMonFields[fieldIndex].second[index - 1] )));