Merge pull request #1346 from nigelzor/misc-fixes

Misc fixes
This commit is contained in:
LevelX2 2015-10-29 09:19:23 +01:00
commit c71e89c441
20 changed files with 24 additions and 121 deletions

View file

@ -49,8 +49,6 @@ import mage.client.constants.Constants;
import mage.client.dialog.PreferencesDialog; import mage.client.dialog.PreferencesDialog;
import mage.client.util.sets.ConstructedFormats; import mage.client.util.sets.ConstructedFormats;
import mage.remote.Connection; import mage.remote.Connection;
import static mage.remote.Connection.ProxyType.HTTP;
import static mage.remote.Connection.ProxyType.SOCKS;
import net.java.truevfs.access.TFile; import net.java.truevfs.access.TFile;
import net.java.truevfs.access.TFileOutputStream; import net.java.truevfs.access.TFileOutputStream;
import net.java.truevfs.access.TVFS; import net.java.truevfs.access.TVFS;
@ -221,7 +219,7 @@ public class DownloadPictures extends DefaultBoundedRangeModel implements Runnab
// JOptionPane // JOptionPane
Object[] options = { startDownloadButton, closeButton = new JButton("Cancel") }; Object[] options = { startDownloadButton, closeButton = new JButton("Cancel") };
dlg = new JOptionPane(p0, JOptionPane.DEFAULT_OPTION, JOptionPane.PLAIN_MESSAGE, null, options, options[1]); dlg = new JOptionPane(p0, JOptionPane.PLAIN_MESSAGE, JOptionPane.DEFAULT_OPTION, null, options, options[1]);
} }
public static boolean checkForNewCards(List<CardInfo> allCards) { public static boolean checkForNewCards(List<CardInfo> allCards) {

View file

@ -74,51 +74,3 @@ public class PillarOfFlame extends CardImpl {
return new PillarOfFlame(this); return new PillarOfFlame(this);
} }
} }
class PillarOfFlameEffect extends ReplacementEffectImpl {
public PillarOfFlameEffect() {
super(Duration.EndOfTurn, Outcome.Exile);
staticText = "If a creature dealt damage this way would die this turn, exile it instead";
}
public PillarOfFlameEffect(final PillarOfFlameEffect effect) {
super(effect);
}
@Override
public PillarOfFlameEffect copy() {
return new PillarOfFlameEffect(this);
}
@Override
public boolean apply(Game game, Ability source) {
return true;
}
@Override
public boolean replaceEvent(GameEvent event, Ability source, Game game) {
Player controller = game.getPlayer(source.getControllerId());
Permanent permanent = ((ZoneChangeEvent) event).getTarget();
if (controller != null && permanent != null) {
return controller.moveCards(permanent, Zone.BATTLEFIELD, Zone.EXILED, source, game);
}
return false;
}
@Override
public boolean checksEventType(GameEvent event, Game game) {
return event.getType() == EventType.ZONE_CHANGE;
}
@Override
public boolean applies(GameEvent event, Ability source, Game game) {
if (((ZoneChangeEvent) event).isDiesEvent()) {
DamagedByWatcher watcher = (DamagedByWatcher) game.getState().getWatchers().get("DamagedByWatcher", source.getSourceId());
if (watcher != null) {
return watcher.wasDamaged(event.getTargetId(), game);
}
}
return false;
}
}

View file

@ -39,8 +39,6 @@ import mage.abilities.effects.OneShotEffect;
import mage.abilities.effects.common.PreventDamageToTargetEffect; import mage.abilities.effects.common.PreventDamageToTargetEffect;
import mage.cards.CardImpl; import mage.cards.CardImpl;
import mage.filter.common.FilterCreaturePermanent; import mage.filter.common.FilterCreaturePermanent;
import mage.filter.predicate.mageobject.SubtypePredicate;
import mage.filter.predicate.permanent.ControllerPredicate;
import mage.game.Game; import mage.game.Game;
import mage.game.permanent.Permanent; import mage.game.permanent.Permanent;
import mage.players.Player; import mage.players.Player;
@ -52,12 +50,6 @@ import mage.target.targetpointer.FixedTarget;
*/ */
public class KitsunePalliator extends CardImpl { public class KitsunePalliator extends CardImpl {
private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("Samurai you control");
static {
filter.add(new ControllerPredicate(TargetController.YOU));
filter.add(new SubtypePredicate("Samurai"));
}
public KitsunePalliator(UUID ownerId) { public KitsunePalliator(UUID ownerId) {
super(ownerId, 14, "Kitsune Palliator", Rarity.UNCOMMON, new CardType[]{CardType.CREATURE}, "{2}{W}"); super(ownerId, 14, "Kitsune Palliator", Rarity.UNCOMMON, new CardType[]{CardType.CREATURE}, "{2}{W}");
this.expansionSetCode = "BOK"; this.expansionSetCode = "BOK";

View file

@ -77,45 +77,3 @@ public class YamabushisStorm extends CardImpl {
} }
} }
class YamabushisStormEffect extends ReplacementEffectImpl {
public YamabushisStormEffect() {
super(Duration.EndOfTurn, Outcome.Exile);
staticText = "If a creature dealt damage this way would die this turn, exile it instead";
}
public YamabushisStormEffect(final YamabushisStormEffect effect) {
super(effect);
}
@Override
public YamabushisStormEffect copy() {
return new YamabushisStormEffect(this);
}
@Override
public boolean replaceEvent(GameEvent event, Ability source, Game game) {
Player controller = game.getPlayer(source.getControllerId());
Permanent permanent = ((ZoneChangeEvent) event).getTarget();
if (controller != null && permanent != null) {
return controller.moveCardToExileWithInfo(permanent, null, "", source.getSourceId(), game, Zone.BATTLEFIELD, true);
}
return false;
}
@Override
public boolean checksEventType(GameEvent event, Game game) {
return event.getType() == EventType.ZONE_CHANGE;
}
@Override
public boolean applies(GameEvent event, Ability source, Game game) {
if (((ZoneChangeEvent) event).isDiesEvent()) {
DamagedByWatcher watcher = (DamagedByWatcher) game.getState().getWatchers().get("DamagedByWatcher", source.getSourceId());
return watcher != null && watcher.wasDamaged(event.getTargetId(), game);
}
return false;
}
}

View file

@ -70,7 +70,7 @@ public class LeafdrakeRoost extends CardImpl {
this.addAbility(ability); this.addAbility(ability);
// Enchanted land has "{G}{U}, {tap}: Put a 2/2 green and blue Drake creature token with flying onto the battlefield." // Enchanted land has "{G}{U}, {tap}: Put a 2/2 green and blue Drake creature token with flying onto the battlefield."
Ability abilityToGain = new SimpleActivatedAbility(Zone.BATTLEFIELD, new CreateTokenEffect(new LeafdrakeRoostDragonToken()), new ManaCostsImpl("{G}{U}")); Ability abilityToGain = new SimpleActivatedAbility(Zone.BATTLEFIELD, new CreateTokenEffect(new LeafdrakeRoostDrakeToken()), new ManaCostsImpl("{G}{U}"));
abilityToGain.addCost(new TapSourceCost()); abilityToGain.addCost(new TapSourceCost());
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityAttachedEffect(abilityToGain, AttachmentType.AURA, Duration.WhileOnBattlefield, this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityAttachedEffect(abilityToGain, AttachmentType.AURA, Duration.WhileOnBattlefield,
"Enchanted land has \"{G}{U}, {t}: Put a 2/2 green and blue Drake creature token with flying onto the battlefield.\""))); "Enchanted land has \"{G}{U}, {t}: Put a 2/2 green and blue Drake creature token with flying onto the battlefield.\"")));
@ -87,14 +87,14 @@ public class LeafdrakeRoost extends CardImpl {
} }
} }
class LeafdrakeRoostDragonToken extends Token { class LeafdrakeRoostDrakeToken extends Token {
public LeafdrakeRoostDragonToken() { public LeafdrakeRoostDrakeToken() {
super("Dragon", "2/2 green and blue Drake creature token with flying"); super("Drake", "2/2 green and blue Drake creature token with flying");
cardType.add(CardType.CREATURE); cardType.add(CardType.CREATURE);
color.setGreen(true); color.setGreen(true);
color.setBlue(true); color.setBlue(true);
subtype.add("Dragon"); subtype.add("Drake");
power = new MageInt(2); power = new MageInt(2);
toughness = new MageInt(2); toughness = new MageInt(2);
this.addAbility(FlyingAbility.getInstance()); this.addAbility(FlyingAbility.getInstance());

View file

@ -46,7 +46,7 @@ import mage.constants.Rarity;
public class KnotvineMystic extends CardImpl{ public class KnotvineMystic extends CardImpl{
public KnotvineMystic(UUID ownerId) { public KnotvineMystic(UUID ownerId) {
super(ownerId, 114, "Knotvine Mystic", Rarity.UNCOMMON, new CardType[]{CardType.CREATURE}, "{W}{R}{G}"); super(ownerId, 114, "Knotvine Mystic", Rarity.UNCOMMON, new CardType[]{CardType.CREATURE}, "{R}{G}{W}");
this.expansionSetCode = "CON"; this.expansionSetCode = "CON";

View file

@ -25,7 +25,7 @@
* authors and should not be interpreted as representing official policies, either expressed * authors and should not be interpreted as representing official policies, either expressed
* or implied, of BetaSteward_at_googlemail.com. * or implied, of BetaSteward_at_googlemail.com.
*/ */
package mage.sets.timeshifted; package mage.sets.fallenempires;
import java.util.UUID; import java.util.UUID;
import mage.constants.Rarity; import mage.constants.Rarity;

View file

@ -25,7 +25,7 @@
* authors and should not be interpreted as representing official policies, either expressed * authors and should not be interpreted as representing official policies, either expressed
* or implied, of BetaSteward_at_googlemail.com. * or implied, of BetaSteward_at_googlemail.com.
*/ */
package mage.sets.masterseditionii; package mage.sets.fallenempires;
import java.util.UUID; import java.util.UUID;
import mage.constants.Rarity; import mage.constants.Rarity;

View file

@ -25,7 +25,7 @@
* authors and should not be interpreted as representing official policies, either expressed * authors and should not be interpreted as representing official policies, either expressed
* or implied, of BetaSteward_at_googlemail.com. * or implied, of BetaSteward_at_googlemail.com.
*/ */
package mage.sets.masterseditionii; package mage.sets.fallenempires;
import java.util.UUID; import java.util.UUID;
import mage.constants.Rarity; import mage.constants.Rarity;

View file

@ -31,7 +31,9 @@ import java.util.UUID;
import mage.abilities.Ability; import mage.abilities.Ability;
import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.common.EntersBattlefieldTriggeredAbility;
import mage.abilities.common.SimpleStaticAbility; import mage.abilities.common.SimpleStaticAbility;
import mage.abilities.common.delayed.AtTheBeginOfNextUpkeepDelayedTriggeredAbility;
import mage.abilities.effects.common.AttachEffect; import mage.abilities.effects.common.AttachEffect;
import mage.abilities.effects.common.CreateDelayedTriggeredAbilityEffect;
import mage.abilities.effects.common.DrawCardSourceControllerEffect; import mage.abilities.effects.common.DrawCardSourceControllerEffect;
import mage.abilities.effects.common.continuous.BoostEnchantedEffect; import mage.abilities.effects.common.continuous.BoostEnchantedEffect;
import mage.abilities.keyword.EnchantAbility; import mage.abilities.keyword.EnchantAbility;
@ -63,7 +65,8 @@ public class KrovikanFetish extends CardImpl {
this.addAbility(ability); this.addAbility(ability);
// When Krovikan Fetish enters the battlefield, draw a card at the beginning of the next turn's upkeep. // When Krovikan Fetish enters the battlefield, draw a card at the beginning of the next turn's upkeep.
this.addAbility(new EntersBattlefieldTriggeredAbility(new DrawCardSourceControllerEffect(1), false)); this.addAbility(new EntersBattlefieldTriggeredAbility(new CreateDelayedTriggeredAbilityEffect(
new AtTheBeginOfNextUpkeepDelayedTriggeredAbility(new DrawCardSourceControllerEffect(1), Duration.OneUse)), false));
// Enchanted creature gets +1/+1. // Enchanted creature gets +1/+1.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEnchantedEffect(1, 1, Duration.WhileOnBattlefield))); this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEnchantedEffect(1, 1, Duration.WhileOnBattlefield)));

View file

@ -44,7 +44,7 @@ import mage.constants.Duration;
public class UrbanEvolution extends CardImpl { public class UrbanEvolution extends CardImpl {
public UrbanEvolution(UUID ownerId) { public UrbanEvolution(UUID ownerId) {
super(ownerId, 204, "Urban Evolution", Rarity.UNCOMMON, new CardType[]{CardType.SORCERY}, "{3}{U}{G}"); super(ownerId, 204, "Urban Evolution", Rarity.UNCOMMON, new CardType[]{CardType.SORCERY}, "{3}{G}{U}");
this.expansionSetCode = "GTC"; this.expansionSetCode = "GTC";
//Draw three cards. //Draw three cards.

View file

@ -48,7 +48,7 @@ import mage.target.common.TargetCreaturePermanent;
public class Duneblast extends CardImpl { public class Duneblast extends CardImpl {
public Duneblast(UUID ownerId) { public Duneblast(UUID ownerId) {
super(ownerId, 174, "Duneblast", Rarity.RARE, new CardType[]{CardType.SORCERY}, "{4}{W}{G}{B}"); super(ownerId, 174, "Duneblast", Rarity.RARE, new CardType[]{CardType.SORCERY}, "{4}{W}{B}{G}");
this.expansionSetCode = "KTK"; this.expansionSetCode = "KTK";

View file

@ -46,7 +46,7 @@ import mage.filter.FilterCard;
public class SultaiAscendancy extends CardImpl { public class SultaiAscendancy extends CardImpl {
public SultaiAscendancy(UUID ownerId) { public SultaiAscendancy(UUID ownerId) {
super(ownerId, 203, "Sultai Ascendancy", Rarity.RARE, new CardType[]{CardType.ENCHANTMENT}, "{G}{B}{U}"); super(ownerId, 203, "Sultai Ascendancy", Rarity.RARE, new CardType[]{CardType.ENCHANTMENT}, "{B}{G}{U}");
this.expansionSetCode = "KTK"; this.expansionSetCode = "KTK";

View file

@ -56,7 +56,7 @@ public class GempalmPolluter extends CardImpl {
} }
public GempalmPolluter(UUID ownerId) { public GempalmPolluter(UUID ownerId) {
super(ownerId, 70, "Gempalm Avenger", Rarity.COMMON, new CardType[]{CardType.CREATURE}, "{5}{B}"); super(ownerId, 70, "Gempalm Polluter", Rarity.COMMON, new CardType[]{CardType.CREATURE}, "{5}{B}");
this.expansionSetCode = "LGN"; this.expansionSetCode = "LGN";
this.subtype.add("Zombie"); this.subtype.add("Zombie");
this.power = new MageInt(4); this.power = new MageInt(4);

View file

@ -52,7 +52,7 @@ public class BrighthearthBanneret extends CardImpl {
static { static {
filter.add(Predicates.or( filter.add(Predicates.or(
new SubtypePredicate("Elemental"), new SubtypePredicate("Elemental"),
new SubtypePredicate("Shaman"))); new SubtypePredicate("Warrior")));
} }
public BrighthearthBanneret(UUID ownerId) { public BrighthearthBanneret(UUID ownerId) {

View file

@ -65,7 +65,7 @@ public class QuestingPhelddagrif extends CardImpl {
} }
public QuestingPhelddagrif(UUID ownerId) { public QuestingPhelddagrif(UUID ownerId) {
super(ownerId, 13, "Questing Phelddagrif", Rarity.SPECIAL, new CardType[]{CardType.CREATURE}, "{1}{W}{U}{G}"); super(ownerId, 13, "Questing Phelddagrif", Rarity.SPECIAL, new CardType[]{CardType.CREATURE}, "{1}{G}{W}{U}");
this.expansionSetCode = "PTC"; this.expansionSetCode = "PTC";
this.subtype.add("Phelddagrif"); this.subtype.add("Phelddagrif");
this.power = new MageInt(4); this.power = new MageInt(4);

View file

@ -80,7 +80,7 @@ class TreefolkToken extends Token {
super("Treefolk", "5/6 green Treefolk creature"); super("Treefolk", "5/6 green Treefolk creature");
cardType.add(CardType.CREATURE); cardType.add(CardType.CREATURE);
this.color.setGreen(true); this.color.setGreen(true);
subtype.add("Spirit"); subtype.add("Treefolk");
power = new MageInt(5); power = new MageInt(5);
toughness = new MageInt(6); toughness = new MageInt(6);
} }

View file

@ -152,7 +152,7 @@ class SkeletonToken extends Token {
super("Skeleton", "1/1 black Skeleton creature token with \"{B}: Regenerate this creature.\""); super("Skeleton", "1/1 black Skeleton creature token with \"{B}: Regenerate this creature.\"");
this.cardType.add(CardType.CREATURE); this.cardType.add(CardType.CREATURE);
this.color = ObjectColor.BLACK; this.color = ObjectColor.BLACK;
this.subtype.add("Bat"); this.subtype.add("Skeleton");
this.power = new MageInt(1); this.power = new MageInt(1);
this.toughness = new MageInt(1); this.toughness = new MageInt(1);

View file

@ -93,7 +93,7 @@ class GriffinToken extends Token {
cardType.add(CardType.CREATURE); cardType.add(CardType.CREATURE);
color.setWhite(true); color.setWhite(true);
subtype.add("Soldier"); subtype.add("Griffin");
power = new MageInt(2); power = new MageInt(2);
toughness = new MageInt(2); toughness = new MageInt(2);
this.addAbility(FlyingAbility.getInstance()); this.addAbility(FlyingAbility.getInstance());

View file

@ -86,7 +86,7 @@ class OpalGuardianGargoyle extends Token {
public OpalGuardianGargoyle() { public OpalGuardianGargoyle() {
super("Gargoyle", "a 3/4 Gargoyle creature with flying and protection from red"); super("Gargoyle", "a 3/4 Gargoyle creature with flying and protection from red");
cardType.add(CardType.CREATURE); cardType.add(CardType.CREATURE);
subtype.add("Knight"); subtype.add("Gargoyle");
power = new MageInt(3); power = new MageInt(3);
toughness = new MageInt(4); toughness = new MageInt(4);
this.addAbility(FlyingAbility.getInstance()); this.addAbility(FlyingAbility.getInstance());