diff --git a/Aetheria.State.Verify/Program.cs b/Aetheria.State.Verify/Program.cs index ae38cca02..c45e40495 100644 --- a/Aetheria.State.Verify/Program.cs +++ b/Aetheria.State.Verify/Program.cs @@ -9027,6 +9027,21 @@ static void RequireActionBarBindingRequestAuthority(string root) string.Join(", ", legacyHits)); } + var forbiddenPublicAcceptanceApis = new[] + { + "public bool RequestWeaponGroupActionBarBinding(", + "public bool RequestClearActionBarBinding(" + }; + var publicAcceptanceApiHits = forbiddenPublicAcceptanceApis + .Where(symbol => actionGameManager.Contains(symbol, StringComparison.Ordinal)) + .ToArray(); + if (publicAcceptanceApiHits.Length > 0) + { + throw new InvalidOperationException( + "ActionBar binding request APIs still expose submission as public acceptance state: " + + string.Join(", ", publicAcceptanceApiHits)); + } + var inventoryMenuPath = Path.Combine(root, "Assets", "Scripts", "UI", "Menu", "InventoryMenu.cs"); var inventoryMenu = File.Exists(inventoryMenuPath) ? File.ReadAllText(inventoryMenuPath) diff --git a/Assets/Scripts/Gameplay/ActionGameManager.cs b/Assets/Scripts/Gameplay/ActionGameManager.cs index 92140a4d1..263c42c05 100644 --- a/Assets/Scripts/Gameplay/ActionGameManager.cs +++ b/Assets/Scripts/Gameplay/ActionGameManager.cs @@ -652,12 +652,12 @@ public class ActionGameManager : MonoBehaviour }; } - public bool RequestWeaponGroupActionBarBinding(int slotIndex, int groupIndex) + public void RequestWeaponGroupActionBarBinding(int slotIndex, int groupIndex) { var slot = ResolveActionBarSlot(slotIndex); if (slot == null) { - return false; + return; } var binding = new AetheriaRuntimeActionBarBindingCommit @@ -666,20 +666,16 @@ public class ActionGameManager : MonoBehaviour Kind = "weapon_group", WeaponGroup = groupIndex }; - if (TryRequestDaemonActionBarBinding(binding)) - return true; - return false; + TryRequestDaemonActionBarBinding(binding); } - public bool RequestClearActionBarBinding(int slotIndex) + public void RequestClearActionBarBinding(int slotIndex) { var slot = ResolveActionBarSlot(slotIndex); if (slot == null) - return false; + return; - if (TryRequestDaemonActionBarBindingClear(slot)) - return true; - return false; + TryRequestDaemonActionBarBindingClear(slot); } private void RestoreActionBarBindingsFromTypedRun(