예제 #1
0
        public override void ActOnRound(RoundState roundState, CardModifierState cardModifierState)
        {
            var totalDuration = cardModifierState.GetDuration(this.Duration);

            roundState.AddCardModifier(totalDuration, new MultiplyDuration(this.Multiplier));
            roundState.AddCardModifier(totalDuration, new MultiplyDamage(this.Multiplier));
        }
예제 #2
0
        public override void ModifyCurrentState(CardModifierState currentModifierState, Card card)
        {
            currentModifierState.DurationMultipler = 0;
            currentModifierState.DurationIncrease  = 0;
            currentModifierState.DamageMultiplier  = 0;
            currentModifierState.DamageIncrease    = 0;

            currentModifierState.OnDmgIncChange.Add((c, m) => c.DamageIncrease     = 0);
            currentModifierState.OnDmgMultChange.Add((c, m) => c.DamageMultiplier  = 0);
            currentModifierState.OnDurIncChange.Add((c, m) => c.DurationIncrease   = 0);
            currentModifierState.OnDurMultChange.Add((c, m) => c.DurationMultipler = 0);
        }
예제 #3
0
 public override void ModifyCurrentState(CardModifierState currentModifierState, Card card)
 {
     currentModifierState.DurationMultipler *= this.factor;
 }
예제 #4
0
 /// <summary>
 /// Modifies the Card Modifier State
 /// </summary>
 /// <param name="currentModifierState">The current modifications to apply to a card</param>
 /// <param name="card">The card being modified - some modifiers will only apply to certain classes of cards</param>
 public abstract void ModifyCurrentState(CardModifierState currentModifierState, Card card);
예제 #5
0
 /// <summary>
 /// Has the card act on the round state
 /// </summary>
 /// <param name="roundState">The current round state</param>
 /// <param name="cardModifierState">The final card modifier state to modify this card</param>
 public abstract void ActOnRound(RoundState roundState, CardModifierState cardModifierState);
예제 #6
0
        public override void ActOnRound(RoundState roundState, CardModifierState cardModifierState)
        {
            var totalDuration = cardModifierState.GetDuration(this.Duration);

            roundState.AddCardModifier(totalDuration, new NullifyCard());
        }
예제 #7
0
        public override void ActOnRound(RoundState roundState, CardModifierState cardModifierState)
        {
            var totalDamage = cardModifierState.GetDamageDone(this.DamageDone);

            roundState.DamageToMonster[this.Owner] += totalDamage;
        }