From a6842e73404296d009767a3c16edeed155beda4a Mon Sep 17 00:00:00 2001 From: obligaron Date: Thu, 6 Jan 2022 15:17:53 +0100 Subject: [PATCH] Reorder options in settingsmenu --- Source/diablo.cpp | 159 +++++++++++++++++++++++---------------------- Source/options.cpp | 20 +++--- Source/options.h | 6 +- 3 files changed, 93 insertions(+), 92 deletions(-) diff --git a/Source/diablo.cpp b/Source/diablo.cpp index 53f632b18..e752d037e 100644 --- a/Source/diablo.cpp +++ b/Source/diablo.cpp @@ -1384,13 +1384,21 @@ bool IsPlayerDead() void InitKeymapActions() { - sgOptions.Keymapper.AddAction( - "Help", - N_("Help"), - N_("Open Help Screen."), - DVL_VK_F1, - HelpKeyPressed, - [&]() { return !IsPlayerDead(); }); + for (int i = 0; i < 8; ++i) { + sgOptions.Keymapper.AddAction( + "BeltItem{}", + N_("Belt item {}"), + N_("Use Belt item."), + '1' + i, + [i] { + auto &myPlayer = Players[MyPlayerId]; + if (!myPlayer.SpdList[i].isEmpty() && myPlayer.SpdList[i]._itype != ItemType::Gold) { + UseInvItem(MyPlayerId, INVITEM_BELT_FIRST + i); + } + }, + [&]() { return !IsPlayerDead(); }, + i + 1); + } for (int i = 0; i < 4; ++i) { sgOptions.Keymapper.AddAction( "QuickSpell{}", @@ -1410,30 +1418,41 @@ void InitKeymapActions() [&]() { return !IsPlayerDead(); }, i + 1); } - for (int i = 0; i < 4; ++i) { - sgOptions.Keymapper.AddAction( - "QuickMessage{}", - N_("Quick Message {}"), - N_("Use Quick Message in chat."), - DVL_VK_F9 + i, - [i]() { DiabloHotkeyMsg(i); }, - [] { return true; }, - i + 1); - } sgOptions.Keymapper.AddAction( - "DecreaseGamma", - N_("Decrease Gamma"), - N_("Reduce screen brightness."), - 'G', - DecreaseGamma, + "DisplaySpells", + N_("Speedbook"), + N_("Open Speedbook."), + 'S', + DisplaySpellsKeyPressed, [&]() { return !IsPlayerDead(); }); sgOptions.Keymapper.AddAction( - "IncreaseGamma", - N_("Increase Gamma"), - N_("Increase screen brightness."), - 'F', - IncreaseGamma, + "QuickSave", + N_("Quick save"), + N_("Saves the game."), + DVL_VK_F2, + [] { gamemenu_save_game(false); }, + [&]() { return !gbIsMultiplayer && !IsPlayerDead(); }); + sgOptions.Keymapper.AddAction( + "QuickLoad", + N_("Quick load"), + N_("Loads the game."), + DVL_VK_F3, + [] { gamemenu_load_game(false); }, + [&]() { return !gbIsMultiplayer && gbValidSaveFile && stextflag == STORE_NONE; }); + sgOptions.Keymapper.AddAction( + "QuitGame", + N_("Quit game"), + N_("Closes the game."), + DVL_VK_INVALID, + [] { gamemenu_quit_game(false); }); + sgOptions.Keymapper.AddAction( + "StopHero", + N_("Stop hero"), + N_("Stops walking and cancel pending actions."), + DVL_VK_INVALID, + [] { Players[MyPlayerId].Stop(); }, [&]() { return !IsPlayerDead(); }); + sgOptions.Keymapper.AddAction( "Inventory", N_("Inventory"), @@ -1455,6 +1474,23 @@ void InitKeymapActions() 'Q', QuestLogKeyPressed, [&]() { return !IsPlayerDead(); }); + sgOptions.Keymapper.AddAction( + "SpellBook", + N_("Spellbook"), + N_("Open Spellbook."), + 'B', + SpellBookKeyPressed, + [&]() { return !IsPlayerDead(); }); + for (int i = 0; i < 4; ++i) { + sgOptions.Keymapper.AddAction( + "QuickMessage{}", + N_("Quick Message {}"), + N_("Use Quick Message in chat."), + DVL_VK_F9 + i, + [i]() { DiabloHotkeyMsg(i); }, + [] { return true; }, + i + 1); + } sgOptions.Keymapper.AddAction( "Zoom", N_("Zoom"), @@ -1466,18 +1502,25 @@ void InitKeymapActions() }, [&]() { return !IsPlayerDead(); }); sgOptions.Keymapper.AddAction( - "DisplaySpells", - N_("Speedbook"), - N_("Open Speedbook."), - 'S', - DisplaySpellsKeyPressed, + "DecreaseGamma", + N_("Decrease Gamma"), + N_("Reduce screen brightness."), + 'G', + DecreaseGamma, [&]() { return !IsPlayerDead(); }); sgOptions.Keymapper.AddAction( - "SpellBook", - N_("Spellbook"), - N_("Open Spellbook."), - 'B', - SpellBookKeyPressed, + "IncreaseGamma", + N_("Increase Gamma"), + N_("Increase screen brightness."), + 'F', + IncreaseGamma, + [&]() { return !IsPlayerDead(); }); + sgOptions.Keymapper.AddAction( + "Help", + N_("Help"), + N_("Open Help Screen."), + DVL_VK_F1, + HelpKeyPressed, [&]() { return !IsPlayerDead(); }); sgOptions.Keymapper.AddAction( "GameInfo", @@ -1492,48 +1535,6 @@ void InitKeymapActions() UiFlags::ColorWhite); }, [&]() { return !IsPlayerDead(); }); - for (int i = 0; i < 8; ++i) { - sgOptions.Keymapper.AddAction( - "BeltItem{}", - N_("Belt item {}"), - N_("Use Belt item."), - '1' + i, - [i] { - auto &myPlayer = Players[MyPlayerId]; - if (!myPlayer.SpdList[i].isEmpty() && myPlayer.SpdList[i]._itype != ItemType::Gold) { - UseInvItem(MyPlayerId, INVITEM_BELT_FIRST + i); - } - }, - [&]() { return !IsPlayerDead(); }, - i + 1); - } - sgOptions.Keymapper.AddAction( - "QuickSave", - N_("Quick save"), - N_("Saves the game."), - DVL_VK_F2, - [] { gamemenu_save_game(false); }, - [&]() { return !gbIsMultiplayer && !IsPlayerDead(); }); - sgOptions.Keymapper.AddAction( - "QuickLoad", - N_("Quick load"), - N_("Loads the game."), - DVL_VK_F3, - [] { gamemenu_load_game(false); }, - [&]() { return !gbIsMultiplayer && gbValidSaveFile && stextflag == STORE_NONE; }); - sgOptions.Keymapper.AddAction( - "QuitGame", - N_("Quit game"), - N_("Closes the game."), - DVL_VK_INVALID, - [] { gamemenu_quit_game(false); }); - sgOptions.Keymapper.AddAction( - "StopHero", - N_("Stop hero"), - N_("Stops walking and cancel pending actions."), - DVL_VK_INVALID, - [] { Players[MyPlayerId].Stop(); }, - [&]() { return !IsPlayerDead(); }); #ifdef _DEBUG sgOptions.Keymapper.AddAction( "DebugToggle", diff --git a/Source/options.cpp b/Source/options.cpp index 9f29120d8..faa66a077 100644 --- a/Source/options.cpp +++ b/Source/options.cpp @@ -796,14 +796,14 @@ std::vector GraphicsOptions::GetEntries() &integerScaling, &vSync, #endif + &limitFPS, + &showFPS, &colorCycling, #if SDL_VERSION_ATLEAST(2, 0, 0) &hardwareCursor, &hardwareCursorForItems, &hardwareCursorMaxSize, #endif - &limitFPS, - &showFPS, }; // clang-format on } @@ -847,8 +847,10 @@ GameplayOptions::GameplayOptions() std::vector GameplayOptions::GetEntries() { return { - &runInTown, &grabInput, + &runInTown, + &adriaRefillsMana, + &randomizeQuests, &theoQuest, &cowQuest, &friendlyFire, @@ -856,20 +858,18 @@ std::vector GameplayOptions::GetEntries() &testBarbarian, &experienceBar, &enemyHealthBar, + &showMonsterType, + &disableCripplingShrines, + &quickCast, + &autoRefillBelt, + &autoPickupInTown, &autoGoldPickup, &autoElixirPickup, - &autoPickupInTown, - &adriaRefillsMana, &autoEquipWeapons, &autoEquipArmor, &autoEquipHelms, &autoEquipShields, &autoEquipJewelry, - &randomizeQuests, - &showMonsterType, - &autoRefillBelt, - &disableCripplingShrines, - &quickCast, &numHealPotionPickup, &numFullHealPotionPickup, &numManaPotionPickup, diff --git a/Source/options.h b/Source/options.h index 8c2afae35..160c86903 100644 --- a/Source/options.h +++ b/Source/options.h @@ -587,16 +587,16 @@ struct Options { [[nodiscard]] std::vector GetCategories() { return { + &Language, &StartUp, + &Graphics, + &Audio, &Diablo, &Hellfire, - &Audio, &Gameplay, - &Graphics, &Controller, &Network, &Chat, - &Language, &Keymapper, }; }