Changed all Token classes to final

had to make a few changes
This commit is contained in:
Evan Kranzler 2018-05-21 11:12:28 -04:00
parent a6e51e592b
commit 3d749ba8e7
377 changed files with 408 additions and 444 deletions

View file

@ -45,7 +45,7 @@ import mage.filter.predicate.permanent.ControllerPredicate;
import mage.game.Game;
import mage.game.events.GameEvent;
import mage.game.events.GameEvent.EventType;
import mage.game.permanent.token.GoblinTokenWithHaste;
import mage.game.permanent.token.GoblinToken;
/**
*
@ -61,7 +61,7 @@ public final class ChancellorOfTheForge extends CardImpl {
}
public ChancellorOfTheForge(UUID ownerId, CardSetInfo setInfo) {
super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{4}{R}{R}{R}");
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{4}{R}{R}{R}");
this.subtype.add(SubType.GIANT);
this.power = new MageInt(5);
@ -72,7 +72,7 @@ public final class ChancellorOfTheForge extends CardImpl {
// When Chancellor of the Forge enters the battlefield, create X 1/1 red Goblin creature tokens with haste, where X is the number of creatures you control.
DynamicValue value = new PermanentsOnBattlefieldCount(filter);
this.addAbility(new EntersBattlefieldTriggeredAbility(new CreateTokenEffect(new GoblinTokenWithHaste(), value), false));
this.addAbility(new EntersBattlefieldTriggeredAbility(new CreateTokenEffect(new GoblinToken(true), value), false));
}
public ChancellorOfTheForge(final ChancellorOfTheForge card) {
@ -87,8 +87,8 @@ public final class ChancellorOfTheForge extends CardImpl {
class ChancellorOfTheForgeDelayedTriggeredAbility extends DelayedTriggeredAbility {
ChancellorOfTheForgeDelayedTriggeredAbility () {
super(new CreateTokenEffect(new GoblinTokenWithHaste()));
ChancellorOfTheForgeDelayedTriggeredAbility() {
super(new CreateTokenEffect(new GoblinToken(true)));
}
ChancellorOfTheForgeDelayedTriggeredAbility(ChancellorOfTheForgeDelayedTriggeredAbility ability) {
@ -104,6 +104,7 @@ class ChancellorOfTheForgeDelayedTriggeredAbility extends DelayedTriggeredAbilit
public boolean checkTrigger(GameEvent event, Game game) {
return true;
}
@Override
public ChancellorOfTheForgeDelayedTriggeredAbility copy() {
return new ChancellorOfTheForgeDelayedTriggeredAbility(this);

View file

@ -39,7 +39,7 @@ import mage.constants.Duration;
import mage.constants.TargetController;
import mage.constants.Zone;
import mage.filter.StaticFilters;
import mage.game.permanent.token.GoblinTokenWithHaste;
import mage.game.permanent.token.GoblinToken;
import mage.watchers.common.AttackedThisTurnWatcher;
/**
@ -52,7 +52,7 @@ public final class GoblinAssault extends CardImpl {
super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{2}{R}");
// At the beginning of your upkeep, create a 1/1 red Goblin creature token with haste.
this.addAbility(new BeginningOfUpkeepTriggeredAbility(new CreateTokenEffect(new GoblinTokenWithHaste()), TargetController.YOU, false));
this.addAbility(new BeginningOfUpkeepTriggeredAbility(new CreateTokenEffect(new GoblinToken(true)), TargetController.YOU, false));
// Goblin creatures attack each turn if able.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new AttacksIfAbleAllEffect(StaticFilters.FILTER_PERMANENT_CREATURE_GOBLINS, Duration.WhileOnBattlefield)), new AttackedThisTurnWatcher());

View file

@ -45,7 +45,7 @@ import mage.filter.common.FilterCreaturePermanent;
import mage.filter.predicate.permanent.AnotherPredicate;
import mage.filter.predicate.permanent.AttackingPredicate;
import mage.filter.predicate.permanent.ControllerPredicate;
import mage.game.permanent.token.GoblinTokenWithHaste;
import mage.game.permanent.token.GoblinToken;
import mage.watchers.common.AttackedThisTurnWatcher;
/**
@ -66,7 +66,7 @@ public final class GoblinRabblemaster extends CardImpl {
}
public GoblinRabblemaster(UUID ownerId, CardSetInfo setInfo) {
super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{2}{R}");
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{2}{R}");
this.subtype.add(SubType.GOBLIN);
this.subtype.add(SubType.WARRIOR);
@ -78,7 +78,7 @@ public final class GoblinRabblemaster extends CardImpl {
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, effect), new AttackedThisTurnWatcher());
// At the beginning of combat on your turn, create a 1/1 red Goblin creature token with haste.
this.addAbility(new BeginningOfCombatTriggeredAbility(new CreateTokenEffect(new GoblinTokenWithHaste()), TargetController.YOU, false));
this.addAbility(new BeginningOfCombatTriggeredAbility(new CreateTokenEffect(new GoblinToken(true)), TargetController.YOU, false));
// When Goblin Rabblemaster attacks, it gets +1/+0 until end of turn for each other attacking Goblin.
this.addAbility(new AttacksTriggeredAbility(new BoostSourceEffect(new PermanentsOnBattlefieldCount(attackingFilter), new StaticValue(0), Duration.EndOfTurn, true), false));

View file

@ -38,7 +38,7 @@ import mage.constants.CardType;
import mage.filter.FilterSpell;
import mage.filter.predicate.Predicates;
import mage.filter.predicate.mageobject.CardTypePredicate;
import mage.game.permanent.token.GoblinTokenWithHaste;
import mage.game.permanent.token.GoblinToken;
/**
*
@ -53,10 +53,10 @@ public final class Goblinslide extends CardImpl {
}
public Goblinslide(UUID ownerId, CardSetInfo setInfo) {
super(ownerId,setInfo,new CardType[]{CardType.ENCHANTMENT},"{2}{R}");
super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{2}{R}");
// Whenever you cast a noncreature spell, you may pay {1}. If you do, create a 1/1 red Goblin creature token with haste.
this.addAbility(new SpellCastControllerTriggeredAbility(new DoIfCostPaid(new CreateTokenEffect(new GoblinTokenWithHaste()), new GenericManaCost(1)), filter, false));
this.addAbility(new SpellCastControllerTriggeredAbility(new DoIfCostPaid(new CreateTokenEffect(new GoblinToken(true)), new GenericManaCost(1)), filter, false));
}
public Goblinslide(final Goblinslide card) {

View file

@ -55,7 +55,7 @@ import mage.game.stack.Spell;
public final class Hostility extends CardImpl {
public Hostility(UUID ownerId, CardSetInfo setInfo) {
super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{3}{R}{R}{R}");
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{3}{R}{R}{R}");
this.subtype.add(SubType.ELEMENTAL);
this.subtype.add(SubType.INCARNATION);
this.power = new MageInt(6);
@ -124,17 +124,8 @@ class HostilityEffect extends PreventionEffectImpl {
public boolean replaceEvent(GameEvent event, Ability source, Game game) {
PreventionEffectData preventionEffectData = preventDamageAction(event, source, game);
if (preventionEffectData.getPreventedDamage() > 0) {
new CreateTokenEffect(new HostilityElementalToken(), preventionEffectData.getPreventedDamage()).apply(game, source);
new CreateTokenEffect(new ElementalShamanToken(true), preventionEffectData.getPreventedDamage()).apply(game, source);
}
return true;
}
}
class HostilityElementalToken extends ElementalShamanToken {
public HostilityElementalToken() {
super("DD2");
description = description + " with haste";
addAbility(HasteAbility.getInstance());
}
}

View file

@ -37,7 +37,7 @@ import mage.abilities.effects.common.CreateTokenEffect;
*
* @author spjspj
*/
public class ATATToken extends TokenImpl {
public final class ATATToken extends TokenImpl {
public ATATToken() {
super("AT-AT", "5/5 white artifact AT-AT creature tokens with \"When this creature dies, create two 1/1 white Trooper creature tokens.\"", 5, 5);

View file

@ -37,7 +37,7 @@ import mage.abilities.keyword.FlyingAbility;
*
* @author spjspj
*/
public class AbhorrentOverlordHarpyToken extends TokenImpl {
public final class AbhorrentOverlordHarpyToken extends TokenImpl {
public AbhorrentOverlordHarpyToken() {
super("Harpy", "1/1 black Harpy creature tokens with flying");

View file

@ -38,7 +38,7 @@ import mage.abilities.keyword.FlyingAbility;
*
* @author spjspj
*/
public class AerieWorshippersBirdToken extends TokenImpl {
public final class AerieWorshippersBirdToken extends TokenImpl {
public AerieWorshippersBirdToken() {
super("Bird", "2/2 blue Bird enchantment creature token with flying");

View file

@ -38,7 +38,7 @@ import mage.abilities.keyword.TrampleAbility;
*
* @author spjspj
*/
public class AkoumStonewakerElementalToken extends TokenImpl {
public final class AkoumStonewakerElementalToken extends TokenImpl {
public AkoumStonewakerElementalToken() {
super("Elemental", "3/1 red Elemental creature token with trample and haste");

View file

@ -36,7 +36,7 @@ import mage.abilities.keyword.HasteAbility;
*
* @author spjspj
*/
public class AkroanSoldierToken extends TokenImpl {
public final class AkroanSoldierToken extends TokenImpl {
public AkroanSoldierToken() {
super("Soldier", "1/1 red Soldier creature token with haste");

View file

@ -8,7 +8,7 @@ import mage.abilities.keyword.FlyingAbility;
import mage.constants.CardType;
import mage.constants.SubType;
public class AngelToken extends TokenImpl {
public final class AngelToken extends TokenImpl {
final static private List<String> tokenImageSets = new ArrayList<>();

View file

@ -36,7 +36,7 @@ import mage.abilities.keyword.FlyingAbility;
*
* @author spjspj
*/
public class AnotherSpiritToken extends TokenImpl {
public final class AnotherSpiritToken extends TokenImpl {
public AnotherSpiritToken() {
super("Spirit", "3/3 white Spirit creature token with flying");

View file

@ -36,7 +36,7 @@ import mage.MageInt;
*
* @author spjspj
*/
public class AnthousaWarriorToken extends TokenImpl {
public final class AnthousaWarriorToken extends TokenImpl {
public AnthousaWarriorToken() {
super("", "2/2 Warrior creatures");

View file

@ -35,7 +35,7 @@ import mage.MageInt;
*
* @author spjspj
*/
public class ApeToken extends TokenImpl {
public final class ApeToken extends TokenImpl {
public ApeToken() {
super("Ape", "2/2 green Ape creature token");

View file

@ -36,7 +36,7 @@ import mage.MageInt;
*
* @author spjspj
*/
public class ArchitectOfTheUntamedBeastToken extends TokenImpl {
public final class ArchitectOfTheUntamedBeastToken extends TokenImpl {
public ArchitectOfTheUntamedBeastToken() {
super("Beast", "6/6 colorless Beast artifact creature token");

View file

@ -38,7 +38,7 @@ import mage.abilities.effects.common.LoseGameTargetPlayerEffect;
*
* @author spjspj
*/
public class AssassinToken extends TokenImpl {
public final class AssassinToken extends TokenImpl {
public AssassinToken() {
super("Assassin", "1/1 black Assassin creature tokens with \"Whenever this creature deals combat damage to a player, that player loses the game.\"");

View file

@ -35,7 +35,7 @@ import mage.MageInt;
*
* @author spjspj
*/
public class AssemblyWorkerToken extends TokenImpl {
public final class AssemblyWorkerToken extends TokenImpl {
public AssemblyWorkerToken() {
super("Assembly-Worker", "2/2 Assembly-Worker artifact creature");

View file

@ -46,7 +46,7 @@ import mage.players.Player;
*
* @author spjspj
*/
public class AvatarToken extends TokenImpl {
public final class AvatarToken extends TokenImpl {
public AvatarToken() {
super("Avatar", "white Avatar creature token with \"This creature's power and toughness are each equal to your life total.\"");

View file

@ -36,7 +36,7 @@ import mage.abilities.keyword.HasteAbility;
*
* @author spjspj
*/
public class BalduvianToken extends TokenImpl {
public final class BalduvianToken extends TokenImpl {
public BalduvianToken() {
super("Graveborn", "3/1 black and red Graveborn creature token with haste");

View file

@ -36,7 +36,7 @@ import mage.MageInt;
*
* @author spjspj
*/
public class BaruFistOfKrosaToken extends TokenImpl {
public final class BaruFistOfKrosaToken extends TokenImpl {
public BaruFistOfKrosaToken() {
this(1);

View file

@ -8,7 +8,7 @@ import mage.abilities.keyword.FlyingAbility;
import mage.constants.CardType;
import mage.constants.SubType;
public class BatToken extends TokenImpl {
public final class BatToken extends TokenImpl {
final static private List<String> tokenImageSets = new ArrayList<>();

View file

@ -36,7 +36,7 @@ import mage.constants.SubType;
*
* @author BetaSteward_at_googlemail.com
*/
public class BearToken extends TokenImpl {
public final class BearToken extends TokenImpl {
public BearToken() {
super("Bear", "2/2 green Bear creature token");

View file

@ -35,7 +35,7 @@ import mage.MageInt;
*
* @author spjspj
*/
public class BearsCompanionBearToken extends TokenImpl {
public final class BearsCompanionBearToken extends TokenImpl {
public BearsCompanionBearToken() {
super("Bear", "4/4 green Bear creature token");

View file

@ -38,7 +38,7 @@ import mage.constants.SubType;
*
* @author BetaSteward_at_googlemail.com
*/
public class BeastToken extends TokenImpl {
public final class BeastToken extends TokenImpl {
final static private List<String> tokenImageSets = new ArrayList<>();

View file

@ -38,7 +38,7 @@ import mage.constants.SubType;
*
* @author LoneFox
*/
public class BeastToken2 extends TokenImpl {
public final class BeastToken2 extends TokenImpl {
final static private List<String> tokenImageSets = new ArrayList<>();

View file

@ -35,7 +35,7 @@ import mage.constants.SubType;
*
* @author fireshoes
*/
public class BeastToken3 extends TokenImpl {
public final class BeastToken3 extends TokenImpl {
public BeastToken3() {
this(null, 0);

View file

@ -36,7 +36,7 @@ import mage.abilities.keyword.FlyingAbility;
*
* @author spjspj
*/
public class BeckonApparitionToken extends TokenImpl {
public final class BeckonApparitionToken extends TokenImpl {
public BeckonApparitionToken() {
super("Spirit", "1/1 white and black Spirit creature token with flying");

View file

@ -38,7 +38,7 @@ import mage.constants.SubType;
*
* @author spjspj
*/
public class BelzenlokClericToken extends TokenImpl {
public final class BelzenlokClericToken extends TokenImpl {
final static private List<String> tokenImageSets = new ArrayList<>();
static {

View file

@ -52,7 +52,7 @@ import mage.game.permanent.Permanent;
*
* @author LoneFox
*/
public class BelzenlokDemonToken extends TokenImpl {
public final class BelzenlokDemonToken extends TokenImpl {
final static private List<String> tokenImageSets = new ArrayList<>();
static {

View file

@ -36,7 +36,7 @@ import mage.abilities.keyword.FlyingAbility;
*
* @author spjspj
*/
public class BirdSoldierToken extends TokenImpl {
public final class BirdSoldierToken extends TokenImpl {
public BirdSoldierToken() {
super("Bird Soldier", "1/1 white Bird Soldier creature with flying");

View file

@ -38,7 +38,7 @@ import mage.constants.SubType;
*
* @author LoneFox
*/
public class BirdToken extends TokenImpl {
public final class BirdToken extends TokenImpl {
public BirdToken() {
super("Bird", "1/1 white Bird creature token with flying");

View file

@ -35,7 +35,7 @@ import mage.MageInt;
*
* @author spjspj
*/
public class BoarToken extends TokenImpl {
public final class BoarToken extends TokenImpl {
public BoarToken() {
super("Boar", "3/3 green Boar creature token");

View file

@ -35,7 +35,7 @@ import mage.MageInt;
*
* @author spjspj
*/
public class BrainiacToken extends TokenImpl {
public final class BrainiacToken extends TokenImpl {
public BrainiacToken() {
super("Brainiac", "1/1 red Brainiac creature token");

View file

@ -35,7 +35,7 @@ import mage.constants.SubType;
*
* @author spjspj
*/
public class BreedingPitThrullToken extends TokenImpl {
public final class BreedingPitThrullToken extends TokenImpl {
public BreedingPitThrullToken() {
super("Thrull", "0/1 black Thrull creature token");

View file

@ -35,7 +35,7 @@ import mage.MageInt;
*
* @author spjspj & L_J
*/
public class BrokenVisageSpiritToken extends TokenImpl {
public final class BrokenVisageSpiritToken extends TokenImpl {
public BrokenVisageSpiritToken() {
this(0,0);

View file

@ -41,7 +41,7 @@ import mage.constants.Zone;
*
* @author spjspj
*/
public class BroodKeeperDragonToken extends TokenImpl {
public final class BroodKeeperDragonToken extends TokenImpl {
public BroodKeeperDragonToken() {
super("Dragon", "2/2 red Dragon creature token with flying. It has \"{R}: This creature gets +1/+0 until end of turn.\"");

View file

@ -36,7 +36,7 @@ import mage.abilities.keyword.FlyingAbility;
*
* @author spjspj
*/
public class ButterflyToken extends TokenImpl {
public final class ButterflyToken extends TokenImpl {
public ButterflyToken() {
super("Butterfly", "1/1 green Insect creature token with flying named Butterfly");

View file

@ -36,7 +36,7 @@ import mage.constants.SubType;
*
* @author spjspj
*/
public class CallTheSkyBreakerElementalToken extends TokenImpl {
public final class CallTheSkyBreakerElementalToken extends TokenImpl {
public CallTheSkyBreakerElementalToken() {
super("Elemental", "5/5 blue and red Elemental creature token with flying");

View file

@ -34,7 +34,7 @@ import mage.constants.SubType;
*
* @author spjspj
*/
public class CamaridToken extends TokenImpl {
public final class CamaridToken extends TokenImpl {
public CamaridToken() {
super("Camarid", "1/1 blue Camarid creature tokens");

View file

@ -35,7 +35,7 @@ import mage.MageInt;
*
* @author spjspj
*/
public class CaribouToken extends TokenImpl {
public final class CaribouToken extends TokenImpl {
public CaribouToken() {
super("Caribou", "0/1 white Caribou creature token");

View file

@ -35,7 +35,7 @@ import mage.MageInt;
*
* @author spjspj
*/
public class CarnivoreToken extends TokenImpl {
public final class CarnivoreToken extends TokenImpl {
public CarnivoreToken() {
super("Carnivore", "3/1 red Beast creature token");

View file

@ -35,7 +35,7 @@ import mage.MageInt;
*
* @author TheElk801
*/
public class CarrionBlackInsectToken extends TokenImpl {
public final class CarrionBlackInsectToken extends TokenImpl {
public CarrionBlackInsectToken() {
super("Insect", "0/1 black Insect creature token");

View file

@ -36,7 +36,7 @@ import mage.constants.SubType;
*
* @author LevelX2
*/
public class CatSoldierCreatureToken extends TokenImpl {
public final class CatSoldierCreatureToken extends TokenImpl {
public CatSoldierCreatureToken() {
super("Cat Soldier", "1/1 white Cat Soldier creature token with vigilance");

View file

@ -39,7 +39,7 @@ import mage.constants.SubType;
*
* @author LoneFox
*/
public class CatToken extends TokenImpl {
public final class CatToken extends TokenImpl {
final static private List<String> tokenImageSets = new ArrayList<>();

View file

@ -37,7 +37,7 @@ import mage.constants.SubType;
*
* @author fireshoes
*/
public class CatToken2 extends TokenImpl {
public final class CatToken2 extends TokenImpl {
public CatToken2() {
this((String)null);

View file

@ -38,7 +38,7 @@ import mage.constants.SubType;
*
* @author spjspj
*/
public class CatWarriorToken extends TokenImpl {
public final class CatWarriorToken extends TokenImpl {
final static private List<String> tokenImageSets = new ArrayList<>();

View file

@ -35,7 +35,7 @@ import mage.constants.SubType;
*
* @author LevelX2
*/
public class CentaurEnchantmentCreatureToken extends TokenImpl {
public final class CentaurEnchantmentCreatureToken extends TokenImpl {
public CentaurEnchantmentCreatureToken() {
super("Centaur", "3/3 green Centaur enchantment creature token");

View file

@ -40,7 +40,7 @@ import mage.util.RandomUtil;
*
* @author LevelX2
*/
public class CentaurToken extends TokenImpl {
public final class CentaurToken extends TokenImpl {
final static private List<String> tokenImageSets = new ArrayList<>();

View file

@ -38,7 +38,7 @@ import mage.MageInt;
*
* @author spjspj
*/
public class ChainersTormentNightmareToken extends TokenImpl {
public final class ChainersTormentNightmareToken extends TokenImpl {
final static private List<String> tokenImageSets = new ArrayList<>();
static {

View file

@ -36,7 +36,7 @@ import mage.abilities.keyword.IslandwalkAbility;
*
* @author spjspj
*/
public class ChasmSkulkerSquidToken extends TokenImpl {
public final class ChasmSkulkerSquidToken extends TokenImpl {
public ChasmSkulkerSquidToken() {
super("Squid", "1/1 blue Squid creature token with islandwalk");

View file

@ -36,7 +36,7 @@ import mage.constants.SubType;
*
* @author Quercitron
*/
public class CitizenToken extends TokenImpl {
public final class CitizenToken extends TokenImpl {
public CitizenToken() {
super("Citizen", "1/1 white Citizen creature token");

View file

@ -37,7 +37,7 @@ import mage.abilities.keyword.FlyingAbility;
*
* @author spjspj
*/
public class CloudSpriteToken extends TokenImpl {
public final class CloudSpriteToken extends TokenImpl {
public CloudSpriteToken() {
super("Cloud Sprite", "1/1 blue faerie creature token named Cloud Sprite with flying and \"Cloud Sprite can block only creatures with flying.\"");

View file

@ -44,7 +44,7 @@ import java.util.List;
/**
*
*/
public class ClueArtifactToken extends TokenImpl {
public final class ClueArtifactToken extends TokenImpl {
final static private List<String> tokenImageSets = new ArrayList<>();

View file

@ -36,7 +36,7 @@ import mage.abilities.keyword.DefenderAbility;
*
* @author spjspj
*/
public class ConstructToken extends TokenImpl {
public final class ConstructToken extends TokenImpl {
public ConstructToken() {
this("CNS");

View file

@ -36,7 +36,7 @@ import mage.abilities.keyword.IslandwalkAbility;
*
* @author spjspj
*/
public class CoralBarrierSquidToken extends TokenImpl {
public final class CoralBarrierSquidToken extends TokenImpl {
public CoralBarrierSquidToken() {
super("Squid", "1/1 blue Squid creature token with islandwalk");

View file

@ -35,7 +35,7 @@ import mage.MageInt;
*
* @author spjspj
*/
public class CorpseweftZombieToken extends TokenImpl {
public final class CorpseweftZombieToken extends TokenImpl {
public CorpseweftZombieToken() {
this(2,2);

View file

@ -35,7 +35,7 @@ import mage.MageInt;
*
* @author spjspj
*/
public class CorruptedZendikonOozeToken extends TokenImpl {
public final class CorruptedZendikonOozeToken extends TokenImpl {
public CorruptedZendikonOozeToken() {
super("Ooze", "3/3 black Ooze creature");

View file

@ -35,7 +35,7 @@ import mage.MageInt;
*
* @author spjspj
*/
public class CreakwoodLiegeToken extends TokenImpl {
public final class CreakwoodLiegeToken extends TokenImpl {
public CreakwoodLiegeToken() {
super("Worm", "1/1 black and green Worm creature token");

View file

@ -35,7 +35,7 @@ import mage.MageInt;
*
* @author spjspj
*/
public class CrestedSunmareToken extends TokenImpl {
public final class CrestedSunmareToken extends TokenImpl {
public CrestedSunmareToken() {
super("Horse", "5/5 white Horse creature token");

View file

@ -36,7 +36,7 @@ import mage.abilities.keyword.ChangelingAbility;
*
* @author spjspj
*/
public class CribSwapShapeshifterWhiteToken extends TokenImpl {
public final class CribSwapShapeshifterWhiteToken extends TokenImpl {
public CribSwapShapeshifterWhiteToken() {
super("Shapeshifter", "1/1 colorless Shapeshifter creature token with changeling");

View file

@ -35,7 +35,7 @@ import mage.MageInt;
*
* @author spjspj
*/
public class CrushOfTentaclesToken extends TokenImpl {
public final class CrushOfTentaclesToken extends TokenImpl {
public CrushOfTentaclesToken() {
super("Octopus", "8/8 blue Octopus creature");

View file

@ -36,7 +36,7 @@ import mage.MageInt;
*
* @author spjspj
*/
public class CurseOfTheSwineBoarToken extends TokenImpl {
public final class CurseOfTheSwineBoarToken extends TokenImpl {
public CurseOfTheSwineBoarToken() {
super("Boar", "2/2 green Boar creature token");

View file

@ -36,7 +36,7 @@ import mage.abilities.keyword.DefenderAbility;
*
* @author spjspj
*/
public class DarettiConstructToken extends TokenImpl {
public final class DarettiConstructToken extends TokenImpl {
public DarettiConstructToken() {
this("CNS");

View file

@ -48,7 +48,7 @@ import mage.players.Player;
*
* @author spjspj
*/
public class DaxosSpiritToken extends TokenImpl {
public final class DaxosSpiritToken extends TokenImpl {
public DaxosSpiritToken() {
super("Spirit", "white and black Spirit enchantment creature token with \"This creature's power and toughness are each equal to the number of experience counters you have.\"");

View file

@ -36,7 +36,7 @@ import mage.abilities.keyword.ShroudAbility;
*
* @author spjspj
*/
public class DeadlyGrubToken extends TokenImpl {
public final class DeadlyGrubToken extends TokenImpl {
public DeadlyGrubToken() {
super("Insect", "6/1 green Insect creature token with shroud");

View file

@ -45,7 +45,7 @@ import mage.target.common.TargetCardInYourGraveyard;
*
* @author spjspj
*/
public class DeathpactAngelToken extends TokenImpl {
public final class DeathpactAngelToken extends TokenImpl {
private static final FilterCreatureCard filter = new FilterCreatureCard("card named Deathpact Angel from your graveyard");

View file

@ -39,7 +39,7 @@ import mage.constants.SubType;
*
* @author Saga
*/
public class DeathtouchRatToken extends TokenImpl {
public final class DeathtouchRatToken extends TokenImpl {
final static private List<String> tokenImageSets = new ArrayList<>();
static {

View file

@ -36,7 +36,7 @@ import mage.abilities.keyword.DeathtouchAbility;
*
* @author spjspj
*/
public class DeathtouchSnakeToken extends TokenImpl {
public final class DeathtouchSnakeToken extends TokenImpl {
public DeathtouchSnakeToken() {
super("Snake", "1/1 green Snake creature token with deathtouch");

View file

@ -36,7 +36,7 @@ import mage.constants.SubType;
*
* @author TheElk801
*/
public class DefenderPlantToken extends TokenImpl {
public final class DefenderPlantToken extends TokenImpl {
public DefenderPlantToken() {
this(null, 0);

View file

@ -38,7 +38,7 @@ import mage.constants.SubType;
*
* @author LoneFox
*/
public class DemonToken extends TokenImpl {
public final class DemonToken extends TokenImpl {
public DemonToken() {
super("Demon", "5/5 black Demon creature token with flying");

View file

@ -35,7 +35,7 @@ import mage.MageInt;
*
* @author spjspj
*/
public class DeserterToken extends TokenImpl {
public final class DeserterToken extends TokenImpl {
public DeserterToken() {
super("Deserter", "0/1 white Deserter creature token");

View file

@ -34,7 +34,7 @@ import mage.constants.SubType;
*
* @author spjspj
*/
public class DevastatingSummonsElementalToken extends TokenImpl {
public final class DevastatingSummonsElementalToken extends TokenImpl {
public DevastatingSummonsElementalToken() {
super("Elemental", "X/X red Elemental creature");

View file

@ -42,7 +42,7 @@ import mage.target.common.TargetAnyTarget;
*
* @author fireshoes
*/
public class DevilToken extends TokenImpl {
public final class DevilToken extends TokenImpl {
public DevilToken() {
super("Devil", "1/1 red Devil creature with \"When this creature dies, it deals 1 damage to any target.\"");

View file

@ -35,7 +35,7 @@ import mage.MageInt;
*
* @author spjspj
*/
public class DinOfTheFireherdToken extends TokenImpl {
public final class DinOfTheFireherdToken extends TokenImpl {
public DinOfTheFireherdToken() {
super("Elemental", "5/5 black and red Elemental creature");

View file

@ -36,7 +36,7 @@ import mage.constants.SubType;
*
* @author TheElk801
*/
public class DinosaurToken extends TokenImpl {
public final class DinosaurToken extends TokenImpl {
public DinosaurToken() {
super("Dinosaur", "3/3 green Dinosaur creature token with trample");

View file

@ -36,7 +36,7 @@ import mage.abilities.keyword.FlyingAbility;
*
* @author spjspj
*/
public class DjinnMonkToken extends TokenImpl {
public final class DjinnMonkToken extends TokenImpl {
public DjinnMonkToken() {
super("Djinn Monk", "2/2 blue Djinn Monk creature token with flying");

View file

@ -36,7 +36,7 @@ import mage.abilities.keyword.FlyingAbility;
*
* @author spjspj
*/
public class DjinnToken extends TokenImpl {
public final class DjinnToken extends TokenImpl {
public DjinnToken() {
super("Djinn", "5/5 colorless Djinn artifact creature token with flying");

View file

@ -43,7 +43,7 @@ import mage.filter.common.FilterControlledPermanent;
*
* @author spjspj
*/
public class DokaiWeaverofLifeToken extends TokenImpl {
public final class DokaiWeaverofLifeToken extends TokenImpl {
final static FilterControlledPermanent filterLands = new FilterControlledLandPermanent("lands you control");

View file

@ -36,7 +36,7 @@ import mage.abilities.keyword.FlyingAbility;
*
* @author spjspj
*/
public class DovescapeToken extends TokenImpl {
public final class DovescapeToken extends TokenImpl {
public DovescapeToken() {
super("Bird", "1/1 white and blue Bird creature token with flying");

View file

@ -38,7 +38,7 @@ import mage.constants.SubType;
*
* @author spjspj
*/
public class DragonBroodmotherDragonToken extends TokenImpl {
public final class DragonBroodmotherDragonToken extends TokenImpl {
public DragonBroodmotherDragonToken() {
super("Dragon", "1/1 red and green Dragon creature token with flying and devour 2");

View file

@ -41,7 +41,7 @@ import mage.constants.Zone;
*
* @author spjspj
*/
public class DragonEggDragonToken extends TokenImpl {
public final class DragonEggDragonToken extends TokenImpl {
public DragonEggDragonToken() {
super("Dragon", "2/2 red Dragon creature token with flying that has \"{R}: This creature gets +1/+0 until end of turn");

View file

@ -40,7 +40,7 @@ import mage.constants.SubType;
*
* @author BetaSteward_at_googlemail.com
*/
public class DragonToken extends TokenImpl {
public final class DragonToken extends TokenImpl {
final static private List<String> tokenImageSets = new ArrayList<>();

View file

@ -39,7 +39,7 @@ import mage.constants.SubType;
*
* @author LoneFox
*/
public class DragonToken2 extends TokenImpl {
public final class DragonToken2 extends TokenImpl {
final static private List<String> tokenImageSets = new ArrayList<>();

View file

@ -40,7 +40,7 @@ import mage.constants.SubType;
*
* @author Saga
*/
public class DragonTokenGold extends TokenImpl {
public final class DragonTokenGold extends TokenImpl {
final static private List<String> tokenImageSets = new ArrayList<>();

View file

@ -37,7 +37,7 @@ import mage.abilities.keyword.FlyingAbility;
*
* @author North
*/
public class DrakeToken extends TokenImpl {
public final class DrakeToken extends TokenImpl {
public DrakeToken() {
super("Drake", "2/2 blue Drake creature token with flying");

View file

@ -37,7 +37,7 @@ import mage.constants.SubType;
*
* @author Styxo
*/
public class DroidToken extends TokenImpl {
public final class DroidToken extends TokenImpl {
public DroidToken() {
super("Droid", "1/1 colorless Droid creature token");

View file

@ -35,7 +35,7 @@ import mage.MageInt;
*
* @author spjspj
*/
public class DuneBroodNephilimToken extends TokenImpl {
public final class DuneBroodNephilimToken extends TokenImpl {
public DuneBroodNephilimToken() {
super("Sand", "1/1 colorless Sand creature token");

View file

@ -38,7 +38,7 @@ import mage.MageInt;
*
* @author spjspj
*/
public class EdgarMarkovToken extends TokenImpl {
public final class EdgarMarkovToken extends TokenImpl {
final static private List<String> tokenImageSets = new ArrayList<>();
static {

View file

@ -36,7 +36,7 @@ import mage.abilities.keyword.AnnihilatorAbility;
*
* @author spjspj
*/
public class EldraziAnnihilatorToken extends TokenImpl {
public final class EldraziAnnihilatorToken extends TokenImpl {
public EldraziAnnihilatorToken() {
super("Eldrazi", "7/7 colorless Eldrazi creature token");

View file

@ -38,7 +38,7 @@ import mage.constants.SubType;
*
* @author escplan9 (Derek Monturo - dmontur1 at gmail dot com)
*/
public class EldraziHorrorToken extends TokenImpl {
public final class EldraziHorrorToken extends TokenImpl {
final static private List<String> tokenImageSets = new ArrayList<>();

View file

@ -44,7 +44,7 @@ import mage.util.RandomUtil;
*
* @author fireshoes
*/
public class EldraziScionToken extends TokenImpl {
public final class EldraziScionToken extends TokenImpl {
final static private List<String> tokenImageSets = new ArrayList<>();

View file

@ -44,7 +44,7 @@ import mage.util.RandomUtil;
*
* @author BetaSteward_at_googlemail.com
*/
public class EldraziSpawnToken extends TokenImpl {
public final class EldraziSpawnToken extends TokenImpl {
final static private List<String> tokenImageSets = new ArrayList<>();

View file

@ -35,7 +35,7 @@ import mage.MageInt;
*
* @author spjspj
*/
public class EldraziToken extends TokenImpl {
public final class EldraziToken extends TokenImpl {
public EldraziToken() {
super("Eldrazi", "10/10 colorless Eldrazi creature token");

View file

@ -37,7 +37,7 @@ import mage.constants.SubType;
*
* @author spjspj
*/
public class ElementalAppealElementalToken extends TokenImpl {
public final class ElementalAppealElementalToken extends TokenImpl {
public ElementalAppealElementalToken() {
super("Elemental", "7/1 red Elemental creature token with trample and haste");

View file

@ -36,7 +36,7 @@ import mage.abilities.keyword.HasteAbility;
*
* @author spjspj
*/
public class ElementalCatToken extends TokenImpl {
public final class ElementalCatToken extends TokenImpl {
public ElementalCatToken() {
super("Elemental Cat", "1/1 red Elemental Cat creature token");

View file

@ -36,7 +36,7 @@ import mage.constants.SubType;
*
* @author spjspj
*/
public class ElementalMasteryElementalToken extends TokenImpl {
public final class ElementalMasteryElementalToken extends TokenImpl {
public ElementalMasteryElementalToken() {
super("Elemental", "1/1 red Elemental creature token with haste");

View file

@ -25,12 +25,13 @@
* authors and should not be interpreted as representing official policies, either expressed
* or implied, of BetaSteward_at_googlemail.com.
*/
package mage.game.permanent.token;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import mage.MageInt;
import mage.abilities.keyword.HasteAbility;
import mage.constants.CardType;
import mage.constants.SubType;
@ -38,7 +39,7 @@ import mage.constants.SubType;
*
* @author Styxo
*/
public class ElementalShamanToken extends TokenImpl {
public final class ElementalShamanToken extends TokenImpl {
final static private List<String> tokenImageSets = new ArrayList<>();
@ -46,6 +47,14 @@ public class ElementalShamanToken extends TokenImpl {
tokenImageSets.addAll(Arrays.asList("C15", "DD3JVC", "DD2", "LRW"));
}
public ElementalShamanToken(boolean withHaste) {
this("DD2");
if (withHaste) {
addAbility(HasteAbility.getInstance());
description = description + " with haste";
}
}
public ElementalShamanToken() {
this("LRW");
}

View file

@ -40,7 +40,7 @@ import mage.constants.SubType;
*
* @author magenoxx
*/
public class ElementalToken extends TokenImpl {
public final class ElementalToken extends TokenImpl {
final static private List<String> tokenImageSets = new ArrayList<>();

View file

@ -41,7 +41,7 @@ import mage.filter.common.FilterCreatureCard;
*
* @author TheElk801
*/
public class ElephantResurgenceToken extends TokenImpl {
public final class ElephantResurgenceToken extends TokenImpl {
public ElephantResurgenceToken() {
super("Elephant", "green Elephant creature token. Those creatures have \"This creature's power and toughness are each equal to the number of creature cards in its controller's graveyard.\"");

View file

@ -39,7 +39,7 @@ import mage.constants.SubType;
*
* @author BetaSteward_at_googlemail.com
*/
public class ElephantToken extends TokenImpl {
public final class ElephantToken extends TokenImpl {
final static private List<String> tokenImageSets = new ArrayList<>();

Some files were not shown because too many files have changed in this diff Show more