public void BackFistStrike(Card card) { card.cardType = Card.CardType.OneShot; var target = GameBoard.cardClickedArray; if (target.Count > 1) { MessageBox.Show("Select only one target to perform Back-Fist Strike. \n No select target default's to the Villain."); Hero currentPlayer = (Hero)GameEngine.getCurrentPlayer(); currentPlayer.hand.Add(card); currentPlayer.graveyard.Remove(card); GameEngine.playerPlayedCard = false; } else if (target.Count == 1) { var villainMinions = GameEngine.getVillain().getMinions(); var environMinions = GameEngine.getEnvironment().getMinions(); Boolean minBool = false; List<Minion> minionsToAttack = null; foreach (Minion min in villainMinions) { if (min.minionName.Equals(((Card)target[0]).getName())) { minionsToAttack.Add(min); minBool = true; } } foreach (Minion min in environMinions) { if (min.minionName.Equals(((Card)target[0]).getName())) { minionsToAttack.Add(min); minBool = true; } } if (minBool) { List<Targetable> targets = new List<Targetable>(); targets.AddRange(minionsToAttack); DamageEffects.DealDamage(this, targets , 4, DamageEffects.DamageType.Melee); card.SendToGraveyard(this, cardsOnField); } else MessageBox.Show("Please select an appropriate card."); } else { DamageEffects.DealDamage(this, new List<Targetable>(){ GameEngine.getVillain()}, 4, DamageEffects.DamageType.Melee); card.SendToGraveyard(this, cardsOnField); } }
void PunishTheWeakPower(Card card, object[] args) { DamageEffects.damageDealtHandlers.Remove(PunishTheWeak_Damage_Handler); card.SendToGraveyard(this, cardsOnField); }
void HakaOfRestoration_Continuation(int numDiscardedCards, Card card) { lifeTotal += numDiscardedCards; card.SendToGraveyard(this, cardsOnField); }
void EnduringIntercessionPower(Card sender, object[] args) { sender.SendToGraveyard(this, cardsOnField); }
public void VitalitySurge(Card card) { card.cardType = Card.CardType.OneShot; HealEffects.healHero(this, 2); card.SendToGraveyard(this, cardsOnField); CardDrawingEffects.DrawCards(1, this); }
public void Rampage(Card card) { card.cardType = Card.CardType.OneShot; Villain villain = GameEngine.getVillain(); GameEnvironment environ = GameEngine.getEnvironment(); var heroes = new List<Targetable>(); heroes.AddRange(GameEngine.getHeroes()); DamageEffects.DealDamage(this, heroes, 2, DamageEffects.DamageType.Melee); DamageEffects.DealDamage(this, GameEngine.getNonHeroTargets(), 5, DamageEffects.DamageType.Melee); card.SendToGraveyard(this, cardsOnField); }
public object[] GroundPound(Card card) { DialogResult result = MessageBox.Show("Click OK to destroy this card. Click Cancel to discard 2 cards", "Ground Pound", MessageBoxButtons.OKCancel); if (result == DialogResult.OK) { card.SendToGraveyard(this, hand);//might be cards on field instead of hand return null; } else { DiscardedAction discardContinuation= GroundPound_Continuation; StartPhaseStarted+= GroundPound_StartPhaseStarted; return new object[] { discardContinuation, GameEngine.ForcedEffect.DiscardCurrentPlayer, 2, card }; } }
public void BolsterAllies(Card card) { card.cardType = Card.CardType.OneShot; foreach (Hero player in GameEngine.getHeroes()) { player.drawPhase(1); } card.SendToGraveyard(this, cardsOnField); }