mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-20 12:48:00 +00:00
Remove pseudokicker (#5157)
This commit is contained in:
@@ -2065,9 +2065,6 @@ public class AbilityUtils {
|
||||
if (sq[0].contains("TimesKicked")) {
|
||||
return doXMath(isUnlinkedFromCastSA(ctb, c) ? 0 : c.getKickerMagnitude(), expr, c, ctb);
|
||||
}
|
||||
if (sq[0].contains("TimesPseudokicked")) {
|
||||
return doXMath(c.getPseudoKickerMagnitude(), expr, c, ctb);
|
||||
}
|
||||
if (sq[0].contains("TimesMutated")) {
|
||||
return doXMath(c.getTimesMutated(), expr, c, ctb);
|
||||
}
|
||||
|
||||
@@ -4631,11 +4631,6 @@ public class Card extends GameEntity implements Comparable<Card>, IHasSVars {
|
||||
return hasK1 == isOptionalCostPaid(OptionalCost.Kicker2) ? (hasK1 ? 2 : 0) : 1;
|
||||
}
|
||||
|
||||
private int pseudoKickerMagnitude = 0;
|
||||
public final void addPseudoMultiKickerMagnitude(final int n) { pseudoKickerMagnitude += n; }
|
||||
public final void setPseudoMultiKickerMagnitude(final int n) { pseudoKickerMagnitude = n; }
|
||||
public final int getPseudoKickerMagnitude() { return pseudoKickerMagnitude; }
|
||||
|
||||
// for cards like Giant Growth, etc.
|
||||
public final int getTempPowerBoost() {
|
||||
int result = 0;
|
||||
|
||||
@@ -3148,11 +3148,7 @@ public class CardFactoryUtil {
|
||||
final String[] n = keyword.split(":");
|
||||
final SpellAbility sa = card.getFirstSpellAbility();
|
||||
sa.setMultiKickerManaCost(new ManaCost(new ManaCostParser(n[1])));
|
||||
if (keyword.endsWith("Generic")) {
|
||||
sa.addAnnounceVar("Pseudo-multikicker");
|
||||
} else {
|
||||
sa.addAnnounceVar("Multikicker");
|
||||
}
|
||||
sa.addAnnounceVar("Multikicker");
|
||||
} else if (keyword.startsWith("Mutate")) {
|
||||
final String[] params = keyword.split(":");
|
||||
final String cost = params[1];
|
||||
|
||||
@@ -1831,10 +1831,6 @@ public class CardProperty {
|
||||
if ("1".equals(s) && !card.isOptionalCostPaid(OptionalCost.Kicker1)) return false;
|
||||
if ("2".equals(s) && !card.isOptionalCostPaid(OptionalCost.Kicker2)) return false;
|
||||
}
|
||||
} else if (property.startsWith("pseudokicked")) {
|
||||
if (property.equals("pseudokicked")) {
|
||||
if (!card.isOptionalCostPaid(OptionalCost.Generic)) return false;
|
||||
}
|
||||
} else if (property.equals("bargained")) {
|
||||
if (card.getCastSA() == null) {
|
||||
return false;
|
||||
|
||||
@@ -4,7 +4,7 @@ Types:Artifact Creature Gargoyle Demon
|
||||
PT:4/5
|
||||
K:Flying
|
||||
S:Mode$ OptionalCost | EffectZone$ All | ValidCard$ Card.Self | ValidSA$ Spell | Cost$ Sac<1/Creature.nonDemon/non-Demon creature> | Description$ As an additional cost to cast this spell, you may sacrifice a non-Demon creature.
|
||||
T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | IsPresent$ Card.Self+pseudokicked | NoResolvingCheck$ True | Execute$ TrigConjure | TriggerDescription$ When CARDNAME enters the battlefield, if its additional cost was paid, conjure a card named Demonic Pact onto the battlefield.
|
||||
T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | CheckSVar$ Count$OptionalGenericCostPaid.1.0 | NoResolvingCheck$ True | Execute$ TrigConjure | TriggerDescription$ When CARDNAME enters the battlefield, if its additional cost was paid, conjure a card named Demonic Pact onto the battlefield.
|
||||
SVar:TrigConjure:DB$ MakeCard | Conjure$ True | Name$ Demonic Pact | Zone$ Battlefield
|
||||
DeckHas:Ability$Sacrifice
|
||||
Oracle:As an additional cost to cast this spell, you may sacrifice a non-Demon creature.\nFlying\nWhen Graven Archfiend enters the battlefield, if its additional cost was paid, conjure a card named Demonic Pact onto the battlefield.
|
||||
|
||||
@@ -1,10 +1,9 @@
|
||||
Name:Taste of Paradise
|
||||
ManaCost:3 G
|
||||
Types:Sorcery
|
||||
Text:As an additional cost to cast this spell, you may pay {1}{G} any number of times.
|
||||
K:Multikicker:1 G:Generic
|
||||
A:SP$ GainLife | LifeAmount$ Y | SpellDescription$ You gain 3 life plus an additional 3 life for each additional {1}{G} you paid.
|
||||
SVar:Y:SVar$X/Plus.3
|
||||
SVar:X:Count$TimesPseudokicked/Times.3
|
||||
S:Mode$ RaiseCost | ValidCard$ Card.Self | Type$ Spell | Cost$ 1 G | Amount$ PseudoKicker | EffectZone$ All | Description$ As an additional cost to cast this spell, you may pay {1}{G} any number of times.
|
||||
A:SP$ GainLife | LifeAmount$ SVar$X/Times.3 | Announce$ PseudoKicker | SpellDescription$ You gain 3 life plus an additional 3 life for each additional {1}{G} you paid.
|
||||
SVar:X:SVar$PseudoKicker/Plus.1
|
||||
SVar:PseudoKicker:Number$0
|
||||
DeckHas:Ability$LifeGain
|
||||
Oracle:As an additional cost to cast this spell, you may pay {1}{G} any number of times.\nYou gain 3 life plus an additional 3 life for each additional {1}{G} you paid.
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
Name:Tribal Flames
|
||||
ManaCost:1 R
|
||||
Types:Sorcery
|
||||
A:SP$ DealDamage | ValidTgts$ Any | NumDmg$ X | SpellDescription$ Domain — Tribal Flames deals X damage to any target, where X is the number of basic land types among lands you control.
|
||||
A:SP$ DealDamage | ValidTgts$ Any | NumDmg$ X | SpellDescription$ Domain — CARDNAME deals X damage to any target, where X is the number of basic land types among lands you control.
|
||||
SVar:X:Count$Domain
|
||||
Oracle:Domain — Tribal Flames deals X damage to any target, where X is the number of basic land types among lands you control.
|
||||
|
||||
@@ -596,14 +596,6 @@ public class HumanPlay {
|
||||
}
|
||||
}
|
||||
|
||||
int timesPseudokicked = source.getPseudoKickerMagnitude();
|
||||
if (timesPseudokicked > 0 && ability.isAnnouncing("Pseudo-multikicker")) {
|
||||
ManaCost mkCost = ability.getMultiKickerManaCost();
|
||||
for (int i = 0; i < timesPseudokicked; i++) {
|
||||
toPay.addManaCost(mkCost);
|
||||
}
|
||||
}
|
||||
|
||||
CardCollection cardsToDelve = new CardCollection();
|
||||
if (!effect) {
|
||||
CostAdjustment.adjust(toPay, ability, cardsToDelve, false);
|
||||
|
||||
@@ -251,8 +251,6 @@ public class HumanPlaySpellAbility {
|
||||
ability.setSVar(varName, value.toString());
|
||||
if ("Multikicker".equals(varName)) {
|
||||
card.setKickerMagnitude(value);
|
||||
} else if ("Pseudo-multikicker".equals(varName)) {
|
||||
card.setPseudoMultiKickerMagnitude(value);
|
||||
} else {
|
||||
card.setSVar(varName, value.toString());
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user