Use ActorControlFlags to check item use in battles
authorLiza Carvelli <liza@carvel.li>
Fri, 22 Nov 2024 01:12:56 +0000 (02:12 +0100)
committerLiza Carvelli <liza@carvel.li>
Fri, 22 Nov 2024 01:12:56 +0000 (02:12 +0100)
Questionable/Controller/CombatModules/ItemUseModule.cs

index 1693edd5c3a5f7e1c1412264eb180b75c42028eb..56da033faa61a99cf4a2e6c33cfc238e4b784136 100644 (file)
@@ -142,7 +142,7 @@ internal sealed class ItemUseModule : ICombatModule
         {
             BattleChara* battleChara = (BattleChara*)gameObject.Address;
             if (_combatData.CombatItemUse.Condition == ECombatItemUseCondition.Incapacitated)
-                return (*(byte*)((nint)battleChara + 0x1C68) & 0x40) != 0;
+                return (battleChara->ActorControlFlags & 0x40) != 0;
 
             if (_combatData.CombatItemUse.Condition == ECombatItemUseCondition.HealthPercent)
                 return (100f * battleChara->Health / battleChara->MaxHealth) < _combatData.CombatItemUse.Value;