mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-20 20:58:03 +00:00
add Spirit of Resistance (from Invasion)
This commit is contained in:
1
.gitattributes
vendored
1
.gitattributes
vendored
@@ -3944,6 +3944,7 @@ res/cardsfolder/spiraling_embers.txt -text svneol=native#text/plain
|
|||||||
res/cardsfolder/spire_barrage.txt -text svneol=native#text/plain
|
res/cardsfolder/spire_barrage.txt -text svneol=native#text/plain
|
||||||
res/cardsfolder/spire_golem.txt -text svneol=native#text/plain
|
res/cardsfolder/spire_golem.txt -text svneol=native#text/plain
|
||||||
res/cardsfolder/spire_owl.txt -text svneol=native#text/plain
|
res/cardsfolder/spire_owl.txt -text svneol=native#text/plain
|
||||||
|
res/cardsfolder/spirit_of_resistance.txt -text svneol=native#text/plain
|
||||||
res/cardsfolder/spirit_of_the_night.txt -text svneol=native#text/plain
|
res/cardsfolder/spirit_of_the_night.txt -text svneol=native#text/plain
|
||||||
res/cardsfolder/spirit_shackle.txt -text svneol=native#text/plain
|
res/cardsfolder/spirit_shackle.txt -text svneol=native#text/plain
|
||||||
res/cardsfolder/spiritmonger.txt -text svneol=native#text/plain
|
res/cardsfolder/spiritmonger.txt -text svneol=native#text/plain
|
||||||
|
|||||||
7
res/cardsfolder/spirit_of_resistance.txt
Normal file
7
res/cardsfolder/spirit_of_resistance.txt
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
Name:Spirit of Resistance
|
||||||
|
ManaCost:2 W
|
||||||
|
Types:Enchantment
|
||||||
|
Text:As long as you control a permanent of each color, prevent all damage that would be dealt to you.
|
||||||
|
SVar:Rarity:Rare
|
||||||
|
SVar:Picture:http://www.wizards.com/global/images/magic/general/spirit_of_resistance.jpg
|
||||||
|
End
|
||||||
@@ -127,11 +127,10 @@ public abstract class Player extends MyObservable{
|
|||||||
public void addDamage(final int damage, final Card source) {
|
public void addDamage(final int damage, final Card source) {
|
||||||
int damageToDo = damage;
|
int damageToDo = damage;
|
||||||
|
|
||||||
if (source.getKeyword().contains("Prevent all damage that would be dealt to and dealt by CARDNAME.")
|
if( reducePlayerDamageToZero(source, false) )
|
||||||
|| source.getKeyword().contains("Prevent all damage that would be dealt by CARDNAME."))
|
|
||||||
damageToDo = 0;
|
damageToDo = 0;
|
||||||
|
|
||||||
if (source.getKeyword().contains("Infect")) {
|
if( source.getKeyword().contains("Infect") ) {
|
||||||
addPoisonCounters(damage);
|
addPoisonCounters(damage);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
@@ -151,6 +150,27 @@ public abstract class Player extends MyObservable{
|
|||||||
GameActionUtil.executePlayerDamageEffects(this, source, damageToDo, false);
|
GameActionUtil.executePlayerDamageEffects(this, source, damageToDo, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private boolean reducePlayerDamageToZero(final Card source, final boolean isCombat) {
|
||||||
|
boolean reduce = false;
|
||||||
|
if(isCombat) {
|
||||||
|
//for future use
|
||||||
|
}
|
||||||
|
reduce = reduce || source.getKeyword().contains("Prevent all damage that would be dealt to and dealt by CARDNAME.");
|
||||||
|
reduce = reduce || source.getKeyword().contains("Prevent all damage that would be dealt by CARDNAME.");
|
||||||
|
|
||||||
|
//Spirit of Resistance
|
||||||
|
if(AllZoneUtil.isCardInPlay("Spirit of Resistance", this)) {
|
||||||
|
if( AllZoneUtil.getPlayerColorInPlay(this, Constant.Color.Black).size() > 0
|
||||||
|
&& AllZoneUtil.getPlayerColorInPlay(this, Constant.Color.Blue).size() > 0
|
||||||
|
&& AllZoneUtil.getPlayerColorInPlay(this, Constant.Color.Green).size() > 0
|
||||||
|
&& AllZoneUtil.getPlayerColorInPlay(this, Constant.Color.Red).size() > 0
|
||||||
|
&& AllZoneUtil.getPlayerColorInPlay(this, Constant.Color.White).size() > 0) {
|
||||||
|
reduce = true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return reduce;
|
||||||
|
}
|
||||||
|
|
||||||
public void setAssignedDamage(int n) { assignedDamage = n; }
|
public void setAssignedDamage(int n) { assignedDamage = n; }
|
||||||
public int getAssignedDamage() { return assignedDamage; }
|
public int getAssignedDamage() { return assignedDamage; }
|
||||||
|
|
||||||
@@ -209,6 +229,8 @@ public abstract class Player extends MyObservable{
|
|||||||
return new CardList();
|
return new CardList();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
////////////////////////////////
|
////////////////////////////////
|
||||||
//
|
//
|
||||||
// generic Object overrides
|
// generic Object overrides
|
||||||
|
|||||||
Reference in New Issue
Block a user