public bool ActOnSelection(IEnumerable <Combatant> targets) { Ally performer = AssociatedAlly; #region Attack if (_option == _attackOption) { performer.Attack(targets.First()); } #endregion Attack #region 2x-Cut else if (_option == _doubleCutOption2) { performer.AttackX2(targets.First()); } #endregion 2x-Cut #region 4x-Cut else if (_option == _doubleCutOption4) { performer.AttackX4(targets); } #endregion 4x-Cut #region Sense else if (_option == _senseOption) { BattleEvent sense = new SenseEvent(AssociatedAlly, targets); AssociatedAlly.CurrentBattle.EnqueueAction(sense); } #endregion Sense #region Mime else if (_option == _mimeOption) { // if (AssociatedAlly.CurrentBattle.LastPartyAbility == null) // { //// DisableActionHook(true); // AssociatedAlly.TurnTimer.Reset(); // } // else // { // AssociatedAlly.Ability = AssociatedAlly.CurrentBattle.LastPartyAbility; // try // { // AssociatedAlly.Ability.Performer = performer; // } // catch (Exception e) // { // } // } } #endregion Mime #region Deathblow else if (_option == _deathblowOption) { // DeathblowEvent e = DeathblowEvent.Create(AssociatedAlly, targets); // // AssociatedAlly.CurrentBattle.EnqueueAction(e); } #endregion Deathblow #region Steal else if (_option == _stealOption) { StealEvent steal = new StealEvent(AssociatedAlly, targets); AssociatedAlly.CurrentBattle.EnqueueAction(steal); } #endregion Steal #region Mug else if (_option == _mugOption) { // MugEvent e = MugEvent.Create(AssociatedAlly, targets); // // AssociatedAlly.CurrentBattle.EnqueueAction(e); } #endregion Mug return(true); }