mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-16 10:48:00 +00:00
- Added Hall of the Bandit Lord
This commit is contained in:
1
.gitattributes
vendored
1
.gitattributes
vendored
@@ -4890,6 +4890,7 @@ res/cardsfolder/h/halcyon_glaze.txt svneol=native#text/plain
|
|||||||
res/cardsfolder/h/halimar_depths.txt svneol=native#text/plain
|
res/cardsfolder/h/halimar_depths.txt svneol=native#text/plain
|
||||||
res/cardsfolder/h/halimar_excavator.txt svneol=native#text/plain
|
res/cardsfolder/h/halimar_excavator.txt svneol=native#text/plain
|
||||||
res/cardsfolder/h/halimar_wavewatch.txt svneol=native#text/plain
|
res/cardsfolder/h/halimar_wavewatch.txt svneol=native#text/plain
|
||||||
|
res/cardsfolder/h/hall_of_the_bandit_lord.txt -text
|
||||||
res/cardsfolder/h/hallow.txt -text
|
res/cardsfolder/h/hallow.txt -text
|
||||||
res/cardsfolder/h/hallowed_burial.txt svneol=native#text/plain
|
res/cardsfolder/h/hallowed_burial.txt svneol=native#text/plain
|
||||||
res/cardsfolder/h/hallowed_fountain.txt svneol=native#text/plain
|
res/cardsfolder/h/hallowed_fountain.txt svneol=native#text/plain
|
||||||
|
|||||||
7
res/cardsfolder/h/hall_of_the_bandit_lord.txt
Normal file
7
res/cardsfolder/h/hall_of_the_bandit_lord.txt
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
Name:Hall of the Bandit Lord
|
||||||
|
ManaCost:no cost
|
||||||
|
Types:Legendary Land
|
||||||
|
K:CARDNAME enters the battlefield tapped.
|
||||||
|
A:AB$ Mana | Cost$ T PayLife<3> | Produced$ 1 | AddsKeywords$ Haste | SpellDescription$ Add 1 to your mana pool. If that mana is spent on a creature spell, it gains haste.
|
||||||
|
SVar:Picture:http://www.wizards.com/global/images/magic/general/hall_of_the_bandit_lord.jpg
|
||||||
|
Oracle:Hall of the Bandit Lord enters the battlefield tapped.\n{T}, Pay 3 life: Add {1} to your mana pool. If that mana is spent on a creature spell, it gains haste.
|
||||||
@@ -144,6 +144,27 @@ public class Mana {
|
|||||||
return this.manaAbility != null && manaAbility.cannotCounterPaidWith(saBeingPaid);
|
return this.manaAbility != null && manaAbility.cannotCounterPaidWith(saBeingPaid);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <p>
|
||||||
|
* addsKeywords.
|
||||||
|
* </p>
|
||||||
|
*
|
||||||
|
* @return a boolean.
|
||||||
|
*/
|
||||||
|
public final boolean addsKeywords(SpellAbility saBeingPaid) {
|
||||||
|
return this.manaAbility != null && manaAbility.addKeywords(saBeingPaid);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <p>
|
||||||
|
* getAddedKeywords.
|
||||||
|
* </p>
|
||||||
|
* @return a String.
|
||||||
|
*/
|
||||||
|
public final String getAddedKeywords() {
|
||||||
|
return this.manaAbility.getKeywords();
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* <p>
|
* <p>
|
||||||
* isColor.
|
* isColor.
|
||||||
|
|||||||
@@ -18,6 +18,7 @@
|
|||||||
package forge.card.mana;
|
package forge.card.mana;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
|
import java.util.Arrays;
|
||||||
import java.util.Collection;
|
import java.util.Collection;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
@@ -299,6 +300,11 @@ public class ManaPool {
|
|||||||
if (mana.addsNoCounterMagic(sa) && sa.getSourceCard() != null) {
|
if (mana.addsNoCounterMagic(sa) && sa.getSourceCard() != null) {
|
||||||
sa.getSourceCard().setCanCounter(false);
|
sa.getSourceCard().setCanCounter(false);
|
||||||
}
|
}
|
||||||
|
if (sa.isSpell() && sa.getSourceCard() != null
|
||||||
|
&& sa.getSourceCard().isCreature() && mana.addsKeywords(sa)) {
|
||||||
|
final long timestamp = sa.getSourceCard().getGame().getNextTimestamp();
|
||||||
|
sa.getSourceCard().addChangedCardKeywords(Arrays.asList(mana.getAddedKeywords().split(" & ")), new ArrayList<String>(), false, timestamp);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -49,6 +49,7 @@ public class AbilityManaPart implements java.io.Serializable {
|
|||||||
private String lastExpressChoice = "";
|
private String lastExpressChoice = "";
|
||||||
private final String manaRestrictions;
|
private final String manaRestrictions;
|
||||||
private final String cannotCounterSpell;
|
private final String cannotCounterSpell;
|
||||||
|
private final String addsKeywords;
|
||||||
private final boolean persistentMana;
|
private final boolean persistentMana;
|
||||||
|
|
||||||
private transient ArrayList<Mana> lastManaProduced = new ArrayList<Mana>();
|
private transient ArrayList<Mana> lastManaProduced = new ArrayList<Mana>();
|
||||||
@@ -78,6 +79,7 @@ public class AbilityManaPart implements java.io.Serializable {
|
|||||||
origProduced = params.containsKey("Produced") ? params.get("Produced") : "1";
|
origProduced = params.containsKey("Produced") ? params.get("Produced") : "1";
|
||||||
this.manaRestrictions = params.containsKey("RestrictValid") ? params.get("RestrictValid") : "";
|
this.manaRestrictions = params.containsKey("RestrictValid") ? params.get("RestrictValid") : "";
|
||||||
this.cannotCounterSpell = params.get("AddsNoCounter");
|
this.cannotCounterSpell = params.get("AddsNoCounter");
|
||||||
|
this.addsKeywords = params.get("AddsKeywords");
|
||||||
this.persistentMana = (null == params.get("PersistentMana")) ? false :
|
this.persistentMana = (null == params.get("PersistentMana")) ? false :
|
||||||
"True".equalsIgnoreCase(params.get("PersistentMana"));
|
"True".equalsIgnoreCase(params.get("PersistentMana"));
|
||||||
}
|
}
|
||||||
@@ -167,6 +169,29 @@ public class AbilityManaPart implements java.io.Serializable {
|
|||||||
return source.isValid(cannotCounterSpell, sourceCard.getController(), sourceCard);
|
return source.isValid(cannotCounterSpell, sourceCard.getController(), sourceCard);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <p>
|
||||||
|
* addKeywords.
|
||||||
|
* </p>
|
||||||
|
* @param saBeingPaid
|
||||||
|
*
|
||||||
|
* @return a {@link java.lang.String} object.
|
||||||
|
*/
|
||||||
|
public boolean addKeywords(SpellAbility saBeingPaid) {
|
||||||
|
return this.addsKeywords != null;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <p>
|
||||||
|
* getKeywords.
|
||||||
|
* </p>
|
||||||
|
* @param saBeingPaid
|
||||||
|
*
|
||||||
|
* @return a {@link java.lang.String} object.
|
||||||
|
*/
|
||||||
|
public String getKeywords() {
|
||||||
|
return this.addsKeywords;
|
||||||
|
}
|
||||||
/**
|
/**
|
||||||
* <p>
|
* <p>
|
||||||
* getManaRestrictions.
|
* getManaRestrictions.
|
||||||
@@ -452,5 +477,6 @@ public class AbilityManaPart implements java.io.Serializable {
|
|||||||
return this.persistentMana;
|
return this.persistentMana;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
} // end class AbilityMana
|
} // end class AbilityMana
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user