Options Logic Cleanup (#71)

* Output/Logging Overhaul
* Added StandardOut class
* Renamed LOGX macros to LOG_X
* Removed LogMsg macros in favor of LOG_X
* Added console window for debug Windows builds

* Options Refactor
* Moved options loading code from AppPlatform classes to Options class
* Added AppPlatform::singleton()
* Minecraft::m_options is now only accessible via Minecraft::getOptions() (as it should be)
* Making this work with SDL2 next

* Options Cleanup for SDL2

* Added AppPlatform::hasFileSystemAccess()
* Options won't try to load if hasFileSystemAccess returns false. Emscripten build will be happy.

---------

Co-authored-by: Brent Da Mage <BrentDaMage@users.noreply.github.com>
This commit is contained in:
Brent
2023-09-04 04:11:36 -05:00
committed by GitHub
parent cd4c469571
commit 2e55f99a54
25 changed files with 355 additions and 275 deletions

View File

@@ -59,7 +59,7 @@ bool SelectWorldScreen::isInGameScreen()
void SelectWorldScreen::keyPressed(int code)
{
#ifndef ORIGINAL_CODE
if (m_pMinecraft->m_options.getKey(KM_MENU_OK) == code)
if (m_pMinecraft->getOptions()->getKey(KM_MENU_OK) == code)
m_pWorldSelectionList->selectItem(m_pWorldSelectionList->getItemAtPosition(m_width / 2, m_height / 2), false);
m_btnUnknown.field_36 = true;
@@ -67,10 +67,10 @@ void SelectWorldScreen::keyPressed(int code)
if (m_btnUnknown.field_36)
{
if (m_pMinecraft->m_options.getKey(KM_LEFT) == code)
if (m_pMinecraft->getOptions()->getKey(KM_LEFT) == code)
m_pWorldSelectionList->stepLeft();
if (m_pMinecraft->m_options.getKey(KM_RIGHT) == code)
if (m_pMinecraft->getOptions()->getKey(KM_RIGHT) == code)
m_pWorldSelectionList->stepRight();
}