Added Profane Command, Hallowed Spiritkeeper, Song of the Dryads, Phantom Centaur, Freyalise Llanowar's Fury.

This commit is contained in:
LevelX2 2014-11-10 08:29:04 +01:00
parent bf31fcb585
commit 8d76836eb6
13 changed files with 807 additions and 17 deletions

View file

@ -47,7 +47,7 @@ import mage.target.common.TargetOpponent;
public class Modes extends LinkedHashMap<UUID, Mode> {
private UUID modeId;
private final Set<UUID> selectedModes = new LinkedHashSet<UUID>();
private final Set<UUID> selectedModes = new LinkedHashSet<>();
private int minModes;
private int maxModes;
private TargetController modeChooser;

View file

@ -0,0 +1,61 @@
/*
* Copyright 2010 BetaSteward_at_googlemail.com. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification, are
* permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice, this list of
* conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice, this list
* of conditions and the following disclaimer in the documentation and/or other materials
* provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY BetaSteward_at_googlemail.com ``AS IS'' AND ANY EXPRESS OR IMPLIED
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
* FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL BetaSteward_at_googlemail.com OR
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
* SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
* ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
* ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
* The views and conclusions contained in the software and documentation are those of the
* authors and should not be interpreted as representing official policies, either expressed
* or implied, of BetaSteward_at_googlemail.com.
*/
package mage.abilities.common;
import java.io.ObjectStreamException;
import mage.abilities.MageSingleton;
import mage.abilities.StaticAbility;
import mage.constants.Zone;
/**
*
* @author LevelX2
*/
public class CanBeYourCommanderAbility extends StaticAbility implements MageSingleton {
private static final CanBeYourCommanderAbility fINSTANCE = new CanBeYourCommanderAbility();
private Object readResolve() throws ObjectStreamException {
return fINSTANCE;
}
public static CanBeYourCommanderAbility getInstance() {
return fINSTANCE;
}
private CanBeYourCommanderAbility() {
super(Zone.ALL, new EmptyEffect("{this} can be your commander"));
}
@Override
public CanBeYourCommanderAbility copy() {
return fINSTANCE;
}
}

View file

@ -30,6 +30,7 @@ package mage.abilities.effects.common.continious;
import java.util.ArrayList;
import java.util.Arrays;
import mage.ObjectColor;
import mage.abilities.Ability;
import mage.abilities.effects.ContinuousEffectImpl;
import mage.abilities.mana.BlackManaAbility;
@ -83,19 +84,32 @@ public class BecomesBasicLandEnchantedEffect extends ContinuousEffectImpl {
Permanent land = game.getPermanent(enchantment.getAttachedTo());
if (land != null) {
switch (layer) {
case ColorChangingEffects_5:
land.getColor().setWhite(false);
land.getColor().setGreen(false);
land.getColor().setBlack(false);
land.getColor().setBlue(false);
land.getColor().setRed(false);
break;
case AbilityAddingRemovingEffects_6:
land.removeAllAbilities(source.getSourceId(), game);
for (String landType : landTypes) {
if (landType.equals("Swamp")) {
land.addAbility(new BlackManaAbility(), source.getSourceId(), game);
} else if (landType.equals("Mountain")) {
land.addAbility(new RedManaAbility(), source.getSourceId(), game);
} else if (landType.equals("Forest")) {
land.addAbility(new GreenManaAbility(), source.getSourceId(), game);
} else if (landType.equals("Island")) {
land.addAbility(new BlueManaAbility(), source.getSourceId(), game);
} else if (landType.equals("Plains")) {
land.addAbility(new WhiteManaAbility(), source.getSourceId(), game);
switch (landType) {
case "Swamp":
land.addAbility(new BlackManaAbility(), source.getSourceId(), game);
break;
case "Mountain":
land.addAbility(new RedManaAbility(), source.getSourceId(), game);
break;
case "Forest":
land.addAbility(new GreenManaAbility(), source.getSourceId(), game);
break;
case "Island":
land.addAbility(new BlueManaAbility(), source.getSourceId(), game);
break;
case "Plains":
land.addAbility(new WhiteManaAbility(), source.getSourceId(), game);
break;
}
}
break;