1
0
mirror of https://github.com/vcmi/vcmi.git synced 2024-11-24 08:32:34 +02:00

Add unassigned by default hotkeys to show visitable or blocked tiles

This commit is contained in:
Ivan Savenko 2024-07-19 19:38:40 +00:00
parent e862b9c868
commit 8d4f8dcf9c
5 changed files with 22 additions and 0 deletions

View File

@ -71,6 +71,8 @@ std::vector<AdventureMapShortcutState> AdventureMapShortcuts::getShortcuts()
{ EShortcut::ADVENTURE_QUEST_LOG, optionCanViewQuests(), [this]() { this->showQuestlog(); } },
{ EShortcut::ADVENTURE_TOGGLE_SLEEP, optionHeroSelected(), [this]() { this->toggleSleepWake(); } },
{ EShortcut::ADVENTURE_TOGGLE_GRID, optionInMapView(), [this]() { this->toggleGrid(); } },
{ EShortcut::ADVENTURE_TOGGLE_VISITABLE, optionInMapView(), [this]() { this->toggleVisitable(); } },
{ EShortcut::ADVENTURE_TOGGLE_BLOCKED, optionInMapView(), [this]() { this->toggleBlocked(); } },
{ EShortcut::ADVENTURE_TRACK_HERO, optionInMapView(), [this]() { this->toggleTrackHero(); } },
{ EShortcut::ADVENTURE_SET_HERO_ASLEEP, optionHeroAwake(), [this]() { this->setHeroSleeping(); } },
{ EShortcut::ADVENTURE_SET_HERO_AWAKE, optionHeroSleeping(), [this]() { this->setHeroAwake(); } },
@ -168,6 +170,18 @@ void AdventureMapShortcuts::toggleGrid()
s["showGrid"].Bool() = !settings["gameTweaks"]["showGrid"].Bool();
}
void AdventureMapShortcuts::toggleVisitable()
{
Settings s = settings.write["session"];
s["showVisitable"].Bool() = !settings["session"]["showVisitable"].Bool();
}
void AdventureMapShortcuts::toggleBlocked()
{
Settings s = settings.write["session"];
s["showBlocked"].Bool() = !settings["session"]["showBlocked"].Bool();
}
void AdventureMapShortcuts::toggleSleepWake()
{
if (!optionHeroSelected())

View File

@ -42,6 +42,8 @@ class AdventureMapShortcuts
void showQuestlog();
void toggleTrackHero();
void toggleGrid();
void toggleVisitable();
void toggleBlocked();
void toggleSleepWake();
void setHeroSleeping();
void setHeroAwake();

View File

@ -120,6 +120,8 @@ enum class EShortcut
// Adventure map screen
ADVENTURE_GAME_OPTIONS, // 'o', Open CAdventureOptions window
ADVENTURE_TOGGLE_GRID, // F6, Toggles map grid
ADVENTURE_TOGGLE_VISITABLE, // Toggles visitable tiles overlay
ADVENTURE_TOGGLE_BLOCKED, // Toggles blocked tiles overlay
ADVENTURE_TOGGLE_SLEEP, // Toggles hero sleep status
ADVENTURE_SET_HERO_ASLEEP, // Moves hero to sleep state
ADVENTURE_SET_HERO_AWAKE, // Move hero to awake state

View File

@ -171,6 +171,8 @@ EShortcut ShortcutHandler::findShortcut(const std::string & identifier ) const
{"gameActivateConsole", EShortcut::GAME_ACTIVATE_CONSOLE },
{"adventureGameOptions", EShortcut::ADVENTURE_GAME_OPTIONS },
{"adventureToggleGrid", EShortcut::ADVENTURE_TOGGLE_GRID },
{"adventureToggleVisitable", EShortcut::ADVENTURE_TOGGLE_VISITABLE},
{"adventureToggleBlocked", EShortcut::ADVENTURE_TOGGLE_BLOCKED },
{"adventureToggleSleep", EShortcut::ADVENTURE_TOGGLE_SLEEP },
{"adventureSetHeroAsleep", EShortcut::ADVENTURE_SET_HERO_ASLEEP },
{"adventureSetHeroAwake", EShortcut::ADVENTURE_SET_HERO_AWAKE },

View File

@ -40,6 +40,8 @@
"adventureSetHeroAwake": "W",
"adventureThievesGuild": "G",
"adventureToggleGrid": "F6",
"adventureToggleVisitable": [],
"adventureToggleBlocked": [],
"adventureToggleMapLevel": "U",
"adventureToggleSleep": [],
"adventureTrackHero": "F5",