public ApplyPowerAction(AbstractCreature _target, AbstractCreature _source, AbstractPower _powerToApply, int _stackAmount, bool _isFast, AttackEffect _attackEffect) { SetValues(_target, _source, _stackAmount); powerToApply = _powerToApply; if (AbstractDungeon.Player.HasRelic("SnakeSkull") && Source != null && Source.IsPlayer && Target != Source && powerToApply.ID.Equals("Poison")) { //AbstractDungeon.Player.GetRelic("SnakeSull").flash(); powerToApply.Amount++; Amount++; } if (powerToApply.ID.Equals("Corruption")) //腐化 { for (int i = 0; i < AbstractDungeon.Player.Hand.Group.Count; i++) { AbstractCard tCard = AbstractDungeon.Player.Hand.Group[i]; if (tCard.Type == CardType.Skill) { tCard.ModifyCostForCombat(-9); } } for (int i = 0; i < AbstractDungeon.Player.DrawPile.Group.Count; i++) { AbstractCard tCard = AbstractDungeon.Player.DrawPile.Group[i]; if (tCard.Type == CardType.Skill) { tCard.ModifyCostForCombat(-9); } } for (int i = 0; i < AbstractDungeon.Player.DiscardPile.Group.Count; i++) { AbstractCard tCard = AbstractDungeon.Player.DiscardPile.Group[i]; if (tCard.Type == CardType.Skill) { tCard.ModifyCostForCombat(-9); } } for (int i = 0; i < AbstractDungeon.Player.ExhaustPile.Group.Count; i++) { AbstractCard tCard = AbstractDungeon.Player.ExhaustPile.Group[i]; if (tCard.Type == CardType.Skill) { tCard.ModifyCostForCombat(-9); } } } GameActionType = ActionType.Power; GameAttackEffect = _attackEffect; if (AbstractDungeon.GetMonsters().AreMonstersBasicallyDead()) { IsDone = true; } }