From d2fb20b3412a07cbb924736c32f73060c4d72284 Mon Sep 17 00:00:00 2001 From: Hanmac Date: Thu, 6 Oct 2016 15:51:04 +0000 Subject: [PATCH] ChangeZoneEffect: Ninjutsu need to attack the same Defender as Returned Creature --- .../forge/game/ability/effects/ChangeZoneEffect.java | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/forge-game/src/main/java/forge/game/ability/effects/ChangeZoneEffect.java b/forge-game/src/main/java/forge/game/ability/effects/ChangeZoneEffect.java index 5da68587102..d0bff7c8b0c 100644 --- a/forge-game/src/main/java/forge/game/ability/effects/ChangeZoneEffect.java +++ b/forge-game/src/main/java/forge/game/ability/effects/ChangeZoneEffect.java @@ -542,9 +542,8 @@ public class ChangeZoneEffect extends SpellAbilityEffect { if (sa.hasParam("FaceDown")) { movedCard.setState(CardStateName.FaceDown, true); } - if (sa.hasParam("Ninjutsu") || sa.hasParam("Attacking")) { + if (sa.hasParam("Attacking")) { // What should they attack? - // TODO Ninjutsu needs to actually select the Defender, instead of auto selecting player FCollectionView defenders = game.getCombat().getDefenders(); if (!defenders.isEmpty()) { // Blockeres are already declared, set this to unblocked @@ -553,6 +552,14 @@ public class ChangeZoneEffect extends SpellAbilityEffect { game.fireEvent(new GameEventCombatChanged()); } } + if (sa.hasParam("Ninjutsu")) { + // Ninjutsu need to get the Defender of the Returned Creature + final Card returned = sa.getPaidList("Returned").getFirst(); + final GameEntity defender = game.getCombat().getDefenderByAttacker(returned); + game.getCombat().addAttacker(tgtC, defender); + game.getCombat().getBandOfAttacker(tgtC).setBlocked(false); + game.fireEvent(new GameEventCombatChanged()); + } if (sa.hasParam("Tapped") || sa.hasParam("Ninjutsu")) { tgtC.setTapped(true); }