Skip to content

Commit 903cf87

Browse files
committed
Make checkboxes and normal menu items toggle when left/right arrows are pressed
1 parent fc5e10a commit 903cf87

2 files changed

Lines changed: 27 additions & 2 deletions

File tree

MenuAPI/Menu.cs

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -813,6 +813,16 @@ public void GoLeft()
813813
DynamicListItemCurrentItemChanged(this, dynList, oldValue, newSelectedItem);
814814
PlaySoundFrontend(-1, "NAV_LEFT_RIGHT", "HUD_FRONTEND_DEFAULT_SOUNDSET", false);
815815
}
816+
// If it's a checkbox, just trigger the box instead.
817+
else if (item.Enabled && item is MenuCheckboxItem checkbox)
818+
{
819+
SelectItem(checkbox);
820+
}
821+
// If the item is enabled and it's not any of the above, just select it.
822+
else if (item.Enabled)
823+
{
824+
SelectItem(item);
825+
}
816826
}
817827
}
818828

@@ -864,6 +874,16 @@ public void GoRight()
864874
DynamicListItemCurrentItemChanged(this, dynList, oldValue, newSelectedItem);
865875
PlaySoundFrontend(-1, "NAV_LEFT_RIGHT", "HUD_FRONTEND_DEFAULT_SOUNDSET", false);
866876
}
877+
// If it's a checkbox, just trigger the box instead.
878+
else if (item.Enabled && item is MenuCheckboxItem checkbox)
879+
{
880+
SelectItem(checkbox);
881+
}
882+
// If the item is enabled and it's not any of the above, just select it.
883+
else if (item.Enabled)
884+
{
885+
SelectItem(item);
886+
}
867887
}
868888
}
869889

MenuAPI/MenuController.cs

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -197,7 +197,12 @@ private async Task ProcessMainButtons()
197197
if (currentMenu.Visible && AreMenuButtonsEnabled)
198198
{
199199
// Select / Enter
200-
if (Game.IsDisabledControlJustReleased(0, Control.FrontendAccept) || Game.IsControlJustReleased(0, Control.FrontendAccept) || (Game.IsDisabledControlJustReleased(0, Control.VehicleMouseControlOverride) || Game.IsControlJustReleased(0, Control.VehicleMouseControlOverride)))
200+
if (
201+
Game.IsDisabledControlJustReleased(0, Control.FrontendAccept) ||
202+
Game.IsControlJustReleased(0, Control.FrontendAccept) ||
203+
Game.IsDisabledControlJustReleased(0, Control.VehicleMouseControlOverride) ||
204+
Game.IsControlJustReleased(0, Control.VehicleMouseControlOverride)
205+
)
201206
{
202207
if (currentMenu.Size > 0)
203208
{
@@ -709,7 +714,7 @@ internal static async Task DrawInstructionalButtons()
709714
EndScaleformMovieMethod();
710715

711716

712-
717+
713718

714719
for (int i = 0; i < menu.InstructionalButtons.Count; i++)
715720
{

0 commit comments

Comments
 (0)