- Added Mangara's Tome

This commit is contained in:
swordshine
2014-03-04 13:41:24 +00:00
parent ff48b93222
commit 986dd76696
7 changed files with 39 additions and 8 deletions

View File

@@ -102,8 +102,10 @@ public class GameAction {
* @return a {@link forge.game.card.Card} object.
*/
public Card changeZone(final Zone zoneFrom, Zone zoneTo, final Card c, Integer position) {
if (c.isCopiedSpell()) {
if ((zoneFrom != null)) {
if (c.isCopiedSpell() || (c.isImmutable() && zoneTo.is(ZoneType.Exile))) {
// Remove Effect from command immediately, this is essential when some replacement
// effects happen during the resolving of a spellability ("the next time ..." effect)
if (zoneFrom != null) {
zoneFrom.remove(c);
}
return c;

View File

@@ -173,6 +173,11 @@ public class AbilityUtils {
cards.add(game.getCardState((Card) o));
}
}
} else if (defined.equals("FirstRemembered")) {
Object o = Iterables.getFirst(hostCard.getRemembered(), null);
if (o != null && o instanceof Card) {
cards.add(game.getCardState((Card) o));
}
} else if (defined.equals("Clones")) {
for (final Card clone : hostCard.getClones()) {
cards.add(game.getCardState(clone));

View File

@@ -757,7 +757,11 @@ public class ChangeZoneEffect extends SpellAbilityEffect {
totcmc -= c.getCMC();
}
}
if (sa.hasParam("ShuffleChangedPile")) {
CardLists.shuffle(chosenCards);
}
List<Card> movedCards = new ArrayList<Card>();
long ts = game.getNextTimestamp();
for(Card c : chosenCards) {

View File

@@ -71,8 +71,8 @@ public class DebuffEffect extends SpellAbilityEffect {
}
tgtC.removeIntrinsicKeyword(kw);
tgtC.removeAllExtrinsicKeyword(kw);
tgtC.addChangedCardKeywords(new ArrayList<String>(), kws, false, timestamp);
}
tgtC.addChangedCardKeywords(new ArrayList<String>(), kws, false, timestamp);
}
if (!sa.hasParam("Permanent")) {
game.getEndOfTurn().addUntil(new GameCommand() {

View File

@@ -1864,13 +1864,14 @@ public class Card extends GameEntity implements Comparable<Card> {
if (o instanceof Card) {
final Card c = (Card) o;
if (c.isFaceDown()) {
sb.append("Face Down ");
sb.append("Face Down");
// face-down cards don't show unique number to avoid cheating
} else {
sb.append(c.getName());
sb.append(" (");
sb.append(c.getUniqueNumber());
sb.append(")");
}
sb.append("(");
sb.append(c.getUniqueNumber());
sb.append(")");
} else if (o != null) {
sb.append(o.toString());
}