diff --git a/.gitattributes b/.gitattributes index fa92ec0ed49..3bc98daa9f7 100644 --- a/.gitattributes +++ b/.gitattributes @@ -9353,6 +9353,7 @@ forge-gui/res/cardsfolder/m/malakir_soothsayer.txt -text forge-gui/res/cardsfolder/m/malevolent_awakening.txt svneol=native#text/plain forge-gui/res/cardsfolder/m/malevolent_whispers.txt -text forge-gui/res/cardsfolder/m/malfegor.txt -text svneol=unset#text/plain +forge-gui/res/cardsfolder/m/malfegor_avatar.txt -text svneol=unset#text/plain forge-gui/res/cardsfolder/m/malicious_advice.txt svneol=native#text/plain forge-gui/res/cardsfolder/m/malicious_affliction.txt -text forge-gui/res/cardsfolder/m/malicious_intent.txt -text diff --git a/forge-game/src/main/java/forge/game/GameAction.java b/forge-game/src/main/java/forge/game/GameAction.java index fb19926336f..3ad3b2fd219 100644 --- a/forge-game/src/main/java/forge/game/GameAction.java +++ b/forge-game/src/main/java/forge/game/GameAction.java @@ -233,6 +233,7 @@ public class GameAction { if (c.isUnearthed() && (zoneTo.is(ZoneType.Graveyard) || zoneTo.is(ZoneType.Hand) || zoneTo.is(ZoneType.Library))) { zoneTo = c.getOwner().getZone(ZoneType.Exile); + lastKnownInfo = CardUtil.getLKICopy(c); c.setUnearthed(false); } } diff --git a/forge-game/src/main/java/forge/game/card/Card.java b/forge-game/src/main/java/forge/game/card/Card.java index d377b3970c6..8a7cec1edbb 100644 --- a/forge-game/src/main/java/forge/game/card/Card.java +++ b/forge-game/src/main/java/forge/game/card/Card.java @@ -5151,6 +5151,10 @@ public class Card extends GameEntity implements Comparable { if (isMonstrous()) { return false; } + } else if (property.equals("IsUnearthed")) { + if (!isUnearthed()) { + return false; + } } else if (property.equals("IsRenowned")) { if (!isRenowned()) { return false; diff --git a/forge-game/src/main/java/forge/game/card/CardUtil.java b/forge-game/src/main/java/forge/game/card/CardUtil.java index 4196a0a61b9..68de71c13c8 100644 --- a/forge-game/src/main/java/forge/game/card/CardUtil.java +++ b/forge-game/src/main/java/forge/game/card/CardUtil.java @@ -288,6 +288,8 @@ public final class CardUtil { newCopy.addImprintedCard(o); } + newCopy.setUnearthed(in.isUnearthed()); + newCopy.setChangedCardColors(in.getChangedCardColors()); newCopy.setChangedCardKeywords(in.getChangedCardKeywords()); newCopy.setChangedCardTypes(in.getChangedCardTypes()); diff --git a/forge-gui/res/cardsfolder/m/malfegor_avatar.txt b/forge-gui/res/cardsfolder/m/malfegor_avatar.txt new file mode 100644 index 00000000000..65acd9e4ffa --- /dev/null +++ b/forge-gui/res/cardsfolder/m/malfegor_avatar.txt @@ -0,0 +1,10 @@ +Name:Malfegor Avatar +ManaCost:no cost +Types:Vanguard +HandLifeModifier:+2/-2 +T:Mode$ ChangesZone | ValidCard$ Creature.YouCtrl+IsUnearthed | Origin$ Any | Destination$ Battlefield | TriggerZones$ Command | Execute$ TrigPump | TriggerDescription$ Whenever a creature enters the battlefield under your control, if it was unearthed, it gets +3/+0. +SVar:TrigPump:AB$ Pump | Cost$ 0 | Defined$ TriggeredCard | NumAtt$ +3 +T:Mode$ ChangesZone | ValidCard$ Card.IsUnearthed | Origin$ Any | Destination$ Exile | TriggerZones$ Command | Execute$ TrigMove | TriggerDescription$ Whenever a creature you control is exiled, if it was uneathed, shuffle that card into its owner's library. +SVar:TrigMove:AB$ ChangeZone | Cost$ 0 | Origin$ Exile | Destination$ Library | Defined$ TriggeredCard | Shuffle$ True +SVar:Picture:http://downloads.cardforge.link/images/cards/VAN/Malfegor Avatar.full.jpg +Oracle:Hand +2, life -2\nWhenever a creature enters the battlefield under your control, if it was unearthed, it gets +3/+0.\nWhenever a creature you control is exiled, if it was uneathed, shuffle that card into its owner's library.