static bool Prefix(OutflankProvokeAttack __instance, RuleAttackRoll evt) { if (!evt.IsCriticalConfirmed || !evt.Target.isFlankedByAttacker(__instance.Owner.Unit)) { return(false); } foreach (UnitEntityData attacker in evt.Target.CombatState.EngagedBy) { if ((((attacker.Descriptor.HasFact(__instance.OutflankFact) || (bool)__instance.Owner.State.Features.SoloTactics) && attacker != __instance.Owner.Unit)) && evt.Target.isFlankedByAttacker(attacker)) { Game.Instance.CombatEngagementController.ForceAttackOfOpportunity(attacker, evt.Target); } } return(false); }
static bool Prefix(OutflankProvokeAttack __instance, RuleAttackRoll evt) { return(false); }