- Added Dream Chisel and Exiled Doomsayer

This commit is contained in:
swordshine
2013-06-06 13:04:15 +00:00
parent 840131f7f0
commit fdcb4a3fe9
6 changed files with 56 additions and 6 deletions

2
.gitattributes vendored
View File

@@ -2913,6 +2913,7 @@ res/cardsfolder/d/dreadship_reef.txt svneol=native#text/plain
res/cardsfolder/d/dreadwaters.txt -text
res/cardsfolder/d/dreadwing.txt svneol=native#text/plain
res/cardsfolder/d/dream_cache.txt svneol=native#text/plain
res/cardsfolder/d/dream_chisel.txt -text
res/cardsfolder/d/dream_coat.txt -text svneol=unset#text/plain
res/cardsfolder/d/dream_fighter.txt -text
res/cardsfolder/d/dream_fracture.txt svneol=native#text/plain
@@ -3445,6 +3446,7 @@ res/cardsfolder/e/exhumer_thrull.txt -text
res/cardsfolder/e/exile.txt svneol=native#text/plain
res/cardsfolder/e/exile_into_darkness.txt svneol=native#text/plain
res/cardsfolder/e/exiled_boggart.txt svneol=native#text/plain
res/cardsfolder/e/exiled_doomsayer.txt -text
res/cardsfolder/e/exorcist.txt svneol=native#text/plain
res/cardsfolder/e/exoskeletal_armor.txt svneol=native#text/plain
res/cardsfolder/e/exotic_curse.txt svneol=native#text/plain

View File

@@ -0,0 +1,7 @@
Name:Dream Chisel
ManaCost:2
Types:Artifact
S:Mode$ ReduceCost | ValidCard$ Creature | Type$ MorphDown | Activator$ You | Amount$ 1 | Description$ Face-down creature spells you cast cost 1 less to cast.
SVar:RemRandomDeck:True
SVar:Picture:http://www.wizards.com/global/images/magic/general/dream_chisel.jpg
Oracle:Face-down creature spells you cast cost {1} less to cast.

View File

@@ -0,0 +1,8 @@
Name:Exiled Doomsayer
ManaCost:1 W
Types:Creature Human Cleric
PT:1/2
S:Mode$ RaiseCost | ValidCard$ Creature.faceDown | Type$ MorphUp | Amount$ 2 | Description$ All morph costs cost 2 more. (This doesn't affect the cost to cast creature spells face down.)
SVar:RemRandomDeck:True
SVar:Picture:http://www.wizards.com/global/images/magic/general/exiled_doomsayer.jpg
Oracle:All morph costs cost {2} more. (This doesn't affect the cost to cast creature spells face down.)

View File

@@ -233,6 +233,7 @@ public class CardFactoryUtil {
final StringBuilder sbStack = new StringBuilder();
sbStack.append(sourceCard.getName()).append(" - turn this card face up.");
morphUp.setStackDescription(sbStack.toString());
morphUp.setIsMorphUp(true);
return morphUp;
}

View File

@@ -78,6 +78,7 @@ public abstract class SpellAbility implements ISpellAbility {
private boolean cycling = false;
private boolean delve = false;
private boolean offering = false;
private boolean morphup = false;
private Card targetCard;
/** The chosen target. */
@@ -330,6 +331,28 @@ public abstract class SpellAbility implements ISpellAbility {
return this.replicate;
}
/**
* <p>
* setIsMorphUp.
* </p>
*
* @param b
* a boolean.
*/
public final void setIsMorphUp(final boolean b) {
this.morphup = b;
}
/**
* <p>
* isMorphUp.
* </p>
*
* @return a boolean.
*/
public boolean isMorphUp() {
return this.morphup;
}
/**
* <p>

View File

@@ -25,6 +25,7 @@ import forge.card.cardfactory.CardFactoryUtil;
import forge.card.mana.ManaCostBeingPaid;
import forge.card.mana.ManaCostShard;
import forge.card.spellability.AbilityActivated;
import forge.card.spellability.Spell;
import forge.card.spellability.SpellAbility;
import forge.card.spellability.Target;
import forge.game.player.Player;
@@ -80,6 +81,10 @@ public class StaticAbilityCostChange {
if (!sa.isFlashBackAbility()) {
return;
}
} else if (params.get("Type").equals("MorphUp")) {
if (!sa.isMorphUp()) {
return;
}
}
}
if (params.containsKey("AffectedZone") && !card.isInZone(ZoneType.smartValueOf(params.get("AffectedZone")))) {
@@ -211,6 +216,10 @@ public class StaticAbilityCostChange {
if (!sa.isFlashBackAbility()) {
return;
}
} else if (params.get("Type").equals("MorphDown")) {
if (!sa.isSpell() || !((Spell) sa).isCastFaceDown()) {
return;
}
}
}
if (params.containsKey("ValidTarget")) {