Пример #1
0
 public AbilityTargeter(Unit unit, TargetAbility ability, Action <Targeter> onComplete, Action <Targeter> onCancel = null)
 {
     this.unit       = unit;
     this.ability    = ability;
     this.onComplete = onComplete;
     this.onCancel   = onCancel;
 }
Пример #2
0
 public bool isCardTargetingCharacter(CombatCharacter character)
 {
     foreach (BaseAbility ability in abilities)
     {
         if (ability is TargetAbility)
         {
             TargetAbility tarAbility = ability as TargetAbility;
             if (tarAbility.target is CombatCharacter)
             {
                 CombatCharacter tarCharacter = tarAbility.target as CombatCharacter;
                 if (tarCharacter == character)
                 {
                     return(true);
                 }
             }
         }
         else if (ability is MultiTargetAbility)
         {
             MultiTargetAbility tarAbility = ability as MultiTargetAbility;
             foreach (Targetable target in tarAbility.targets)
             {
                 if (target is CombatCharacter)
                 {
                     CombatCharacter tarCharacter = target as CombatCharacter;
                     if (tarCharacter == character)
                     {
                         return(true);
                     }
                 }
             }
         }
     }
     return(false);
 }
Пример #3
0
 public MoveAbilityTargeter(Unit unit, TargetAbility ability, float freeMovement, float paidMovement, Action <Targeter> onComplete, Action <Targeter> onCancel = null)
     : base(unit, ability, freeMovement + paidMovement, onComplete, onCancel)
 {
     this.freeMovement = freeMovement;
     this.paidMovement = paidMovement;
 }
Пример #4
0
 public PathConfirmAbilityTargeter(Unit unit, TargetAbility ability, float maxCost, Action <Targeter> onComplete, Action <Targeter> onCancel = null) : base(unit, ability, onComplete, onCancel)
 {
     pather ??= Pathers.For(ability.rangeMode);
     cc ??= CostCalculators.For(ability.rangeMode);
     field = Pathing.GetCostField(unit.tile, maxCost: maxCost, pather: pather, costCalculator: cc);
 }
Пример #5
0
 public ConfirmTileAbilityTargeter(Unit unit, TargetAbility ability, Action <Targeter> onComplete, Action <Targeter> onCancel)
     : base(unit, ability, onComplete, onCancel)
 {
 }