mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-15 18:28: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_excavator.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/hallowed_burial.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);
|
||||
}
|
||||
|
||||
/**
|
||||
* <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>
|
||||
* isColor.
|
||||
|
||||
@@ -18,6 +18,7 @@
|
||||
package forge.card.mana;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
|
||||
@@ -299,6 +300,11 @@ public class ManaPool {
|
||||
if (mana.addsNoCounterMagic(sa) && sa.getSourceCard() != null) {
|
||||
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 final String manaRestrictions;
|
||||
private final String cannotCounterSpell;
|
||||
private final String addsKeywords;
|
||||
private final boolean persistentMana;
|
||||
|
||||
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";
|
||||
this.manaRestrictions = params.containsKey("RestrictValid") ? params.get("RestrictValid") : "";
|
||||
this.cannotCounterSpell = params.get("AddsNoCounter");
|
||||
this.addsKeywords = params.get("AddsKeywords");
|
||||
this.persistentMana = (null == params.get("PersistentMana")) ? false :
|
||||
"True".equalsIgnoreCase(params.get("PersistentMana"));
|
||||
}
|
||||
@@ -167,6 +169,29 @@ public class AbilityManaPart implements java.io.Serializable {
|
||||
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>
|
||||
* getManaRestrictions.
|
||||
@@ -452,5 +477,6 @@ public class AbilityManaPart implements java.io.Serializable {
|
||||
return this.persistentMana;
|
||||
}
|
||||
|
||||
|
||||
} // end class AbilityMana
|
||||
|
||||
|
||||
Reference in New Issue
Block a user