- Added Ice Cave

This commit is contained in:
swordshine
2014-06-02 13:58:46 +00:00
parent 6412dd2702
commit 2738b2f79b
5 changed files with 26 additions and 2 deletions

1
.gitattributes vendored
View File

@@ -6876,6 +6876,7 @@ forge-gui/res/cardsfolder/i/icatian_skirmishers.txt -text
forge-gui/res/cardsfolder/i/icatian_store.txt svneol=native#text/plain
forge-gui/res/cardsfolder/i/icatian_town.txt svneol=native#text/plain
forge-gui/res/cardsfolder/i/ice_cage.txt svneol=native#text/plain
forge-gui/res/cardsfolder/i/ice_cave.txt -text
forge-gui/res/cardsfolder/i/ice_floe.txt svneol=native#text/plain
forge-gui/res/cardsfolder/i/ice_storm.txt svneol=native#text/plain
forge-gui/res/cardsfolder/i/iceberg.txt svneol=native#text/plain

View File

@@ -1251,6 +1251,20 @@ public class AbilityUtils {
if (unlessCost.equals("CardManaCost")) {
cost = new Cost(source.getManaCost(), true);
}
else if (unlessCost.equals("TriggeredSpellManaCost")) {
SpellAbility triggered = (SpellAbility) sa.getRootAbility().getTriggeringObject("SpellAbility");
Card triggeredCard = triggered.getHostCard();
if (triggeredCard.getManaCost() == null) {
cost = new Cost(ManaCost.ZERO, true);
} else {
int xCount = triggeredCard.getManaCost().countX();
int xPaid = triggeredCard.getXManaCostPaid() * xCount;
ManaCostBeingPaid toPay = new ManaCostBeingPaid(triggeredCard.getManaCost());
toPay.decreaseShard(ManaCostShard.X, xCount);
toPay.increaseColorlessMana(xPaid);
cost = new Cost(toPay.toManaCost(), true);
}
}
else if (unlessCost.equals("ChosenManaCost")) {
if (source.getChosenCard().isEmpty()) {
cost = new Cost(ManaCost.ZERO, true);

View File

@@ -68,6 +68,7 @@ public class DelayedTriggerEffect extends SpellAbilityEffect {
if (mapParams.containsKey("Execute")) {
SpellAbility overridingSA = AbilityFactory.getAbility(sa.getSVar(mapParams.get("Execute")), sa.getHostCard());
overridingSA.setActivatingPlayer(sa.getActivatingPlayer());
delTrig.setOverridingAbility(overridingSA);
}

View File

@@ -380,8 +380,9 @@ public class TriggerHandler {
if (regtrig.getStoredTriggeredObjects() != null) {
sa.setAllTriggeringObjects(regtrig.getStoredTriggeredObjects());
}
sa.setActivatingPlayer(host.getController());
if (sa.getActivatingPlayer() == null) { // overriding delayed trigger should have set activator
sa.setActivatingPlayer(host.getController());
}
if (triggerParams.containsKey("TriggerController")) {
Player p = AbilityUtils.getDefinedPlayers(regtrig.getHostCard(), triggerParams.get("TriggerController"), sa).get(0);
sa.setActivatingPlayer(p);

View File

@@ -0,0 +1,7 @@
Name:Ice Cave
ManaCost:3 U U
Types:Enchantment
T:Mode$ SpellCast | ValidCard$ Card | TriggerZones$ Battlefield | Execute$ TrigCounter | TriggerDescription$ Whenever a player casts a spell, any other player may pay that spell's mana cost. If a player does, counter the spell. (Mana cost includes color.)
SVar:TrigCounter:DB$ Counter | Defined$ TriggeredSpellAbility | UnlessCost$ TriggeredSpellManaCost | UnlessPayer$ NonTriggeredCardController | UnlessSwitched$ True
SVar:Picture:http://www.wizards.com/global/images/magic/general/ice_cave.jpg
Oracle:Whenever a player casts a spell, any other player may pay that spell's mana cost. If a player does, counter the spell. (Mana cost includes color.)