public override void OnPlay(AbstractBattleUnit target, EnergyPaidInformation energyPaid)
 {
     foreach (var ally in state().AllyUnitsInBattle)
     {
         action().ApplyDefense(ally, Owner, BaseDefenseValue);
     }
 }
Exemple #2
0
 public override void OnPlay(AbstractBattleUnit target, EnergyPaidInformation energyPaid)
 {
     for (int i = 0; i < 2; i++)
     {
         action().AttackUnitForDamage(target, this.Owner, BaseDamage, this);
     }
 }
Exemple #3
0
 public override void OnPlay(AbstractBattleUnit target, EnergyPaidInformation energyPaid)
 {
     action().AttackWithCard(this, CardTargeting.RandomTargetableEnemy());
     action().AttackWithCard(this, CardTargeting.RandomTargetableEnemy());
     action().AttackWithCard(this, CardTargeting.RandomTargetableEnemy());
     CardAbilityProcs.ProcExert(this);
 }
Exemple #4
0
 public override void OnPlay(AbstractBattleUnit _t, EnergyPaidInformation energyPaid)
 {
     var target = CardTargeting.RandomTargetableEnemy();
     action().AttackUnitForDamage(target, Owner, BaseDamage, this);
     CardAbilityProcs.ProcExert(this);
     action().ApplyStatusEffect(target, new AdvancedStatusEffect(), 1);
 }
Exemple #5
0
        public override void OnPlay(AbstractBattleUnit target, EnergyPaidInformation energyPaid)
        {
            var busterCardsInDeck = state().Deck.DrawHandAndDiscardPiles
                                    .Where(item => item.GetDamageModifierOfType <BusterDamageModifier>() != null).Count();

            action().ApplyDefense(target, this.Owner, 6 + 5 * busterCardsInDeck);
        }
Exemple #6
0
 public override void OnPlay(AbstractBattleUnit target, EnergyPaidInformation energyPaid)
 {
     foreach (var character in GameState.Instance.AllyUnitsInBattle)
     {
         action().ApplyStatusEffect(character, new StressDefenseStatusEffect(), 10);
         action().ApplyDefenseFromCard(this, character);
     }
 }
 public override void OnPlay(AbstractBattleUnit target, EnergyPaidInformation energyPaid)
 {
     Action_ApplyStatusEffectToTarget(new WeakenedStatusEffect(), 2, target);
     CardAbilityProcs.Ambush(this, () =>
     {
         CardAbilityProcs.ChangeMoney(5);
     });
 }
 public override void OnPlay(AbstractBattleUnit target, EnergyPaidInformation energyPaid)
 {
     Action_ApplyStatusEffectToOwner(new RetaliateStatusEffect(), 5);
     foreach (var enemy in state().EnemyUnitsInBattle)
     {
         action().TauntEnemy(enemy, Owner);
     }
 }
Exemple #9
0
 public override void OnPlay(AbstractBattleUnit target, EnergyPaidInformation energyPaid)
 {
     action().ApplyDefense(target, this.Owner, BaseDefenseValue);
     CardAbilityProcs.Discharge(this, () =>
     {
         state().energy++;
     });
 }
 public override void OnPlay(AbstractBattleUnit target, EnergyPaidInformation energyPaid)
 {
     Action_ApplyDefenseToTarget(target);
     CardAbilityProcs.Sly(this, () =>
     {
         Action_ApplyDefenseToTarget(target);
     });
 }
Exemple #11
0
 public override void OnPlay(AbstractBattleUnit target, EnergyPaidInformation energyPaid)
 {
     action().ApplyDefense(target, this.Owner, BaseDefenseValue);
     if (state().Deck.Hand.Any(item => item.CardTags.Contains(BattleCardTags.SWARM)))
     {
         action().ApplyStatusEffect(target, new TemporaryHpStatusEffect(), 3);
     }
 }
Exemple #12
0
 public override void OnPlay(AbstractBattleUnit target, EnergyPaidInformation energyPaid)
 {
     foreach (var character in state().AllyUnitsInBattle)
     {
         action().ApplyDefense(character, Owner, BaseDefenseValue);
         action().ApplyStatusEffect(target, new StressStatusEffect(), 3);
     }
 }
 public override void OnPlay(AbstractBattleUnit target, EnergyPaidInformation energyPaid)
 {
     for (int i = 0; i < 2; i++)
     {
         var newCard = new AutocannonSentry();
         newCard.DamageModifiers.Add(new CruelAnalysisDamageModifier());
     }
 }
 public override void OnPlay(AbstractBattleUnit target, EnergyPaidInformation energyPaid)
 {
     Action_AttackTarget(target);
     CardAbilityProcs.Discharge(this, () =>
     {
         action().AttackUnitForDamage(target, this.Owner, 20, this);
     });
 }
Exemple #15
0
 public override void OnPlay(AbstractBattleUnit target, EnergyPaidInformation energyPaid)
 {
     Action_ApplyStatusEffectToTarget(new WeakenedStatusEffect(), 3, target);
     CardAbilityProcs.Technocannibalize(this, () =>
     {
         Action_AttackTarget(target);
     });
 }
 public override void OnPlay(AbstractBattleUnit target, EnergyPaidInformation energyPaid)
 {
     foreach (var ally in state().AllyUnitsInBattle)
     {
         action().ApplyStress(ally, 15);
         action().ApplyStatusEffect(ally, new StrengthStatusEffect(), 4);
     }
 }
 public override void OnPlay(AbstractBattleUnit target, EnergyPaidInformation energyPaid)
 {
     action().AttackWithCard(this, target);
     action().PushActionToBack("FromHell_OnPlay", () =>
     {
         this.BaseDamage += 8;
     });
 }
Exemple #18
0
 public override void OnPlay(AbstractBattleUnit target, EnergyPaidInformation energyPaid)
 {
     if (energyPaid.ActionsToTake.Any(item => item is BloodpricePaidAction))
     {
         this.CorrespondingPermanentCard().BaseDamage++;
     }
     action().AttackUnitForDamage(target, this.Owner, BaseDamage, this);
 }
 public override void OnPlay(AbstractBattleUnit target, EnergyPaidInformation energyPaid)
 {
     Action_AttackTarget(target);
     CardAbilityProcs.Patient(this, () =>
     {
         Action_AttackTarget(target);
     });
 }
Exemple #20
0
 public override void OnPlay(AbstractBattleUnit target, EnergyPaidInformation energyPaid)
 {
     foreach (var enemy in state().EnemyUnitsInBattle)
     {
         action().ApplyStatusEffect(enemy, new BurningStatusEffect(), 6);
     }
     this.Action_Exhaust();
 }
        public override void OnPlay(AbstractBattleUnit target, EnergyPaidInformation energyPaid)
        {
            Action_ApplyStatusEffectToTarget(new MarkedStatusEffect(), 3, target);

            var randomCardInHand = state().Deck.Hand.Where(item => item.CardType == CardType.AttackCard).PickRandom();

            randomCardInHand.DamageModifiers.Add(new BountyDamageModifier());
        }
 public override void OnPlay(AbstractBattleUnit target, EnergyPaidInformation energyPaid)
 {
     Action_ApplyStatusEffectToOwner(new StrengthStatusEffect(), 2);
     CardAbilityProcs.Technocannibalize(this, () =>
     {
         Action_ApplyStatusEffectToOwner(new StrengthStatusEffect(), 2);
     });
 }
Exemple #23
0
 public override void OnPlay(AbstractBattleUnit target, EnergyPaidInformation energyPaid)
 {
     foreach (var ally in state().AllyUnitsInBattle)
     {
         action().ApplyStatusEffect(ally, new TemporaryThorns(), 4);
         action().ApplyDefense(ally, this.Owner, BaseDefenseValue);
     }
 }
 public override void OnPlay(AbstractBattleUnit target, EnergyPaidInformation energyPaid)
 {
     action().CreateCardToHand(new ShieldDrone());
     CardAbilityProcs.Discharge(this, () =>
     {
         action().CreateCardToHand(new ShieldDrone());
     });
 }
 public override void OnPlay(AbstractBattleUnit target, EnergyPaidInformation energyPaid)
 {
     foreach (var ally in state().AllyUnitsInBattle)
     {
         action().ApplyStatusEffect(ally, new TemporaryHpStatusEffect(), 20);
     }
     this.Action_Exhaust();
 }
 public override void OnPlay(AbstractBattleUnit target, EnergyPaidInformation energyPaid)
 {
     Action_AttackTarget(target);
     Action_ApplyStatusEffectToTarget(new VulnerableStatusEffect(), 2, target);
     CardAbilityProcs.Brute(this, () =>
     {
         CardAbilityProcs.Refund(this, 1);
     });
 }
Exemple #27
0
        public override void OnPlay(AbstractBattleUnit target, EnergyPaidInformation energyPaid)
        {
            foreach (var ally in state().AllyUnitsInBattle)
            {
                action().ApplyStress(ally, 10);
            }

            action().FleeCombat();
        }
Exemple #28
0
 public override void OnPlay(AbstractBattleUnit target, EnergyPaidInformation energyPaid)
 {
     action().ApplyStatusEffect(target, new FumesStatusEffect(), 10);
     action().PushActionToBack("StrikeFromSmog_OnPlay", () =>
     {
         var damageToDo = target.GetStatusEffect <FumesStatusEffect>().Stacks + 10;
         action().DamageUnitNonAttack(target, this.Owner, damageToDo);
     });
 }
 public override void OnPlay(AbstractBattleUnit target, EnergyPaidInformation energyPaid)
 {
     action().ApplyDefense(target, this.Owner, BaseDefenseValue);
     action().PushActionToBack("SmogWall", () =>
     {
         var fumesToApply = target.CurrentBlock;
         action().ApplyStatusEffect(CardTargeting.RandomTargetableEnemy(), new FumesStatusEffect(), fumesToApply);
     });
 }
 public override void OnPlay(AbstractBattleUnit target, EnergyPaidInformation energyPaid)
 {
     foreach (var ally in state().AllyUnitsInBattle)
     {
         Action_ApplyStatusEffectToTarget(new BarricadeStatusEffect(), 10, ally);
     }
     CardAbilityProcs.Refund(this);
     this.Action_Exhaust();
 }