diff options
author | Nikolay Korolev <nickvnuk@gmail.com> | 2021-08-08 12:38:21 +0200 |
---|---|---|
committer | Nikolay Korolev <nickvnuk@gmail.com> | 2021-08-08 12:38:21 +0200 |
commit | 9cc12018928b73acccd575970a6e4dbcb5b460ac (patch) | |
tree | a9ffaccca16aa71da94212e4810eee8fb15a1d19 /src/core/re3.cpp | |
parent | lcs bridge (diff) | |
parent | Merge pull request #1266 from Nick007J/miami (diff) | |
download | re3-9cc12018928b73acccd575970a6e4dbcb5b460ac.tar re3-9cc12018928b73acccd575970a6e4dbcb5b460ac.tar.gz re3-9cc12018928b73acccd575970a6e4dbcb5b460ac.tar.bz2 re3-9cc12018928b73acccd575970a6e4dbcb5b460ac.tar.lz re3-9cc12018928b73acccd575970a6e4dbcb5b460ac.tar.xz re3-9cc12018928b73acccd575970a6e4dbcb5b460ac.tar.zst re3-9cc12018928b73acccd575970a6e4dbcb5b460ac.zip |
Diffstat (limited to 'src/core/re3.cpp')
-rw-r--r-- | src/core/re3.cpp | 27 |
1 files changed, 20 insertions, 7 deletions
diff --git a/src/core/re3.cpp b/src/core/re3.cpp index 2cd40e57..98a51909 100644 --- a/src/core/re3.cpp +++ b/src/core/re3.cpp @@ -44,6 +44,9 @@ #include "Camera.h" #include "MBlur.h" #include "ControllerConfig.h" +#include "CarCtrl.h" +#include "Population.h" +#include "IniFile.h" #ifdef DETECT_JOYSTICK_MENU #include "crossplatform.h" @@ -560,22 +563,30 @@ bool LoadINISettings() // CFO check if (option.m_Action < MENUACTION_NOTHING && option.m_CFO->save) { - // CFO only supports saving uint8 right now - // Migrate from old .ini to new .ini - if (migrate && ReadIniIfExists("FrontendOptions", option.m_CFO->save, option.m_CFO->value)) + // Old values can only be int8, new ones can contain float if it is slider + if (migrate && ReadIniIfExists("FrontendOptions", option.m_CFO->save, (int8*)option.m_CFO->value)) cfg["FrontendOptions"].remove(option.m_CFO->save); + else if (option.m_Action == MENUACTION_CFO_SLIDER) + ReadIniIfExists(option.m_CFO->saveCat, option.m_CFO->save, (float*)option.m_CFO->value); else - ReadIniIfExists(option.m_CFO->saveCat, option.m_CFO->save, option.m_CFO->value); + ReadIniIfExists(option.m_CFO->saveCat, option.m_CFO->save, (int8*)option.m_CFO->value); if (option.m_Action == MENUACTION_CFO_SELECT) { - option.m_CFOSelect->lastSavedValue = option.m_CFOSelect->displayedValue = *option.m_CFO->value; + option.m_CFOSelect->lastSavedValue = option.m_CFOSelect->displayedValue = *(int8*)option.m_CFO->value; } } } } #endif + // Fetched in above block, but needs evaluation +#ifdef PED_CAR_DENSITY_SLIDERS + CPopulation::MaxNumberOfPedsInUse = DEFAULT_MAX_NUMBER_OF_PEDS * CIniFile::PedNumberMultiplier; + CPopulation::MaxNumberOfPedsInUseInterior = DEFAULT_MAX_NUMBER_OF_PEDS_INTERIOR * CIniFile::PedNumberMultiplier; + CCarCtrl::MaxNumberOfCarsInUse = DEFAULT_MAX_NUMBER_OF_CARS * CIniFile::CarNumberMultiplier; +#endif + return true; } @@ -653,8 +664,10 @@ void SaveINISettings() break; if (option.m_Action < MENUACTION_NOTHING && option.m_CFO->save) { - // Beware: CFO only supports saving uint8 right now - StoreIni(option.m_CFO->saveCat, option.m_CFO->save, *option.m_CFO->value); + if (option.m_Action == MENUACTION_CFO_SLIDER) + StoreIni(option.m_CFO->saveCat, option.m_CFO->save, *(float*)option.m_CFO->value); + else + StoreIni(option.m_CFO->saveCat, option.m_CFO->save, *(int8*)option.m_CFO->value); } } } |