Some fixes to "Remove license headers" (#4998).

This commit is contained in:
LevelX2 2018-06-03 10:18:30 +02:00
parent c4212a0d9e
commit b17858d910
24 changed files with 219 additions and 272 deletions

296
.gitignore vendored
View file

@ -1,147 +1,149 @@
syntax: glob syntax: glob
# Mage.Client # Mage.Client
Mage.Client/*.dck Mage.Client/*.dck
Mage.Client/db Mage.Client/db
Mage.Client/gamelogs Mage.Client/gamelogs
Mage.Client/gamelogsJson Mage.Client/gamelogsJson
Mage.Client/*.log Mage.Client/*.log
Mage.Client/plugins/images Mage.Client/plugins/images
Mage.Client/plugins/plugin.data Mage.Client/plugins/plugin.data
Mage.Client/target Mage.Client/target
Mage.Common/target Mage.Common/target
/db /db
/gamelogs /gamelogs
/mageclient.log /mageclient.log
# Mage.Plugins # Mage.Plugins
Mage.Plugins/Mage.Card.Plugin/target Mage.Plugins/Mage.Card.Plugin/target
Mage.Plugins/Mage.Counter.Plugin/target Mage.Plugins/Mage.Counter.Plugin/target
Mage.Plugins/Mage.Theme.Plugin/target Mage.Plugins/Mage.Theme.Plugin/target
Mage.Plugins/Mage.Rating.Plugin/target Mage.Plugins/Mage.Rating.Plugin/target
# Mage.Server # Mage.Server
Mage.Server/config/init.txt Mage.Server/config/init.txt
Mage.Server/saved Mage.Server/saved
Mage.Server/target Mage.Server/target
Mage.Server/db Mage.Server/db
Mage.Server/cache Mage.Server/cache
Mage.Server/mageserver.log Mage.Server/mageserver.log
Mage.Server/magediag.log Mage.Server/magediag.log
Mage.Server/extensions Mage.Server/extensions
/saved /saved
/db /db
/cache /cache
/mageserver.log /mageserver.log
/magediag.log /magediag.log
/extensions /extensions
Mage.Server.Console/target/ Mage.Server.Console/target/
Mage.Server.Console/mageadmin.log Mage.Server.Console/mageadmin.log
Mage.Server.Plugins/Mage.Deck.Constructed/target Mage.Server.Plugins/Mage.Deck.Constructed/target
Mage.Server.Plugins/Mage.Deck.Limited/target Mage.Server.Plugins/Mage.Deck.Limited/target
Mage.Server.Plugins/Mage.Game.BrawlDuel/target/ Mage.Server.Plugins/Mage.Game.BrawlDuel/target/
Mage.Server.Plugins/Mage.Game.BrawlFreeForAll/target/ Mage.Server.Plugins/Mage.Game.BrawlFreeForAll/target/
Mage.Server.Plugins/Mage.Game.CanadianHighlanderDuel/target Mage.Server.Plugins/Mage.Game.CanadianHighlanderDuel/target
Mage.Server.Plugins/Mage.Game.CommanderDuel/target Mage.Server.Plugins/Mage.Game.CommanderDuel/target
Mage.Server.Plugins/Mage.Game.CommanderFreeForAll/target/ Mage.Server.Plugins/Mage.Game.CommanderFreeForAll/target/
Mage.Server.Plugins/Mage.Game.FreeForAll/target Mage.Server.Plugins/Mage.Game.FreeForAll/target
Mage.Server.Plugins/Mage.Game.MomirDuel/target Mage.Server.Plugins/Mage.Game.MomirDuel/target
Mage.Server.Plugins/Mage.Game.MomirGame/target/ Mage.Server.Plugins/Mage.Game.MomirGame/target/
Mage.Server.Plugins/Mage.Game.PennyDreadfulCommanderFreeForAll/target Mage.Server.Plugins/Mage.Game.PennyDreadfulCommanderFreeForAll/target
Mage.Server.Plugins/Mage.Game.FreeformCommanderFreeForAll/target/ Mage.Server.Plugins/Mage.Game.FreeformCommanderFreeForAll/target/
Mage.Server.Plugins/Mage.Game.TinyLeadersDuel/target Mage.Server.Plugins/Mage.Game.TinyLeadersDuel/target
Mage.Server.Plugins/Mage.Game.TwoPlayerDuel/target Mage.Server.Plugins/Mage.Game.TwoPlayerDuel/target
Mage.Server.Plugins/Mage.Player.AI.DraftBot/target Mage.Server.Plugins/Mage.Player.AI.DraftBot/target
Mage.Server.Plugins/Mage.Player.AI.MA/target Mage.Server.Plugins/Mage.Player.AI.MA/target
Mage.Server.Plugins/Mage.Player.AI/target Mage.Server.Plugins/Mage.Player.AI/target
Mage.Server.Plugins/Mage.Player.AIMCTS/target Mage.Server.Plugins/Mage.Player.AIMCTS/target
Mage.Server.Plugins/Mage.Player.AIMinimax/target Mage.Server.Plugins/Mage.Player.AIMinimax/target
Mage.Server.Plugins/Mage.Player.Human/target Mage.Server.Plugins/Mage.Player.Human/target
Mage.Server.Plugins/Mage.Tournament.BoosterDraft/target Mage.Server.Plugins/Mage.Tournament.BoosterDraft/target
Mage.Server.Plugins/Mage.Tournament.Constructed/target Mage.Server.Plugins/Mage.Tournament.Constructed/target
Mage.Server.Plugins/Mage.Tournament.Sealed/target Mage.Server.Plugins/Mage.Tournament.Sealed/target
# Mage.Sets # Mage.Sets
Mage.Sets/target Mage.Sets/target
# Mage.Stats # Mage.Stats
Mage.Stats/server.log Mage.Stats/server.log
Mage.Stats/mageserver.log Mage.Stats/mageserver.log
Mage.Stats/magediag.log Mage.Stats/magediag.log
# Mage.Tests # Mage.Tests
Mage.Tests/target Mage.Tests/target
Mage.Tests/cache Mage.Tests/cache
Mage.Tests/db Mage.Tests/db
Mage.Tests/Mage.log Mage.Tests/Mage.log
Mage.Tests/watchdog.log Mage.Tests/watchdog.log
# Mage # Mage
Mage/target Mage/target
# Mage.Updater # Mage.Updater
Mage.Updater/target Mage.Updater/target
mage.updater.client/target mage.updater.client/target
# Mage.Verify # Mage.Verify
Mage.Verify/target Mage.Verify/target
Mage.Verify/mageclient.log Mage.Verify/mageclient.log
Mage.Verify/AllCards.json.zip Mage.Verify/AllCards.json.zip
Mage.Verify/AllSets.json.zip Mage.Verify/AllSets.json.zip
Mage.Verify/AllCards.json Mage.Verify/AllCards.json
Mage.Verify/AllSets.json Mage.Verify/AllSets.json
releases releases
Utils/author.txt Utils/author.txt
.DS_Store Utils/*_tracker.txt
.metadata Utils/*implemented.txt
.project .DS_Store
.settings .metadata
.idea .project
syntax: regexp .settings
\.class .idea
\.jar syntax: regexp
\.iml \.class
\.ipr \.jar
\.iws \.iml
\.log \.ipr
nbactions.xml \.iws
nbactions-*.xml \.log
nb-configuration.xml nbactions.xml
glob:Mage.Client/cheat.dck nbactions-*.xml
glob:Mage.Client/test.dck nb-configuration.xml
mage-bundle.zip glob:Mage.Client/cheat.dck
mage-stats-ws.war glob:Mage.Client/test.dck
mage-bundle.zip
Mage.Server.Plugins/Mage.Draft.8PlayerBooster/target mage-stats-ws.war
\.orig\..*$
\.orig$ Mage.Server.Plugins/Mage.Draft.8PlayerBooster/target
\.chg\..*$ \.orig\..*$
\.rej$ \.orig$
\.conflict\~$ \.chg\..*$
/Mage.Server.Plugins/Mage.Player.AIMCTS/target/ \.rej$
\.conflict\~$
*.classpath /Mage.Server.Plugins/Mage.Player.AIMCTS/target/
*.iml
hs_err*.log *.classpath
/submitted *.iml
hs_err*.log
/Mage.Server/config/ai.please.cast.this.txt /submitted
/Mage.Stats/target/
/Utils/*_unimplemented.txt /Mage.Server/config/ai.please.cast.this.txt
*.netbeans_automatic_build /Mage.Stats/target/
Mage.Client/serverlist.txt /Utils/*_unimplemented.txt
/bin/ *.netbeans_automatic_build
/out/ Mage.Client/serverlist.txt
/target/ /bin/
/out/
client_secrets.json /target/
dependency-reduced-pom.xml client_secrets.json
mage-bundle
/Mage.Client/game-*.json dependency-reduced-pom.xml
mage-bundle
# build-tools config and log files when building client/server with Atom /Mage.Client/game-*.json
.build-tools.cson
build-output.log # build-tools config and log files when building client/server with Atom
.build-tools.cson
build-output.log

View file

@ -1,5 +1,3 @@
/*
package mage.cards.a; package mage.cards.a;
import java.util.UUID; import java.util.UUID;

View file

@ -1,5 +1,3 @@
/*
package mage.cards.c; package mage.cards.c;
import java.util.UUID; import java.util.UUID;
@ -18,7 +16,7 @@ import mage.constants.SubType;
public final class Crocanura extends CardImpl { public final class Crocanura extends CardImpl {
public Crocanura(UUID ownerId, CardSetInfo setInfo) { public Crocanura(UUID ownerId, CardSetInfo setInfo) {
super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{2}{G}"); super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{2}{G}");
this.subtype.add(SubType.CROCODILE); this.subtype.add(SubType.CROCODILE);
this.subtype.add(SubType.FROG); this.subtype.add(SubType.FROG);
@ -27,11 +25,11 @@ public final class Crocanura extends CardImpl {
//Reach //Reach
this.addAbility(ReachAbility.getInstance()); this.addAbility(ReachAbility.getInstance());
// Evolve (Whenever a creature enters the battlefield under your control, if that creature // Evolve (Whenever a creature enters the battlefield under your control, if that creature
// has greater power or toughness than this creature, put a +1/+1 counter on this creature.) // has greater power or toughness than this creature, put a +1/+1 counter on this creature.)
this.addAbility(new EvolveAbility()); this.addAbility(new EvolveAbility());
} }
public Crocanura(final Crocanura card) { public Crocanura(final Crocanura card) {

View file

@ -1,5 +1,3 @@
/*
package mage.cards.c; package mage.cards.c;
import java.util.UUID; import java.util.UUID;
@ -27,7 +25,7 @@ import mage.game.permanent.Permanent;
public final class CryptGhast extends CardImpl { public final class CryptGhast extends CardImpl {
public CryptGhast(UUID ownerId, CardSetInfo setInfo) { public CryptGhast(UUID ownerId, CardSetInfo setInfo) {
super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{3}{B}"); super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{3}{B}");
this.subtype.add(SubType.SPIRIT); this.subtype.add(SubType.SPIRIT);
this.power = new MageInt(2); this.power = new MageInt(2);
@ -50,10 +48,11 @@ public final class CryptGhast extends CardImpl {
} }
class CryptGhastTriggeredAbility extends TriggeredManaAbility { class CryptGhastTriggeredAbility extends TriggeredManaAbility {
private static final FilterControlledLandPermanent filter = new FilterControlledLandPermanent("Swamp"); private static final FilterControlledLandPermanent filter = new FilterControlledLandPermanent("Swamp");
static { static {
filter.add(new SubtypePredicate(SubType.SWAMP)); filter.add(new SubtypePredicate(SubType.SWAMP));
} }
public CryptGhastTriggeredAbility() { public CryptGhastTriggeredAbility() {

View file

@ -1,5 +1,3 @@
/*
package mage.cards.d; package mage.cards.d;
import java.util.UUID; import java.util.UUID;

View file

@ -1,5 +1,3 @@
/*
package mage.cards.e; package mage.cards.e;
import java.util.UUID; import java.util.UUID;
@ -22,7 +20,7 @@ import mage.counters.CounterType;
public final class ExperimentOne extends CardImpl { public final class ExperimentOne extends CardImpl {
public ExperimentOne(UUID ownerId, CardSetInfo setInfo) { public ExperimentOne(UUID ownerId, CardSetInfo setInfo) {
super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{G}"); super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{G}");
this.subtype.add(SubType.HUMAN); this.subtype.add(SubType.HUMAN);
this.subtype.add(SubType.OOZE); this.subtype.add(SubType.OOZE);
@ -32,7 +30,7 @@ public final class ExperimentOne extends CardImpl {
// Evolve (Whenever a creature enters the battlefield under your control, if that creature // Evolve (Whenever a creature enters the battlefield under your control, if that creature
// has greater power or toughness than this creature, put a +1/+1 counter on this creature.) // has greater power or toughness than this creature, put a +1/+1 counter on this creature.)
this.addAbility(new EvolveAbility()); this.addAbility(new EvolveAbility());
//Remove two +1/+1 counters from Experiment One: Regenerate Experiment One. //Remove two +1/+1 counters from Experiment One: Regenerate Experiment One.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new RemoveCountersSourceCost(CounterType.P1P1.createInstance(2)))); this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new RemoveCountersSourceCost(CounterType.P1P1.createInstance(2))));
} }

View file

@ -1,5 +1,3 @@
/*
package mage.cards.f; package mage.cards.f;
import java.util.UUID; import java.util.UUID;
@ -24,7 +22,7 @@ import mage.game.events.GameEvent.EventType;
public final class FathomMage extends CardImpl { public final class FathomMage extends CardImpl {
public FathomMage(UUID ownerId, CardSetInfo setInfo) { public FathomMage(UUID ownerId, CardSetInfo setInfo) {
super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{2}{G}{U}"); super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{2}{G}{U}");
this.subtype.add(SubType.HUMAN); this.subtype.add(SubType.HUMAN);
this.subtype.add(SubType.WIZARD); this.subtype.add(SubType.WIZARD);

View file

@ -1,5 +1,3 @@
/*
package mage.cards.f; package mage.cards.f;
import java.util.UUID; import java.util.UUID;
@ -10,8 +8,8 @@ import mage.abilities.keyword.BattalionAbility;
import mage.cards.CardImpl; import mage.cards.CardImpl;
import mage.cards.CardSetInfo; import mage.cards.CardSetInfo;
import mage.constants.CardType; import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.Duration; import mage.constants.Duration;
import mage.constants.SubType;
import mage.target.common.TargetCreaturePermanent; import mage.target.common.TargetCreaturePermanent;
/** /**
@ -21,11 +19,10 @@ import mage.target.common.TargetCreaturePermanent;
public final class FirefistStriker extends CardImpl { public final class FirefistStriker extends CardImpl {
public FirefistStriker(UUID ownerId, CardSetInfo setInfo) { public FirefistStriker(UUID ownerId, CardSetInfo setInfo) {
super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{1}{R}"); super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{1}{R}");
this.subtype.add(SubType.HUMAN); this.subtype.add(SubType.HUMAN);
this.subtype.add(SubType.SOLDIER); this.subtype.add(SubType.SOLDIER);
this.power = new MageInt(2); this.power = new MageInt(2);
this.toughness = new MageInt(1); this.toughness = new MageInt(1);

View file

@ -1,5 +1,3 @@
/*
package mage.cards.f; package mage.cards.f;
import java.util.UUID; import java.util.UUID;
@ -14,8 +12,8 @@ import mage.abilities.effects.common.continuous.BoostSourceEffect;
import mage.cards.CardImpl; import mage.cards.CardImpl;
import mage.cards.CardSetInfo; import mage.cards.CardSetInfo;
import mage.constants.CardType; import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.Duration; import mage.constants.Duration;
import mage.constants.SubType;
import mage.constants.Zone; import mage.constants.Zone;
import mage.filter.common.FilterControlledCreaturePermanent; import mage.filter.common.FilterControlledCreaturePermanent;
import mage.target.common.TargetAnyTarget; import mage.target.common.TargetAnyTarget;
@ -27,11 +25,10 @@ import mage.target.common.TargetAnyTarget;
public final class FoundryChampion extends CardImpl { public final class FoundryChampion extends CardImpl {
public FoundryChampion(UUID ownerId, CardSetInfo setInfo) { public FoundryChampion(UUID ownerId, CardSetInfo setInfo) {
super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{4}{R}{W}"); super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{4}{R}{W}");
this.subtype.add(SubType.ELEMENTAL); this.subtype.add(SubType.ELEMENTAL);
this.subtype.add(SubType.SOLDIER); this.subtype.add(SubType.SOLDIER);
this.power = new MageInt(4); this.power = new MageInt(4);
this.toughness = new MageInt(4); this.toughness = new MageInt(4);
@ -39,10 +36,10 @@ public final class FoundryChampion extends CardImpl {
Ability ability = new EntersBattlefieldTriggeredAbility(new DamageTargetEffect(new PermanentsOnBattlefieldCount(new FilterControlledCreaturePermanent()), "it")); Ability ability = new EntersBattlefieldTriggeredAbility(new DamageTargetEffect(new PermanentsOnBattlefieldCount(new FilterControlledCreaturePermanent()), "it"));
ability.addTarget(new TargetAnyTarget()); ability.addTarget(new TargetAnyTarget());
this.addAbility(ability); this.addAbility(ability);
//{R}: Foundry Champion gets +1/+0 until end of turn. //{R}: Foundry Champion gets +1/+0 until end of turn.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(1, 0, Duration.EndOfTurn), new ManaCostsImpl("{R}"))); this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(1, 0, Duration.EndOfTurn), new ManaCostsImpl("{R}")));
//{W}: Foundry Champion gets +0/+1 until end of turn. //{W}: Foundry Champion gets +0/+1 until end of turn.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(0, 1, Duration.EndOfTurn), new ManaCostsImpl("{W}"))); this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(0, 1, Duration.EndOfTurn), new ManaCostsImpl("{W}")));
} }
@ -56,4 +53,3 @@ public final class FoundryChampion extends CardImpl {
return new FoundryChampion(this); return new FoundryChampion(this);
} }
} }

View file

@ -1,18 +1,16 @@
/*
package mage.cards.g; package mage.cards.g;
import java.util.UUID; import java.util.UUID;
import mage.MageInt; import mage.MageInt;
import mage.Mana; import mage.Mana;
import mage.abilities.dynamicvalue.common.CountersSourceCount; import mage.abilities.dynamicvalue.common.CountersSourceCount;
import mage.abilities.keyword.EvolveAbility; import mage.abilities.keyword.EvolveAbility;
import mage.abilities.mana.DynamicManaAbility; import mage.abilities.mana.DynamicManaAbility;
import mage.cards.CardImpl; import mage.cards.CardImpl;
import mage.cards.CardSetInfo; import mage.cards.CardSetInfo;
import mage.constants.CardType; import mage.constants.CardType;
import mage.constants.SubType; import mage.constants.SubType;
import mage.counters.CounterType; import mage.counters.CounterType;
/** /**
* *
@ -21,7 +19,7 @@ import mage.constants.SubType;
public final class GyreSage extends CardImpl { public final class GyreSage extends CardImpl {
public GyreSage(UUID ownerId, CardSetInfo setInfo) { public GyreSage(UUID ownerId, CardSetInfo setInfo) {
super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{1}{G}"); super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{1}{G}");
this.subtype.add(SubType.ELF); this.subtype.add(SubType.ELF);
this.subtype.add(SubType.DRUID); this.subtype.add(SubType.DRUID);
@ -31,7 +29,7 @@ public final class GyreSage extends CardImpl {
// Evolve (Whenever a creature enters the battlefield under your control, if that creature // Evolve (Whenever a creature enters the battlefield under your control, if that creature
// has greater power or toughness than this creature, put a +1/+1 counter on this creature.) // has greater power or toughness than this creature, put a +1/+1 counter on this creature.)
this.addAbility(new EvolveAbility()); this.addAbility(new EvolveAbility());
//{T} : Add {G} for each +1/+1 counter on Gyre Sage. //{T} : Add {G} for each +1/+1 counter on Gyre Sage.
this.addAbility(new DynamicManaAbility(Mana.GreenMana(1), new CountersSourceCount(CounterType.P1P1))); this.addAbility(new DynamicManaAbility(Mana.GreenMana(1), new CountersSourceCount(CounterType.P1P1)));
} }

View file

@ -1,5 +1,3 @@
/*
package mage.cards.h; package mage.cards.h;
import java.util.UUID; import java.util.UUID;
@ -14,8 +12,8 @@ import mage.abilities.keyword.HasteAbility;
import mage.cards.CardImpl; import mage.cards.CardImpl;
import mage.cards.CardSetInfo; import mage.cards.CardSetInfo;
import mage.constants.CardType; import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.Duration; import mage.constants.Duration;
import mage.constants.SubType;
import mage.constants.Zone; import mage.constants.Zone;
import mage.filter.StaticFilters; import mage.filter.StaticFilters;
import mage.filter.common.FilterControlledCreaturePermanent; import mage.filter.common.FilterControlledCreaturePermanent;
@ -29,11 +27,10 @@ import mage.game.permanent.Permanent;
public final class HellraiserGoblin extends CardImpl { public final class HellraiserGoblin extends CardImpl {
public HellraiserGoblin(UUID ownerId, CardSetInfo setInfo) { public HellraiserGoblin(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.GOBLIN);
this.subtype.add(SubType.BERSERKER); this.subtype.add(SubType.BERSERKER);
this.power = new MageInt(2); this.power = new MageInt(2);
this.toughness = new MageInt(2); this.toughness = new MageInt(2);
@ -68,7 +65,6 @@ class AttacksIfAbleAllEffect extends RequirementEffect {
this.filter = filter; this.filter = filter;
} }
public AttacksIfAbleAllEffect(final AttacksIfAbleAllEffect effect) { public AttacksIfAbleAllEffect(final AttacksIfAbleAllEffect effect) {
super(effect); super(effect);
this.filter = effect.filter; this.filter = effect.filter;
@ -102,4 +98,4 @@ class AttacksIfAbleAllEffect extends RequirementEffect {
return filter.getMessage() + " attack each combat if able"; return filter.getMessage() + " attack each combat if able";
} }
} }

View file

@ -1,5 +1,3 @@
/*
package mage.cards.h; package mage.cards.h;
import java.util.UUID; import java.util.UUID;
@ -23,11 +21,10 @@ import mage.target.common.TargetNonlandPermanent;
public final class HighPriestOfPenance extends CardImpl { public final class HighPriestOfPenance extends CardImpl {
public HighPriestOfPenance(UUID ownerId, CardSetInfo setInfo) { public HighPriestOfPenance(UUID ownerId, CardSetInfo setInfo) {
super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{W}{B}"); super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{W}{B}");
this.subtype.add(SubType.HUMAN); this.subtype.add(SubType.HUMAN);
this.subtype.add(SubType.CLERIC); this.subtype.add(SubType.CLERIC);
this.power = new MageInt(1); this.power = new MageInt(1);
this.toughness = new MageInt(1); this.toughness = new MageInt(1);
@ -47,7 +44,6 @@ public final class HighPriestOfPenance extends CardImpl {
class HighPriestOfPenanceTriggeredAbility extends TriggeredAbilityImpl { class HighPriestOfPenanceTriggeredAbility extends TriggeredAbilityImpl {
public HighPriestOfPenanceTriggeredAbility() { public HighPriestOfPenanceTriggeredAbility() {
super(Zone.BATTLEFIELD, new DestroyTargetEffect(), true); super(Zone.BATTLEFIELD, new DestroyTargetEffect(), true);
this.addTarget(new TargetNonlandPermanent()); this.addTarget(new TargetNonlandPermanent());

View file

@ -1,5 +1,3 @@
/*
package mage.cards.l; package mage.cards.l;
import java.util.UUID; import java.util.UUID;
@ -15,8 +13,8 @@ import mage.abilities.keyword.TrampleAbility;
import mage.cards.CardImpl; import mage.cards.CardImpl;
import mage.cards.CardSetInfo; import mage.cards.CardSetInfo;
import mage.constants.CardType; import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.Duration; import mage.constants.Duration;
import mage.constants.SubType;
import mage.filter.common.FilterControlledCreaturePermanent; import mage.filter.common.FilterControlledCreaturePermanent;
import mage.game.Game; import mage.game.Game;
import mage.game.permanent.Permanent; import mage.game.permanent.Permanent;
@ -29,17 +27,16 @@ import mage.game.permanent.PermanentToken;
public final class LegionLoyalist extends CardImpl { public final class LegionLoyalist extends CardImpl {
public LegionLoyalist(UUID ownerId, CardSetInfo setInfo) { public LegionLoyalist(UUID ownerId, CardSetInfo setInfo) {
super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{R}"); super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{R}");
this.subtype.add(SubType.GOBLIN); this.subtype.add(SubType.GOBLIN);
this.subtype.add(SubType.SOLDIER); this.subtype.add(SubType.SOLDIER);
this.power = new MageInt(1); this.power = new MageInt(1);
this.toughness = new MageInt(1); this.toughness = new MageInt(1);
//Haste //Haste
this.addAbility(HasteAbility.getInstance()); this.addAbility(HasteAbility.getInstance());
//Battalion - Whenever Legion Loyalist and at least two other creatures attack, //Battalion - Whenever Legion Loyalist and at least two other creatures attack,
//creatures you control gain first strike and trample until end of turn and can't be blocked by tokens this turn. //creatures you control gain first strike and trample until end of turn and can't be blocked by tokens this turn.
Ability ability = new BattalionAbility(new GainAbilityAllEffect(FirstStrikeAbility.getInstance(), Duration.EndOfTurn, new FilterControlledCreaturePermanent())); Ability ability = new BattalionAbility(new GainAbilityAllEffect(FirstStrikeAbility.getInstance(), Duration.EndOfTurn, new FilterControlledCreaturePermanent()));
ability.addEffect(new GainAbilityAllEffect(TrampleAbility.getInstance(), Duration.EndOfTurn, new FilterControlledCreaturePermanent())); ability.addEffect(new GainAbilityAllEffect(TrampleAbility.getInstance(), Duration.EndOfTurn, new FilterControlledCreaturePermanent()));
@ -67,11 +64,11 @@ class CantBeBlockedByTokenEffect extends RestrictionEffect {
public CantBeBlockedByTokenEffect(final CantBeBlockedByTokenEffect effect) { public CantBeBlockedByTokenEffect(final CantBeBlockedByTokenEffect effect) {
super(effect); super(effect);
} }
@Override @Override
public void init(Ability source, Game game) { public void init(Ability source, Game game) {
affectedObjectsSet = true; affectedObjectsSet = true;
for (Permanent perm: game.getBattlefield().getActivePermanents(new FilterControlledCreaturePermanent(), source.getControllerId(), source.getSourceId(), game)) { for (Permanent perm : game.getBattlefield().getActivePermanents(new FilterControlledCreaturePermanent(), source.getControllerId(), source.getSourceId(), game)) {
affectedObjectList.add(new MageObjectReference(perm, game)); affectedObjectList.add(new MageObjectReference(perm, game));
} }
} }
@ -97,4 +94,3 @@ class CantBeBlockedByTokenEffect extends RestrictionEffect {
return new CantBeBlockedByTokenEffect(this); return new CantBeBlockedByTokenEffect(this);
} }
} }

View file

@ -1,5 +1,3 @@
/*
package mage.cards.l; package mage.cards.l;
import java.util.UUID; import java.util.UUID;
@ -23,10 +21,9 @@ import mage.game.events.GameEvent.EventType;
public final class LeylinePhantom extends CardImpl { public final class LeylinePhantom extends CardImpl {
public LeylinePhantom(UUID ownerId, CardSetInfo setInfo) { public LeylinePhantom(UUID ownerId, CardSetInfo setInfo) {
super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{4}{U}"); super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{4}{U}");
this.subtype.add(SubType.ILLUSION); this.subtype.add(SubType.ILLUSION);
this.power = new MageInt(5); this.power = new MageInt(5);
this.toughness = new MageInt(5); this.toughness = new MageInt(5);
@ -44,7 +41,6 @@ public final class LeylinePhantom extends CardImpl {
} }
} }
class LeylinePhantomTriggeredAbility extends TriggeredAbilityImpl { class LeylinePhantomTriggeredAbility extends TriggeredAbilityImpl {
public LeylinePhantomTriggeredAbility() { public LeylinePhantomTriggeredAbility() {

View file

@ -1,5 +1,3 @@
/*
package mage.cards.l; package mage.cards.l;
import java.util.UUID; import java.util.UUID;
@ -14,8 +12,8 @@ import mage.cards.CardSetInfo;
import mage.cards.Cards; import mage.cards.Cards;
import mage.cards.CardsImpl; import mage.cards.CardsImpl;
import mage.constants.CardType; import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.Outcome; import mage.constants.Outcome;
import mage.constants.SubType;
import mage.constants.Zone; import mage.constants.Zone;
import mage.filter.common.FilterCreatureCard; import mage.filter.common.FilterCreatureCard;
import mage.game.Game; import mage.game.Game;
@ -29,7 +27,7 @@ import mage.target.TargetCard;
public final class LordOfTheVoid extends CardImpl { public final class LordOfTheVoid extends CardImpl {
public LordOfTheVoid(UUID ownerId, CardSetInfo setInfo) { public LordOfTheVoid(UUID ownerId, CardSetInfo setInfo) {
super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{4}{B}{B}{B}"); super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{4}{B}{B}{B}");
this.subtype.add(SubType.DEMON); this.subtype.add(SubType.DEMON);
this.power = new MageInt(7); this.power = new MageInt(7);

View file

@ -1,5 +1,3 @@
/*
package mage.cards.o; package mage.cards.o;
import java.util.UUID; import java.util.UUID;

View file

@ -1,5 +1,3 @@
/*
package mage.cards.p; package mage.cards.p;
import java.util.UUID; import java.util.UUID;

View file

@ -1,5 +1,3 @@
/*
package mage.cards.s; package mage.cards.s;
import java.util.UUID; import java.util.UUID;
@ -11,8 +9,8 @@ import mage.abilities.effects.common.continuous.BoostControlledEffect;
import mage.cards.CardImpl; import mage.cards.CardImpl;
import mage.cards.CardSetInfo; import mage.cards.CardSetInfo;
import mage.constants.CardType; import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.Duration; import mage.constants.Duration;
import mage.constants.SubType;
import mage.constants.Zone; import mage.constants.Zone;
import mage.game.permanent.token.SoldierTokenWithHaste; import mage.game.permanent.token.SoldierTokenWithHaste;
@ -23,7 +21,7 @@ import mage.game.permanent.token.SoldierTokenWithHaste;
public final class SunhomeGuildmage extends CardImpl { public final class SunhomeGuildmage extends CardImpl {
public SunhomeGuildmage(UUID ownerId, CardSetInfo setInfo) { public SunhomeGuildmage(UUID ownerId, CardSetInfo setInfo) {
super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{R}{W}"); super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{R}{W}");
this.subtype.add(SubType.HUMAN); this.subtype.add(SubType.HUMAN);
this.subtype.add(SubType.WIZARD); this.subtype.add(SubType.WIZARD);

View file

@ -1,5 +1,3 @@
/*
package mage.cards.t; package mage.cards.t;
import java.util.UUID; import java.util.UUID;
@ -13,8 +11,8 @@ import mage.abilities.keyword.VigilanceAbility;
import mage.cards.CardImpl; import mage.cards.CardImpl;
import mage.cards.CardSetInfo; import mage.cards.CardSetInfo;
import mage.constants.CardType; import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.Duration; import mage.constants.Duration;
import mage.constants.SubType;
import mage.constants.Zone; import mage.constants.Zone;
/** /**
@ -24,12 +22,11 @@ import mage.constants.Zone;
public final class TruefirePaladin extends CardImpl { public final class TruefirePaladin extends CardImpl {
public TruefirePaladin(UUID ownerId, CardSetInfo setInfo) { public TruefirePaladin(UUID ownerId, CardSetInfo setInfo) {
super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{R}{W}"); super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{R}{W}");
this.subtype.add(SubType.HUMAN); this.subtype.add(SubType.HUMAN);
this.subtype.add(SubType.KNIGHT); this.subtype.add(SubType.KNIGHT);
this.power = new MageInt(2); this.power = new MageInt(2);
this.toughness = new MageInt(2); this.toughness = new MageInt(2);
@ -37,7 +34,7 @@ public final class TruefirePaladin extends CardImpl {
this.addAbility(VigilanceAbility.getInstance()); this.addAbility(VigilanceAbility.getInstance());
// {R}{W}: Truefire Paladin gets +2/+0 until end of turn. // {R}{W}: Truefire Paladin gets +2/+0 until end of turn.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(2,0, Duration.EndOfTurn), new ManaCostsImpl("{R}{W}"))); this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(2, 0, Duration.EndOfTurn), new ManaCostsImpl("{R}{W}")));
// {R}{W}: Truefire Paladin gets first strike until end of turn. // {R}{W}: Truefire Paladin gets first strike until end of turn.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilitySourceEffect(FirstStrikeAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl("{R}{W}"))); this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilitySourceEffect(FirstStrikeAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl("{R}{W}")));

View file

@ -1,5 +1,3 @@
/*
package mage.cards.u; package mage.cards.u;
import java.util.UUID; import java.util.UUID;

View file

@ -1,5 +1,3 @@
/*
package mage.cards.u; package mage.cards.u;
import java.util.UUID; import java.util.UUID;
@ -17,11 +15,11 @@ import mage.constants.Duration;
public final class UrbanEvolution extends CardImpl { public final class UrbanEvolution extends CardImpl {
public UrbanEvolution(UUID ownerId, CardSetInfo setInfo) { public UrbanEvolution(UUID ownerId, CardSetInfo setInfo) {
super(ownerId,setInfo,new CardType[]{CardType.SORCERY},"{3}{G}{U}"); super(ownerId, setInfo, new CardType[]{CardType.SORCERY}, "{3}{G}{U}");
//Draw three cards. //Draw three cards.
this.getSpellAbility().addEffect(new DrawCardSourceControllerEffect(3)); this.getSpellAbility().addEffect(new DrawCardSourceControllerEffect(3));
//You may play an additional land this turn. //You may play an additional land this turn.
this.getSpellAbility().addEffect(new PlayAdditionalLandsControllerEffect(1, Duration.EndOfTurn)); this.getSpellAbility().addEffect(new PlayAdditionalLandsControllerEffect(1, Duration.EndOfTurn));
} }
@ -34,4 +32,4 @@ public final class UrbanEvolution extends CardImpl {
public UrbanEvolution copy() { public UrbanEvolution copy() {
return new UrbanEvolution(this); return new UrbanEvolution(this);
} }
} }

View file

@ -1,5 +1,3 @@
/*
package mage.cards.v; package mage.cards.v;
import java.util.UUID; import java.util.UUID;
@ -15,9 +13,9 @@ import mage.abilities.keyword.LifelinkAbility;
import mage.cards.CardImpl; import mage.cards.CardImpl;
import mage.cards.CardSetInfo; import mage.cards.CardSetInfo;
import mage.constants.CardType; import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.Duration; import mage.constants.Duration;
import mage.constants.Outcome; import mage.constants.Outcome;
import mage.constants.SubType;
import mage.constants.Zone; import mage.constants.Zone;
import mage.game.Game; import mage.game.Game;
import mage.game.events.GameEvent; import mage.game.events.GameEvent;
@ -26,32 +24,32 @@ import mage.players.Player;
import mage.target.common.TargetCreaturePermanent; import mage.target.common.TargetCreaturePermanent;
/** /**
* Gatecrash FAQ (01.2013) * Gatecrash FAQ (01.2013) Multiple instances of lifelink are redundant. Giving
* Multiple instances of lifelink are redundant. Giving the same creature lifelink * the same creature lifelink more than once won't cause you to gain additional
* more than once won't cause you to gain additional life. * life.
* *
* Each time the second ability resolves, a delayed triggered ability is created. * Each time the second ability resolves, a delayed triggered ability is
* Whenever you gain life that turn, each of those abilities will trigger. For * created. Whenever you gain life that turn, each of those abilities will
* example, if you activate the second ability twice (and let those abilities resolve) * trigger. For example, if you activate the second ability twice (and let those
* and then you gain 2 life, each opponent will lose a total of 4 life. Each instance * abilities resolve) and then you gain 2 life, each opponent will lose a total
* will cause two abilities to trigger, each causing that player to lose 2 life. * of 4 life. Each instance will cause two abilities to trigger, each causing
* that player to lose 2 life.
* *
* @author LevelX2 * @author LevelX2
*/ */
public final class VizkopaGuildmage extends CardImpl { public final class VizkopaGuildmage extends CardImpl {
public VizkopaGuildmage(UUID ownerId, CardSetInfo setInfo) { public VizkopaGuildmage(UUID ownerId, CardSetInfo setInfo) {
super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{W}{B}"); super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{W}{B}");
this.subtype.add(SubType.HUMAN); this.subtype.add(SubType.HUMAN);
this.subtype.add(SubType.WIZARD); this.subtype.add(SubType.WIZARD);
this.power = new MageInt(2); this.power = new MageInt(2);
this.toughness = new MageInt(2); this.toughness = new MageInt(2);
// 1{W}{B}: Target creature gains lifelink until end of turn. // 1{W}{B}: Target creature gains lifelink until end of turn.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilityTargetEffect(LifelinkAbility.getInstance(), Duration.EndOfTurn),new ManaCostsImpl("{1}{W}{B}")); Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilityTargetEffect(LifelinkAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl("{1}{W}{B}"));
ability.addTarget(new TargetCreaturePermanent()); ability.addTarget(new TargetCreaturePermanent());
this.addAbility(ability); this.addAbility(ability);
@ -124,8 +122,8 @@ class OpponentsLoseLifeEffect extends OneShotEffect {
@Override @Override
public boolean apply(Game game, Ability source) { public boolean apply(Game game, Ability source) {
Integer amountLifeGained = (Integer) this.getValue("amountLifeGained"); Integer amountLifeGained = (Integer) this.getValue("amountLifeGained");
if (amountLifeGained != null ) { if (amountLifeGained != null) {
for (UUID opponentId: game.getOpponents(source.getControllerId())) { for (UUID opponentId : game.getOpponents(source.getControllerId())) {
Player opponent = game.getPlayer(opponentId); Player opponent = game.getPlayer(opponentId);
if (opponent != null) { if (opponent != null) {
opponent.loseLife(amountLifeGained, game, false); opponent.loseLife(amountLifeGained, game, false);

View file

@ -1,5 +1,3 @@
/*
package org.mage.test.cards.abilities.enters; package org.mage.test.cards.abilities.enters;
import mage.constants.PhaseStep; import mage.constants.PhaseStep;
@ -17,8 +15,7 @@ public class ValakutTheMoltenPinnacleTest extends CardTestPlayerBase {
* Valakut, the Molten Pinnacle Land Valakut, the Molten Pinnacle enters the * Valakut, the Molten Pinnacle Land Valakut, the Molten Pinnacle enters the
* battlefield tapped. Whenever a Mountain enters the battlefield under your * battlefield tapped. Whenever a Mountain enters the battlefield under your
* control, if you control at least five other Mountains, you may have * control, if you control at least five other Mountains, you may have
* Valakut, the Molten Pinnacle deal 3 damage to any target. * Valakut, the Molten Pinnacle deal 3 damage to any target. {T}: Add {R}.
* {T}: Add {R}.
*/ */
@Test @Test
public void onlyFourMountainsNoDamage() { public void onlyFourMountainsNoDamage() {

View file

@ -1,19 +1,20 @@
/*
package mage.abilities.costs; package mage.abilities.costs;
import mage.abilities.Ability; import mage.abilities.Ability;
import mage.game.Game; import mage.game.Game;
/** /**
* Interface for abilities that adjust source and only source costs. * Interface for abilities that adjust source and only source costs. For the
* For the cases when some permanent adjusts costs of other spells use {@link mage.abilities.effects.CostModificationEffect}. * cases when some permanent adjusts costs of other spells use
* {@link mage.abilities.effects.CostModificationEffect}.
* *
* Example of such source costs adjusting: {@link mage.abilities.keyword.AffinityForArtifactsAbility} * Example of such source costs adjusting:
* {@link mage.abilities.keyword.AffinityForArtifactsAbility}
* *
* @author nantuko * @author nantuko
*/ */
@FunctionalInterface @FunctionalInterface
public interface AdjustingSourceCosts { public interface AdjustingSourceCosts {
void adjustCosts(Ability ability, Game game); void adjustCosts(Ability ability, Game game);
} }