refactor: SimpleStaticAbility default zone (tokens, emblems, etc.)

This commit is contained in:
xenohedron 2024-11-16 22:17:19 -05:00
parent 65a9f19a2c
commit 994c97e86a
13 changed files with 16 additions and 16 deletions

View file

@ -53,7 +53,7 @@ public class InfoEffect extends OneShotEffect {
*/
public static void addInfoToPermanent(Game game, Ability source, Permanent permanent, String info, Duration duration) {
// add simple static info to permanent's rules
SimpleStaticAbility ability = new SimpleStaticAbility(Zone.BATTLEFIELD, new InfoEffect(info));
SimpleStaticAbility ability = new SimpleStaticAbility(new InfoEffect(info));
GainAbilityTargetEffect gainEffect = new GainAbilityTargetEffect(ability, duration);
gainEffect.setTargetPointer(new FixedTarget(permanent, game));
@ -70,7 +70,7 @@ public class InfoEffect extends OneShotEffect {
* @param duration
*/
public static void addCardHintToPermanent(Game game, Ability source, Permanent permanent, Hint cardHint, Duration duration) {
SimpleStaticAbility ability = new SimpleStaticAbility(Zone.BATTLEFIELD, new InfoEffect("hint"));
SimpleStaticAbility ability = new SimpleStaticAbility(new InfoEffect("hint"));
ability.setRuleVisible(false);
ability.addHint(cardHint);
@ -91,7 +91,7 @@ public class InfoEffect extends OneShotEffect {
* @param condition
*/
public static void addCardHintToPermanentConditional(Game game, Ability source, Permanent permanent, Hint cardHint, Duration duration, Condition condition) {
SimpleStaticAbility ability = new SimpleStaticAbility(Zone.BATTLEFIELD, new InfoEffect("hint"));
SimpleStaticAbility ability = new SimpleStaticAbility(new InfoEffect("hint"));
ability.setRuleVisible(false);
ability.addHint(cardHint);

View file

@ -90,7 +90,7 @@ public class BestowAbility extends SpellAbility {
TargetPermanent auraTarget = new TargetCreaturePermanent();
this.addTarget(auraTarget);
this.addEffect(new AttachEffect(Outcome.BoostCreature));
Ability ability = new SimpleStaticAbility(Zone.BATTLEFIELD, new BestowEntersBattlefieldEffect());
Ability ability = new SimpleStaticAbility(new BestowEntersBattlefieldEffect());
ability.setRuleVisible(false);
addSubAbility(ability);
}

View file

@ -50,13 +50,13 @@ public class LevelerCardBuilder {
for (Ability ability : abilities) {
ContinuousEffect effect = new GainAbilitySourceEffect(ability);
ConditionalContinuousEffect abEffect = new ConditionalContinuousEffect(effect, condition, "");
Ability staticAbility = new SimpleStaticAbility(Zone.BATTLEFIELD, abEffect);
Ability staticAbility = new SimpleStaticAbility(abEffect);
staticAbility.setRuleVisible(false);
constructed.add(staticAbility);
}
ContinuousEffect effect = new SetBasePowerToughnessSourceEffect(power, toughness, Duration.WhileOnBattlefield);
ConditionalContinuousEffect ptEffect = new ConditionalContinuousEffect(effect, condition, rule);
constructed.add(new SimpleStaticAbility(Zone.BATTLEFIELD, ptEffect));
constructed.add(new SimpleStaticAbility(ptEffect));
return constructed;
}

View file

@ -19,7 +19,7 @@ public final class LukeSkywalkerEmblem extends Emblem {
// -6: You get an emblem with "Prevent all damage that would be dealt to you during combat." Exile Luke Skywalker, the Last Jedi.
public LukeSkywalkerEmblem() {
super("Emblem Luke Skywalker");
this.getAbilities().add(new SimpleStaticAbility(Zone.BATTLEFIELD, new LukeSkywalkerEmblemEffect()));
this.getAbilities().add(new SimpleStaticAbility(new LukeSkywalkerEmblemEffect()));
}
private LukeSkywalkerEmblem(final LukeSkywalkerEmblem card) {

View file

@ -25,7 +25,7 @@ public final class DaxosSpiritToken extends TokenImpl {
subtype.add(SubType.SPIRIT);
power = new MageInt(0);
toughness = new MageInt(0);
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new DaxosSpiritSetPTEffect()));
this.addAbility(new SimpleStaticAbility(new DaxosSpiritSetPTEffect()));
}
private DaxosSpiritToken(final DaxosSpiritToken token) {

View file

@ -27,7 +27,7 @@ public final class DokaiWeaverofLifeToken extends TokenImpl {
power = new MageInt(0);
toughness = new MageInt(0);
DynamicValue controlledLands = new PermanentsOnBattlefieldCount(filterLands);
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostSourceEffect(controlledLands, controlledLands, Duration.WhileOnBattlefield)));
this.addAbility(new SimpleStaticAbility(new BoostSourceEffect(controlledLands, controlledLands, Duration.WhileOnBattlefield)));
}
private DokaiWeaverofLifeToken(final DokaiWeaverofLifeToken token) {

View file

@ -33,7 +33,7 @@ public final class GutterGrimeToken extends TokenImpl {
color.setGreen(true);
power = new MageInt(0);
toughness = new MageInt(0);
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new SetBasePowerToughnessSourceEffect(new GutterGrimeCountersCount(sourceId))));
this.addAbility(new SimpleStaticAbility(new SetBasePowerToughnessSourceEffect(new GutterGrimeCountersCount(sourceId))));
}
private GutterGrimeToken(final GutterGrimeToken token) {

View file

@ -29,7 +29,7 @@ public final class KalonianTwingroveTreefolkWarriorToken extends TokenImpl {
power = new MageInt(0);
toughness = new MageInt(0);
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new SetBasePowerToughnessSourceEffect(new PermanentsOnBattlefieldCount(filterLands))));
this.addAbility(new SimpleStaticAbility(new SetBasePowerToughnessSourceEffect(new PermanentsOnBattlefieldCount(filterLands))));
}
private KalonianTwingroveTreefolkWarriorToken(final KalonianTwingroveTreefolkWarriorToken token) {

View file

@ -29,7 +29,7 @@ public final class NahiriTheLithomancerEquipmentToken extends TokenImpl {
this.addAbility(IndestructibleAbility.getInstance());
Ability ability = new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEquippedEffect(5, 5));
Ability ability = new SimpleStaticAbility(new BoostEquippedEffect(5, 5));
ability.addEffect(new GainAbilityAttachedEffect(DoubleStrikeAbility.getInstance(), AttachmentType.EQUIPMENT, Duration.WhileOnBattlefield, "and has double strike"));
this.addAbility(ability);

View file

@ -31,7 +31,7 @@ public final class SaprolingBurstToken extends TokenImpl {
this.color.setGreen(true);
this.subtype.add(SubType.SAPROLING);
this.cardType.add(CardType.CREATURE);
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new SetBasePowerToughnessSourceEffect(new SaprolingBurstTokenDynamicValue(saprolingBurstMOR))));
this.addAbility(new SimpleStaticAbility(new SetBasePowerToughnessSourceEffect(new SaprolingBurstTokenDynamicValue(saprolingBurstMOR))));
}
private SaprolingBurstToken(final SaprolingBurstToken token) {

View file

@ -23,7 +23,7 @@ public final class TetraviteToken extends TokenImpl {
toughness = new MageInt(1);
this.addAbility(FlyingAbility.getInstance());
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new TetraviteTokenEffect()));
this.addAbility(new SimpleStaticAbility(new TetraviteTokenEffect()));
}
private TetraviteToken(final TetraviteToken token) {

View file

@ -24,7 +24,7 @@ public final class VoiceOfResurgenceToken extends TokenImpl {
toughness = new MageInt(0);
// This creature's power and toughness are each equal to the number of creatures you control.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new SetBasePowerToughnessSourceEffect(
this.addAbility(new SimpleStaticAbility(new SetBasePowerToughnessSourceEffect(
CreaturesYouControlCount.instance)));
}

View file

@ -27,7 +27,7 @@ public final class WastelandSurvivalGuideToken extends TokenImpl {
this.cardType.add(CardType.ARTIFACT);
this.subtype.add(SubType.EQUIPMENT);
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEquippedEffect(xValue, xValue)).addHint(hint));
this.addAbility(new SimpleStaticAbility(new BoostEquippedEffect(xValue, xValue)).addHint(hint));
this.addAbility(new EquipAbility(1, false));
}