diff --git a/docs/modding.md b/docs/modding.md index ff62666aa1..bc58c83ba6 100644 --- a/docs/modding.md +++ b/docs/modding.md @@ -636,7 +636,7 @@ first in-game frame. Projection matrices match the renderer's WebGPU clip conven Camera operators allow overriding the main camera. When an operator callback returns true, its values replace the camera state for the current frame. Register and unregister using `register_camera_operator` / `unregister_camera_operator`. -### GamemodeService (`mods/svc/gamemode.h`) +### GameModeService (`mods/svc/gamemode.h`) Allows a mod to register a gamemode that allows the game to designate one form of gameplay (named a gamemode). This is intended to allow large mods that change large amounts of game logic (such as a randomizer) to have explicit control @@ -651,7 +651,7 @@ Note: for any gamemode wishing to use the vanilla set of savefiles, use `gczelda // An example that shows registering a gamemode with function hooks that are scoped to the gamemode being active IMPORT_SERVICE(LogService, svc_log); IMPORT_SERVICE(HookService, svc_hook); -IMPORT_SERVICE(GamemodeService, svc_gamemode); +IMPORT_SERVICE(GameModeService, svc_gamemode); #define MY_GAMEMODE_ID "gamemodeid" @@ -665,7 +665,7 @@ static HookAction myFunctionHook(ModContext *ctx, void *args, void *, void *) { DEFINE_HOOK(fopAcM_createItem, CreateItem); -void onGamemodeActivated() { +void onGameModeActivated() { // Setup the gamemode, Add any hooks that are gamemode specific // Overlay any files that are gamemode specific ModResult result = mods::hook_add_pre(svc_hook, myFunctionHook); @@ -674,7 +674,7 @@ void onGamemodeActivated() { } } -void onGamemodeDeactivated() { +void onGameModeDeactivated() { // Uninstall any hooks that are gamemode specific // Remove overlays to any files that are gamemode specific ModResult result = mods::hook_uninstall(); @@ -688,14 +688,14 @@ void onSaveLoaded() { } // Register the gamemode when the mod is initialized -const GamemodeDesc gamemodeDesc = { +const GameModeDesc gamemodeDesc = { .gamemodeId = MY_GAMEMODE_ID, - .fullName = "Gamemode Name", + .fullName = "GameMode Name", // The save name should be something that other gamemodes will not try to use, so appending your name to it // is reccomended. Note: it is limited to 31 characters long .saveName = "my-unique-save_developer-name", - .onActivatedFunction = onGamemodeActivated, // Called when the gamemode is selected on the prelaunch menu (or is launched) - .onDeactivatedFunction = onGamemodeDeactivated, // Called when the gamemode is deselected on the prelaunch menu (or the mod is disabled) + .onActivatedFunction = onGameModeActivated, // Called when the gamemode is selected on the prelaunch menu (or is launched) + .onDeactivatedFunction = onGameModeDeactivated, // Called when the gamemode is deselected on the prelaunch menu (or the mod is disabled) .onPlayFunction = nullptr, // Called when "Play" is pressed on the prelaunch menu .onSaveLoadedFunction = onSaveLoaded, // Called when a save is loaded .onNewSaveFunction = nullptr, // Called after a new savefile is created @@ -710,7 +710,7 @@ Within the gamemode service, a gamemode can also request to load a UI for per-sa create a new file is pressed. ```cpp -IMPORT_SERVICE(GamemodeService, svc_gamemode); +IMPORT_SERVICE(GameModeService, svc_gamemode); IMPORT_SERVICE(UiService, svc_ui); void onNewSaveSelect(bool *out_proceedToNameSelect, bool *out_returnToFileSelect) { @@ -753,9 +753,9 @@ void onNewSaveSelect(bool *out_proceedToNameSelect, bool *out_returnToFileSelect svc_ui->window_push(mod_ctx, &desc, &windowHandle); } -const GamemodeDesc gamemodeDesc = { +const GameModeDesc gamemodeDesc = { .gamemodeId = "my-gamemode-id", - .fullName = "My Gamemode", + .fullName = "My GameMode", .saveName = "my-gamemode-save", .onNewSaveSelectFunction = onNewSaveSelect, }; diff --git a/include/d/d_file_select.h b/include/d/d_file_select.h index 271784803c..1e5d0c8671 100644 --- a/include/d/d_file_select.h +++ b/include/d/d_file_select.h @@ -740,9 +740,9 @@ public: #endif #ifdef TARGET_PC dDlst_FileSelFade_c mFadeDlst; - bool mGamemodeSaveStartBuildUi = true; - bool mGamemodeProceedToNameSelect = false; - bool mGamemodeReturnToFileSelect = false; + bool mGameModeSaveStartBuildUi = true; + bool mGameModeProceedToNameSelect = false; + bool mGameModeReturnToFileSelect = false; #endif #if PLATFORM_WII || PLATFORM_SHIELD diff --git a/sdk/include/mods/svc/gamemode.h b/sdk/include/mods/svc/gamemode.h index eab97f7188..1073c5bdd8 100644 --- a/sdk/include/mods/svc/gamemode.h +++ b/sdk/include/mods/svc/gamemode.h @@ -21,20 +21,20 @@ typedef struct { // completed void (*onGameResetFunction)(); // Called when the game is reset void (*onTickFunction)(); // Called on every tick -} GamemodeDesc; +} GameModeDesc; -typedef struct GamemodeService { +typedef struct GameModeService { ServiceHeader header; - ModResult (*register_gamemode)(ModContext* ctx, const GamemodeDesc* desc); - ModResult (*unregister_gamemode)(ModContext* ctx, const char* id); + ModResult (*register_game_mode)(ModContext* ctx, const GameModeDesc* desc); + ModResult (*unregister_game_mode)(ModContext* ctx, const char* id); ModResult (*is_active)(ModContext* ctx, const char* gamemodeId, bool* out_active); -} GamemodeService; +} GameModeService; #ifdef __cplusplus #include "mods/service.hpp" template <> -struct mods::ServiceTraits { +struct mods::ServiceTraits { static constexpr const char* id = GAMEMODE_SERVICE_ID; static constexpr uint16_t major_version = GAMEMODE_SERVICE_MAJOR; static constexpr uint16_t minor_version = GAMEMODE_SERVICE_MINOR; diff --git a/src/d/d_file_select.cpp b/src/d/d_file_select.cpp index a66a216f38..09fc04c5dc 100644 --- a/src/d/d_file_select.cpp +++ b/src/d/d_file_select.cpp @@ -1315,21 +1315,21 @@ void dFile_select_c::selectDataNameMove() { bool isModoruTxtDisp = modoruTxtDispAnm(); #ifdef TARGET_PC - const dusk::gamemode::Gamemode* gamemode = dusk::gamemode::getGamemodeManager().getCurrentGamemode(); + const dusk::gamemode::GameMode* gamemode = dusk::gamemode::getGameModeManager().getCurrentGameMode(); if (gamemode) { if (isHeaderTxtChange == true && isFileRecScale == true && isModoruTxtDisp == true) { - if (mGamemodeSaveStartBuildUi) { - gamemode->invokeOnNewSaveSelectFunction(&mGamemodeProceedToNameSelect, &mGamemodeReturnToFileSelect); - mGamemodeSaveStartBuildUi = false; + if (mGameModeSaveStartBuildUi) { + gamemode->invokeOnNewSaveSelectFunction(&mGameModeProceedToNameSelect, &mGameModeReturnToFileSelect); + mGameModeSaveStartBuildUi = false; } - if (mGamemodeReturnToFileSelect) { + if (mGameModeReturnToFileSelect) { backToDataSelectMove(); - mGamemodeSaveStartBuildUi = true; - mGamemodeProceedToNameSelect = false; - mGamemodeReturnToFileSelect = false; + mGameModeSaveStartBuildUi = true; + mGameModeProceedToNameSelect = false; + mGameModeReturnToFileSelect = false; return; } - if (!mGamemodeProceedToNameSelect) { + if (!mGameModeProceedToNameSelect) { return; } }else { @@ -1344,9 +1344,9 @@ void dFile_select_c::selectDataNameMove() { isModoruTxtDisp == true) { #ifdef TARGET_PC - mGamemodeSaveStartBuildUi = true; - mGamemodeProceedToNameSelect = false; - mGamemodeReturnToFileSelect = false; + mGameModeSaveStartBuildUi = true; + mGameModeProceedToNameSelect = false; + mGameModeReturnToFileSelect = false; #endif mDataSelProc = DATASELPROC_NAME_INPUT_WAIT; } @@ -1430,7 +1430,7 @@ void dFile_select_c::menuSelectStart() { #if TARGET_PC dusk::mods::svc::save_slot_loaded(mSelectNum, &mSaveData[mSelectNum]); - const dusk::gamemode::Gamemode* gamemode = dusk::gamemode::getGamemodeManager().getCurrentGamemode(); + const dusk::gamemode::GameMode* gamemode = dusk::gamemode::getGameModeManager().getCurrentGameMode(); if (gamemode) { gamemode->invokeOnSaveLoadedFunction(); } @@ -1787,7 +1787,7 @@ void dFile_select_c::nameInput2() { mIsSelectEnd = true; #if TARGET_PC dusk::mods::svc::save_slot_new(mSelectNum); - const dusk::gamemode::Gamemode* gamemode = dusk::gamemode::getGamemodeManager().getCurrentGamemode(); + const dusk::gamemode::GameMode* gamemode = dusk::gamemode::getGameModeManager().getCurrentGameMode(); if (gamemode) { gamemode->invokeOnNewSaveFunction(); gamemode->invokeOnSaveLoadedFunction(); diff --git a/src/d/d_s_logo.cpp b/src/d/d_s_logo.cpp index e9f739d3f3..874e9cf1d6 100644 --- a/src/d/d_s_logo.cpp +++ b/src/d/d_s_logo.cpp @@ -809,7 +809,7 @@ void dScnLogo_c::nextSceneChange() { if (status == 1) { dusk::mods::svc::save_slot_loaded( saveSlot, buf + saveSlot * SAVEDATA_SIZE); - const dusk::gamemode::Gamemode* gamemode = dusk::gamemode::getGamemodeManager().getCurrentGamemode(); + const dusk::gamemode::GameMode* gamemode = dusk::gamemode::getGameModeManager().getCurrentGameMode(); if (gamemode) { gamemode->invokeOnSaveLoadedFunction(); } diff --git a/src/dusk/achievements.cpp b/src/dusk/achievements.cpp index 5589cf3434..c838970eb5 100644 --- a/src/dusk/achievements.cpp +++ b/src/dusk/achievements.cpp @@ -1305,8 +1305,8 @@ void AchievementSystem::processEntry(Entry& e) { void AchievementSystem::tick() { // Until we implement an AchievementService, achievements will be unavailible in custom gamemodes - if (dusk::gamemode::getGamemodeManager().isCurrentGamemode(dusk::gamemode::kVanillaGamemodeId) == false - && dusk::gamemode::getGamemodeManager().isCurrentGamemode(dusk::speedrun::kSpeedrunGamemodeId) == false) { + if (dusk::gamemode::getGameModeManager().isCurrentGameMode(dusk::gamemode::kVanillaGameModeId) == false + && dusk::gamemode::getGameModeManager().isCurrentGameMode(dusk::speedrun::kSpeedrunGameModeId) == false) { m_signals.clear(); return; } diff --git a/src/dusk/gamemode.cpp b/src/dusk/gamemode.cpp index 0736541380..c928aa9f7a 100644 --- a/src/dusk/gamemode.cpp +++ b/src/dusk/gamemode.cpp @@ -7,85 +7,85 @@ namespace dusk::gamemode { -GamemodeManager g_GamemodeManager; +GameModeManager g_GameModeManager; -aurora::Module DuskGamemodeLog("dusk::gamemode"); +aurora::Module DuskGameModeLog("dusk::gamemode"); -GamemodeManager::GamemodeManager() { - registerGamemode(Gamemode(kVanillaGamemodeId,"Vanilla","gczelda2")); - mCurrentGamemodeId = kVanillaGamemodeId; +GameModeManager::GameModeManager() { + registerGameMode(GameMode(kVanillaGameModeId,"Vanilla","gczelda2")); + mCurrentGameModeId = kVanillaGameModeId; } -void GamemodeManager::setGamemodeToPrevious() { +void GameModeManager::setGameModeToPrevious() { // Gets the value from the settings of the last played gamemode id and sets that to the current gamemode (if registered) - GamemodeId id = dusk::getSettings().game.lastSelectedGamemodeId; - if (mRegisteredGamemodes.find(id) == mRegisteredGamemodes.end()) { - setCurrentGamemode(kVanillaGamemodeId); + GameModeId id = dusk::getSettings().game.lastSelectedGameModeId; + if (mRegisteredGameModes.find(id) == mRegisteredGameModes.end()) { + setCurrentGameMode(kVanillaGameModeId); return; } - setCurrentGamemode(id); + setCurrentGameMode(id); } -void GamemodeManager::registerGamemode(const Gamemode& gamemode) { +void GameModeManager::registerGameMode(const GameMode& gamemode) { if (gamemode.getId().empty()) { - DuskGamemodeLog.fatal("No gamemode id specified in GamemodeManager::registerGamemode!"); + DuskGameModeLog.fatal("No gamemode id specified in GameModeManager::registerGameMode!"); } if (gamemode.getSaveName().empty()) { - DuskGamemodeLog.fatal("No save name provided for gamemode {}", gamemode.getId()); + DuskGameModeLog.fatal("No save name provided for gamemode {}", gamemode.getId()); } if (gamemode.getFullName().empty()) { - DuskGamemodeLog.fatal("No Name Specified for gamemode {}", gamemode.getId()); + DuskGameModeLog.fatal("No Name Specified for gamemode {}", gamemode.getId()); } - if (mRegisteredGamemodes.find(gamemode.getId()) != mRegisteredGamemodes.end()) { - DuskGamemodeLog.warn("Attempting to register gamemode {} when it is already registered!", gamemode.getId()); + if (mRegisteredGameModes.find(gamemode.getId()) != mRegisteredGameModes.end()) { + DuskGameModeLog.warn("Attempting to register gamemode {} when it is already registered!", gamemode.getId()); return; } - mRegisteredGamemodes.emplace(gamemode.getId(),gamemode); + mRegisteredGameModes.emplace(gamemode.getId(),gamemode); dusk::ui::Prelaunch::rebuild_menu_buttons(); } -void GamemodeManager::unregisterGamemode(const GamemodeId& gamemodeId) { - const auto& it = mRegisteredGamemodes.find(gamemodeId); - if (it == mRegisteredGamemodes.end()) { - DuskGamemodeLog.warn( +void GameModeManager::unregisterGameMode(const GameModeId& gamemodeId) { + const auto& it = mRegisteredGameModes.find(gamemodeId); + if (it == mRegisteredGameModes.end()) { + DuskGameModeLog.warn( "Attempting to unregister gamemode of id {} that isn't registered!", gamemodeId); return; } - if (mCurrentGamemodeId == gamemodeId) { + if (mCurrentGameModeId == gamemodeId) { // We need to be careful if we are unregistering a running gamemode, the easiest way is just // to reset the game back to title as vanilla; ui::prelaunch_state().showPrelaunchOnReset = true; JUTGamePad::C3ButtonReset::sResetSwitchPushing = true; - setCurrentGamemode(kVanillaGamemodeId); + setCurrentGameMode(kVanillaGameModeId); } - mRegisteredGamemodes.erase(it); + mRegisteredGameModes.erase(it); dusk::ui::Prelaunch::rebuild_menu_buttons(); } -void GamemodeManager::setCurrentGamemode(const GamemodeId& id) { - if (mCurrentGamemodeId == id) { +void GameModeManager::setCurrentGameMode(const GameModeId& id) { + if (mCurrentGameModeId == id) { return; } - const Gamemode* currentGamemode = getCurrentGamemode(); - if (currentGamemode) { - currentGamemode->invokeOnDeactivatedFunction(); + const GameMode* currentGameMode = getCurrentGameMode(); + if (currentGameMode) { + currentGameMode->invokeOnDeactivatedFunction(); } - if (mRegisteredGamemodes.find(id) == mRegisteredGamemodes.end()) { - DuskGamemodeLog.warn("Attempting to set current game mode to {} when it hasn't been registered!", id); + if (mRegisteredGameModes.find(id) == mRegisteredGameModes.end()) { + DuskGameModeLog.warn("Attempting to set current game mode to {} when it hasn't been registered!", id); } - mCurrentGamemodeId = id; - dusk::getSettings().game.lastSelectedGamemodeId.setValue(id); + mCurrentGameModeId = id; + dusk::getSettings().game.lastSelectedGameModeId.setValue(id); dusk::config::save(); - currentGamemode = getCurrentGamemode(); - if (currentGamemode) { + currentGameMode = getCurrentGameMode(); + if (currentGameMode) { // Set the loaded save file to our gamemode's save name - mDoMemCd_SetFileName(currentGamemode->mSaveName); - currentGamemode->invokeOnActivatedFunction(); + mDoMemCd_SetFileName(currentGameMode->mSaveName); + currentGameMode->invokeOnActivatedFunction(); } } diff --git a/src/dusk/gamemode.hpp b/src/dusk/gamemode.hpp index e19301eb87..f2cb0db8af 100644 --- a/src/dusk/gamemode.hpp +++ b/src/dusk/gamemode.hpp @@ -4,23 +4,23 @@ #include "d/d_file_select.h" namespace dusk::gamemode { -using GamemodeId = std::string; +using GameModeId = std::string; -constexpr const char* kVanillaGamemodeId = "vanilla"; +constexpr const char* kVanillaGameModeId = "vanilla"; // This class holds the definition for the gamemode and various function pointers to call -class Gamemode { +class GameMode { public: - Gamemode(const GamemodeId& id, const std::string& fullName, const std::string& saveName) { + GameMode(const GameModeId& id, const std::string& fullName, const std::string& saveName) { mId = id; mFullName = fullName; mSaveName = saveName; } - const GamemodeId& getId() const { return mId; } + const GameModeId& getId() const { return mId; } const std::string& getFullName() const { return mFullName; } const std::string& getSaveName() const { return mSaveName; } - GamemodeId mId; + GameModeId mId; std::string mFullName; std::string mSaveName; @@ -84,37 +84,37 @@ public: std::function mOnTickFunction; }; -class GamemodeManager { +class GameModeManager { public: - GamemodeManager(); - void registerGamemode(const Gamemode& gamemode); - void unregisterGamemode(const GamemodeId& gamemodeId); + GameModeManager(); + void registerGameMode(const GameMode& gamemode); + void unregisterGameMode(const GameModeId& gamemodeId); - const Gamemode* getCurrentGamemode() const { - const auto& it = mRegisteredGamemodes.find(mCurrentGamemodeId); - return it != mRegisteredGamemodes.end() ? &it->second : &mRegisteredGamemodes.at(kVanillaGamemodeId); + const GameMode* getCurrentGameMode() const { + const auto& it = mRegisteredGameModes.find(mCurrentGameModeId); + return it != mRegisteredGameModes.end() ? &it->second : &mRegisteredGameModes.at(kVanillaGameModeId); } - bool isCurrentGamemode(const GamemodeId& id) const { - const Gamemode* gamemode = getCurrentGamemode(); + bool isCurrentGameMode(const GameModeId& id) const { + const GameMode* gamemode = getCurrentGameMode(); if (gamemode && gamemode->getId() == id) { return true; } return false; } - void setCurrentGamemode(const GamemodeId& id); - void setGamemodeToPrevious(); + void setCurrentGameMode(const GameModeId& id); + void setGameModeToPrevious(); - std::map& getRegisteredGamemodes() { return mRegisteredGamemodes; } + std::map& getRegisteredGameModes() { return mRegisteredGameModes; } private: - GamemodeId mCurrentGamemodeId; - std::map mRegisteredGamemodes; + GameModeId mCurrentGameModeId; + std::map mRegisteredGameModes; }; -extern GamemodeManager g_GamemodeManager; +extern GameModeManager g_GameModeManager; -inline GamemodeManager& getGamemodeManager() { - return g_GamemodeManager; +inline GameModeManager& getGameModeManager() { + return g_GameModeManager; } }; // namespace dusk::gamemode diff --git a/src/dusk/mods/svc/gamemode.cpp b/src/dusk/mods/svc/gamemode.cpp index bd5de01ad5..0d95812abd 100644 --- a/src/dusk/mods/svc/gamemode.cpp +++ b/src/dusk/mods/svc/gamemode.cpp @@ -32,7 +32,7 @@ void gamemode_remove_mod(LoadedMod& mod) { const auto it = s_gamemodesRegisteredToMods.find(mod.metadata.id); if (it != s_gamemodesRegisteredToMods.end()) { for (const auto& id : it->second) { - dusk::gamemode::getGamemodeManager().unregisterGamemode(id); + dusk::gamemode::getGameModeManager().unregisterGameMode(id); } s_gamemodesRegisteredToMods.erase(it); } @@ -40,7 +40,7 @@ void gamemode_remove_mod(LoadedMod& mod) { } // namespace -ModResult register_gamemode(ModContext* ctx, const GamemodeDesc* desc) { +ModResult register_gamemode(ModContext* ctx, const GameModeDesc* desc) { std::string id; if (!desc->gamemodeId) { Log.error("Attempted to register a gamemode with a null id!"); @@ -71,7 +71,7 @@ ModResult register_gamemode(ModContext* ctx, const GamemodeDesc* desc) { saveName = "gczelda2"; } - dusk::gamemode::Gamemode gamemode(id, fullName, saveName); + dusk::gamemode::GameMode gamemode(id, fullName, saveName); if (desc->onActivatedFunction) { gamemode.mOnActivatedFunction = desc->onActivatedFunction; @@ -98,12 +98,12 @@ ModResult register_gamemode(ModContext* ctx, const GamemodeDesc* desc) { gamemode.mOnTickFunction = desc->onTickFunction; } - dusk::gamemode::getGamemodeManager().registerGamemode(gamemode); + dusk::gamemode::getGameModeManager().registerGameMode(gamemode); const auto it = s_gamemodesRegisteredToMods.find(ctx->mod->metadata.id); if (it == s_gamemodesRegisteredToMods.end()) { - std::vector registeredGamemodes = {id}; - s_gamemodesRegisteredToMods.emplace(ctx->mod->metadata.id, registeredGamemodes); + std::vector registeredGameModes = {id}; + s_gamemodesRegisteredToMods.emplace(ctx->mod->metadata.id, registeredGameModes); }else { it->second.push_back(id); } @@ -113,7 +113,7 @@ ModResult register_gamemode(ModContext* ctx, const GamemodeDesc* desc) { ModResult unregister_gamemode(ModContext* ctx, const char* id) { std::string fullId = get_mod_gamemode_id(ctx,id); - dusk::gamemode::getGamemodeManager().unregisterGamemode(fullId); + dusk::gamemode::getGameModeManager().unregisterGameMode(fullId); // Remove the gamemode from the service registered gamemodes map auto it = s_gamemodesRegisteredToMods.find(ctx->mod->metadata.id); @@ -124,7 +124,7 @@ ModResult unregister_gamemode(ModContext* ctx, const char* id) { } ModResult is_active(ModContext* ctx, const char* gamemodeId, bool* out_active) { - *out_active = dusk::gamemode::getGamemodeManager().isCurrentGamemode(get_mod_gamemode_id(ctx,gamemodeId)); + *out_active = dusk::gamemode::getGameModeManager().isCurrentGameMode(get_mod_gamemode_id(ctx,gamemodeId)); return MOD_OK; } @@ -133,10 +133,10 @@ ModResult is_active(ModContext* ctx, const char* gamemodeId, bool* out_active) { namespace dusk::mods::svc { namespace { -constexpr GamemodeService s_gamemodeService{ - .header = SERVICE_HEADER(GamemodeService, GAMEMODE_SERVICE_MAJOR, GAMEMODE_SERVICE_MINOR), - .register_gamemode = gamemode_impl::register_gamemode, - .unregister_gamemode = gamemode_impl::unregister_gamemode, +constexpr GameModeService s_gamemodeService{ + .header = SERVICE_HEADER(GameModeService, GAMEMODE_SERVICE_MAJOR, GAMEMODE_SERVICE_MINOR), + .register_game_mode = gamemode_impl::register_gamemode, + .unregister_game_mode = gamemode_impl::unregister_gamemode, .is_active = gamemode_impl::is_active }; diff --git a/src/dusk/settings.cpp b/src/dusk/settings.cpp index 1665fdb102..e588f67d55 100644 --- a/src/dusk/settings.cpp +++ b/src/dusk/settings.cpp @@ -158,7 +158,7 @@ UserSettings g_userSettings = { .removeQuestMapMarkers {"game.removeQuestMapMarkers", false}, .showInputViewer {"game.showInputViewer", false}, .showInputViewerGyro {"game.showInputViewerGyro", false}, - .lastSelectedGamemodeId {"game.lastSelectedGamemodeId", gamemode::kVanillaGamemodeId} + .lastSelectedGameModeId {"game.lastSelectedGameModeId", gamemode::kVanillaGameModeId} }, .backend = { @@ -308,7 +308,7 @@ void registerSettings() { Register(g_userSettings.game.removeQuestMapMarkers); Register(g_userSettings.game.showInputViewer); Register(g_userSettings.game.showInputViewerGyro); - Register(g_userSettings.game.lastSelectedGamemodeId); + Register(g_userSettings.game.lastSelectedGameModeId); Register(g_userSettings.game.fastSpinner); Register(g_userSettings.game.infiniteHearts); Register(g_userSettings.game.infiniteArrows); diff --git a/src/dusk/settings.h b/src/dusk/settings.h index 82bebfcab4..2713812ac3 100644 --- a/src/dusk/settings.h +++ b/src/dusk/settings.h @@ -286,7 +286,7 @@ struct UserSettings { ConfigVar showInputViewer; ConfigVar showInputViewerGyro; - ConfigVar lastSelectedGamemodeId; + ConfigVar lastSelectedGameModeId; } game; struct { diff --git a/src/dusk/speedrun.cpp b/src/dusk/speedrun.cpp index 076daeade6..5a6067bfcb 100644 --- a/src/dusk/speedrun.cpp +++ b/src/dusk/speedrun.cpp @@ -21,18 +21,18 @@ static void onSpeedrunModeDeactive() { } } -void registerSpeedrunGamemode() { - dusk::gamemode::Gamemode speedrunGamemode(kSpeedrunGamemodeId,"Speedrun","gczelda2-speedrun"); - speedrunGamemode.mOnSaveLoadedFunction = dusk::speedrun::start; - speedrunGamemode.mOnActivatedFunction = onSpeedrunModeActive; - speedrunGamemode.mOnDeactivatedFunction = onSpeedrunModeDeactive; - speedrunGamemode.mOnTickFunction = dusk::speedrun::onGameFrame; +void registerSpeedrunGameMode() { + dusk::gamemode::GameMode speedrunGameMode(kSpeedrunGameModeId,"Speedrun","gczelda2-speedrun"); + speedrunGameMode.mOnSaveLoadedFunction = dusk::speedrun::start; + speedrunGameMode.mOnActivatedFunction = onSpeedrunModeActive; + speedrunGameMode.mOnDeactivatedFunction = onSpeedrunModeDeactive; + speedrunGameMode.mOnTickFunction = dusk::speedrun::onGameFrame; - dusk::gamemode::getGamemodeManager().registerGamemode(speedrunGamemode); + dusk::gamemode::getGameModeManager().registerGameMode(speedrunGameMode); } -void unregisterSpeedrunGamemode() { - dusk::gamemode::getGamemodeManager().unregisterGamemode(kSpeedrunGamemodeId); +void unregisterSpeedrunGameMode() { + dusk::gamemode::getGameModeManager().unregisterGameMode(kSpeedrunGameModeId); } void resetForSpeedrunMode() { diff --git a/src/dusk/speedrun.h b/src/dusk/speedrun.h index 1a70167113..c765f4d060 100644 --- a/src/dusk/speedrun.h +++ b/src/dusk/speedrun.h @@ -5,7 +5,7 @@ namespace dusk::speedrun { -constexpr const char* kSpeedrunGamemodeId = "vanilla_speedrun"; +constexpr const char* kSpeedrunGameModeId = "vanilla_speedrun"; struct SpeedrunInfo { @@ -47,13 +47,13 @@ struct SpeedrunInfo { extern SpeedrunInfo g_speedrunInfo; -void registerSpeedrunGamemode(); -void unregisterSpeedrunGamemode(); +void registerSpeedrunGameMode(); +void unregisterSpeedrunGameMode(); void resetForSpeedrunMode(); void restoreFromSpeedrunMode(); inline bool isActive() { - return dusk::gamemode::getGamemodeManager().isCurrentGamemode(kSpeedrunGamemodeId); + return dusk::gamemode::getGameModeManager().isCurrentGameMode(kSpeedrunGameModeId); } } // namespace dusk diff --git a/src/dusk/ui/menu_bar.cpp b/src/dusk/ui/menu_bar.cpp index 6ae31987dd..44244ec39b 100644 --- a/src/dusk/ui/menu_bar.cpp +++ b/src/dusk/ui/menu_bar.cpp @@ -64,8 +64,8 @@ MenuBar::MenuBar() } // Only allow us to access achievements if we are playing on a gamemode that uses them - if (dusk::gamemode::getGamemodeManager().isCurrentGamemode(dusk::gamemode::kVanillaGamemodeId) - || dusk::gamemode::getGamemodeManager().isCurrentGamemode(dusk::speedrun::kSpeedrunGamemodeId)) { + if (dusk::gamemode::getGameModeManager().isCurrentGameMode(dusk::gamemode::kVanillaGameModeId) + || dusk::gamemode::getGameModeManager().isCurrentGameMode(dusk::speedrun::kSpeedrunGameModeId)) { mTabBar->add_tab("Achievements", [this] { push(std::make_unique()); }); } mTabBar->add_tab("Mods", [this] { push(std::make_unique()); }); @@ -100,7 +100,7 @@ MenuBar::MenuBar() return; } dismiss(modal); - if (gamemode::getGamemodeManager().getRegisteredGamemodes().size() > 1) { + if (gamemode::getGameModeManager().getRegisteredGameModes().size() > 1) { // If we have gamemodes registered, show pre-launch on a menubar reset prelaunch_state().showPrelaunchOnReset = true; Document::hide(true); diff --git a/src/dusk/ui/prelaunch.cpp b/src/dusk/ui/prelaunch.cpp index 27b3f29c89..60b278519e 100644 --- a/src/dusk/ui/prelaunch.cpp +++ b/src/dusk/ui/prelaunch.cpp @@ -766,10 +766,10 @@ static std::string get_playbutton_text() { return "Select Disc Image"; } std::string playText; - const dusk::gamemode::Gamemode* currentGameMode = - dusk::gamemode::getGamemodeManager().getCurrentGamemode(); + const dusk::gamemode::GameMode* currentGameMode = + dusk::gamemode::getGameModeManager().getCurrentGameMode(); if (currentGameMode != nullptr) { - return currentGameMode->getId() == dusk::gamemode::kVanillaGamemodeId ? "Play" : + return currentGameMode->getId() == dusk::gamemode::kVanillaGameModeId ? "Play" : "Play " + currentGameMode->getFullName(); } return "Play"; @@ -821,7 +821,7 @@ Prelaunch::Prelaunch() : Document(kDocumentSource, false, DocumentScope::Prelaun void Prelaunch::build_menu_buttons() { if (auto* menuList = mDocument->GetElementById("menu-list")) { // Set the gamemode to the last used before showing the play button - dusk::gamemode::getGamemodeManager().setGamemodeToPrevious(); + dusk::gamemode::getGameModeManager().setGameModeToPrevious(); mMenuButtons.push_back(std::make_unique