From 56fb6810e3340d3798fdc69ab7a2e43d5b53b10c Mon Sep 17 00:00:00 2001 From: Hellfish Date: Mon, 1 Oct 2012 22:00:17 +0000 Subject: [PATCH] *Added Corpsejack Menace --- .gitattributes | 1 + res/cardsfolder/c/corpsejack_menace.txt | 9 +++++++++ src/main/java/forge/AllZoneUtil.java | 9 ++++++--- src/main/java/forge/Card.java | 2 +- 4 files changed, 17 insertions(+), 4 deletions(-) create mode 100644 res/cardsfolder/c/corpsejack_menace.txt diff --git a/.gitattributes b/.gitattributes index e8ab9e58578..94d1fc1b840 100644 --- a/.gitattributes +++ b/.gitattributes @@ -1860,6 +1860,7 @@ res/cardsfolder/c/corpse_harvester.txt svneol=native#text/plain res/cardsfolder/c/corpse_lunge.txt -text res/cardsfolder/c/corpse_traders.txt -text res/cardsfolder/c/corpsehatch.txt svneol=native#text/plain +res/cardsfolder/c/corpsejack_menace.txt -text res/cardsfolder/c/corpulent_corpse.txt svneol=native#text/plain res/cardsfolder/c/corrosive_gale.txt svneol=native#text/plain res/cardsfolder/c/corrosive_mentor.txt svneol=native#text/plain diff --git a/res/cardsfolder/c/corpsejack_menace.txt b/res/cardsfolder/c/corpsejack_menace.txt new file mode 100644 index 00000000000..254b8377e06 --- /dev/null +++ b/res/cardsfolder/c/corpsejack_menace.txt @@ -0,0 +1,9 @@ +Name:Corpsejack Menace +ManaCost:2 B G +Types:Creature Fungus +Text:If one or more +1/+1 counters would be placed on a creature you control, twice that many +1/+1 counters are placed on it instead. +PT:4/4 +SVar:Picture:http://www.wizards.com/global/images/magic/general/corpsejack_menace.jpg +SetInfo:RTR|Rare|http://magiccards.info/scans/en/rtr/152.jpg +Oracle:If one or more +1/+1 counters would be placed on a creature you control, twice that many +1/+1 counters are placed on it instead. +End \ No newline at end of file diff --git a/src/main/java/forge/AllZoneUtil.java b/src/main/java/forge/AllZoneUtil.java index edb20f7956d..c874c1c1db9 100644 --- a/src/main/java/forge/AllZoneUtil.java +++ b/src/main/java/forge/AllZoneUtil.java @@ -332,9 +332,12 @@ public abstract class AllZoneUtil { * Doubling Season * @return a int. */ - public static int getDoublingSeasonMagnitude(final Player player) { - final int doublingSeasons = player.getCardsIn(ZoneType.Battlefield, "Doubling Season").size(); - return (int) Math.pow(2, doublingSeasons); // pow(a,0) = 1; pow(a,1) = a + public static int getCounterDoublersMagnitude(final Player player, Counters type) { + int counterDoublers = player.getCardsIn(ZoneType.Battlefield, "Doubling Season").size(); + if(type == Counters.P1P1) { + counterDoublers += player.getCardsIn(ZoneType.Battlefield, "Corpsejack Menace").size(); + } + return (int) Math.pow(2, counterDoublers); // pow(a,0) = 1; pow(a,1) = a // ... no worries about size // = 0 } diff --git a/src/main/java/forge/Card.java b/src/main/java/forge/Card.java index 97c0b8f8067..2bfa80c975c 100644 --- a/src/main/java/forge/Card.java +++ b/src/main/java/forge/Card.java @@ -1285,7 +1285,7 @@ public class Card extends GameEntity implements Comparable { if (!this.canHaveCountersPlacedOnIt(counterName)) { return; } - final int multiplier = AllZoneUtil.getDoublingSeasonMagnitude(this.getController()); + final int multiplier = AllZoneUtil.getCounterDoublersMagnitude(this.getController(),counterName); if (this.counters.containsKey(counterName)) { final Integer aux = this.counters.get(counterName) + (multiplier * n); this.counters.put(counterName, aux);