diff --git a/forge-ai/src/main/java/forge/ai/ability/ChangeZoneAi.java b/forge-ai/src/main/java/forge/ai/ability/ChangeZoneAi.java index d0406edaa13..3d953a5e099 100644 --- a/forge-ai/src/main/java/forge/ai/ability/ChangeZoneAi.java +++ b/forge-ai/src/main/java/forge/ai/ability/ChangeZoneAi.java @@ -972,7 +972,16 @@ public class ChangeZoneAi extends SpellAbilityAi { if (destination.equals(ZoneType.Exile)) { // If Exiling things, don't give bonus to Tokens choice = ComputerUtilCard.getBestCreatureAI(list); - } else { + } else if (origin.equals(ZoneType.Graveyard)) { + choice = mostExpensive; + // Karmic Guide can chain another creature + for (Card c : list) { + if ("Karmic Guide".equals(c.getName())) { + choice = c; + break; + } + } + } else { choice = ComputerUtilCard.getBestCreatureToBounceAI(list); } } else { diff --git a/forge-gui/res/cardsfolder/k/karmic_guide.txt b/forge-gui/res/cardsfolder/k/karmic_guide.txt index 3481d828e56..f9465322de1 100644 --- a/forge-gui/res/cardsfolder/k/karmic_guide.txt +++ b/forge-gui/res/cardsfolder/k/karmic_guide.txt @@ -4,8 +4,9 @@ Types:Creature Angel Spirit PT:2/2 K:Flying K:Protection from black +K:Echo:3 W W T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigChangeZone | TriggerDescription$ When CARDNAME enters the battlefield, return target creature card from your graveyard to the battlefield. SVar:TrigChangeZone:AB$ChangeZone | Cost$ 0 | Origin$ Graveyard | Destination$ Battlefield | ValidTgts$ Creature.YouCtrl -K:Echo:3 W W +SVar:PlayMain1:TRUE SVar:Picture:http://www.wizards.com/global/images/magic/general/karmic_guide.jpg Oracle:Flying, protection from black\nEcho {3}{W}{W} (At the beginning of your upkeep, if this came under your control since the beginning of your last upkeep, sacrifice it unless you pay its echo cost.)\nWhen Karmic Guide enters the battlefield, return target creature card from your graveyard to the battlefield.