Improved game menu patch code

- Added active suffix if the hovered tab button matches the current tab
master
Mohammad Shoaib Khan 2023-02-24 20:44:54 +05:30
parent 911c93a555
commit 15380e5b76
No known key found for this signature in database
GPG Key ID: D8040D966320B620
1 changed files with 13 additions and 11 deletions

View File

@ -11,26 +11,28 @@ namespace stardew_access.Patches
{
try
{
// Continue if only in the Inventory Page or Crafting Page
if (__instance.currentTab != 0 && __instance.currentTab != 4 && __instance.currentTab != 6 && __instance.currentTab != 7)
// Skip if in map page
if (__instance.currentTab == 3)
return;
int x = Game1.getMouseX(true), y = Game1.getMouseY(true); // Mouse x and y position
for (int i = 0; i < __instance.tabs.Count; i++)
{
if (__instance.tabs[i].containsPoint(x, y))
{
string toSpeak = $"{GameMenu.getLabelOfTabFromIndex(i)} Tab";
if (!__instance.tabs[i].containsPoint(x, y))
continue;
string toSpeak = $"{GameMenu.getLabelOfTabFromIndex(i)} Tab" + ((i == __instance.currentTab) ? " Active" : "");
if (gameMenuQueryKey != toSpeak)
{
MainClass.DebugLog("here");
gameMenuQueryKey = toSpeak;
MainClass.ScreenReader.Say(toSpeak, true);
}
return;
}
}
// If not hovering on any tab button
Cleanup();
}
catch (Exception e)
{