- Added support for targeting players to AF GainControl.

- Added Jinxed Idol.
This commit is contained in:
Sloth
2011-11-15 11:27:48 +00:00
parent 651e790b26
commit 2cb8117893
3 changed files with 27 additions and 4 deletions

1
.gitattributes vendored
View File

@@ -4222,6 +4222,7 @@ res/cardsfolder/j/jihad.txt -text
res/cardsfolder/j/jilt.txt -text res/cardsfolder/j/jilt.txt -text
res/cardsfolder/j/jin_gitaxias_core_augur.txt svneol=native#text/plain res/cardsfolder/j/jin_gitaxias_core_augur.txt svneol=native#text/plain
res/cardsfolder/j/jinx.txt -text res/cardsfolder/j/jinx.txt -text
res/cardsfolder/j/jinxed_idol.txt -text
res/cardsfolder/j/jiwari_the_earth_aflame.txt svneol=native#text/plain res/cardsfolder/j/jiwari_the_earth_aflame.txt svneol=native#text/plain
res/cardsfolder/j/jodahs_avenger.txt svneol=native#text/plain res/cardsfolder/j/jodahs_avenger.txt svneol=native#text/plain
res/cardsfolder/j/johtull_wurm.txt -text res/cardsfolder/j/johtull_wurm.txt -text

View File

@@ -0,0 +1,14 @@
Name:Jinxed Idol
ManaCost:2
Types:Artifact
Text:no text
T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigDamage | TriggerDescription$ At the beginning of your upkeep, CARDNAME deals 2 damage to you.
SVar:TrigDamage:DB$ DealDamage | Defined$ You | NumDmg$ 2
A:AB$ GainControl | Cost$ Sac<1/Creature> | Defined$ Self | ValidTgts$ Opponent | TgtPrompt$ Select target opponent | SpellDescription$ Target opponent gains control of CARDNAME.
SVar:RemAIDeck:True
SVar:Rarity:Rare
SVar:Picture:http://www.wizards.com/global/images/magic/general/jinxed_idol.jpg
SetInfo:M11|Rare|http://magiccards.info/scans/en/m11/208.jpg
SetInfo:TMP|Rare|http://magiccards.info/scans/en/tp/283.jpg
Oracle:At the beginning of your upkeep, Jinxed Idol deals 2 damage to you.\nSacrifice a creature: Target opponent gains control of Jinxed Idol.
End

View File

@@ -222,14 +222,17 @@ public class AbilityFactoryGainControl {
ArrayList<Card> tgtCards; ArrayList<Card> tgtCards;
final Target tgt = this.af.getAbTgt(); final Target tgt = this.af.getAbTgt();
if (tgt != null) { if (tgt != null && !params.containsKey("Defined")) {
tgtCards = tgt.getTargetCards(); tgtCards = tgt.getTargetCards();
} else { } else {
tgtCards = AbilityFactory.getDefinedCards(this.hostCard, this.params.get("Defined"), sa); tgtCards = AbilityFactory.getDefinedCards(this.hostCard, this.params.get("Defined"), sa);
} }
final ArrayList<Player> newController = AbilityFactory.getDefinedPlayers(sa.getSourceCard(), ArrayList<Player> newController = AbilityFactory.getDefinedPlayers(sa.getSourceCard(),
this.params.get("NewController"), sa); this.params.get("NewController"), sa);
if (tgt != null && tgt.getTargetPlayers() != null) {
newController = tgt.getTargetPlayers();
}
if (newController.size() == 0) { if (newController.size() == 0) {
newController.add(sa.getActivatingPlayer()); newController.add(sa.getActivatingPlayer());
} }
@@ -365,15 +368,18 @@ public class AbilityFactoryGainControl {
final boolean self = this.params.containsKey("Defined") && this.params.get("Defined").equals("Self"); final boolean self = this.params.containsKey("Defined") && this.params.get("Defined").equals("Self");
final Target tgt = this.af.getAbTgt(); final Target tgt = this.af.getAbTgt();
if (tgt != null) { if (tgt != null && !params.containsKey("Defined")) {
tgtCards = tgt.getTargetCards(); tgtCards = tgt.getTargetCards();
} else { } else {
tgtCards = AbilityFactory.getDefinedCards(this.hostCard, this.params.get("Defined"), sa); tgtCards = AbilityFactory.getDefinedCards(this.hostCard, this.params.get("Defined"), sa);
} }
// tgtCards.add(hostCard); // tgtCards.add(hostCard);
final ArrayList<Player> newController = AbilityFactory.getDefinedPlayers(sa.getSourceCard(), ArrayList<Player> newController = AbilityFactory.getDefinedPlayers(sa.getSourceCard(),
this.params.get("NewController"), sa); this.params.get("NewController"), sa);
if (tgt != null && tgt.getTargetPlayers() != null) {
newController = tgt.getTargetPlayers();
}
if (newController.size() == 0) { if (newController.size() == 0) {
newController.add(sa.getActivatingPlayer()); newController.add(sa.getActivatingPlayer());
} }
@@ -392,6 +398,8 @@ public class AbilityFactoryGainControl {
if (this.params.containsKey("NewController")) { if (this.params.containsKey("NewController")) {
tgtC.addController(newController.get(0)); tgtC.addController(newController.get(0));
} else if (tgt != null && tgt.getTargetPlayers() != null){
tgtC.addController(newController.get(0));
} else { } else {
tgtC.addController(this.hostCard); tgtC.addController(this.hostCard);
} }