diff --git a/src/magic/model/MagicPlayer.java b/src/magic/model/MagicPlayer.java index e575567ee4..78d1a4a81e 100644 --- a/src/magic/model/MagicPlayer.java +++ b/src/magic/model/MagicPlayer.java @@ -198,7 +198,7 @@ public class MagicPlayer implements MagicTarget { } public boolean canLose() { - return getCount(MagicStaticLocalVariable.platinumAngel)==0; + return MagicStaticLocalVariable.canLose(this); } /** Life to use when determining if a player has lost. */ @@ -465,7 +465,7 @@ public class MagicPlayer implements MagicTarget { @Override public boolean isValidTarget(final MagicGame game,final MagicSource source) { - if (source.getController()!=this&&getCount(MagicStaticLocalVariable.spiritOfTheHearth)>0) { + if (source.getController() != this && !MagicStaticLocalVariable.canTarget(this)) { return false; } return true; diff --git a/src/magic/model/variable/MagicStaticLocalVariable.java b/src/magic/model/variable/MagicStaticLocalVariable.java index b8dc4a8bd6..1961fda7ff 100644 --- a/src/magic/model/variable/MagicStaticLocalVariable.java +++ b/src/magic/model/variable/MagicStaticLocalVariable.java @@ -42,14 +42,22 @@ public class MagicStaticLocalVariable extends MagicDummyLocalVariable { private static int levitation; private static int madrushCyclops; private static int murkfiendLiege; - public static int platinumAngel; // You can't lose the game. + private static int platinumAngel; // You can't lose the game. private static int razorjawOni; - public static int spiritOfTheHearth; // You can't be target of spells or abilities your opponent controls. + private static int spiritOfTheHearth; // You can't be target of spells or abilities your opponent controls. private static int tolsimirWolfblood; private static int trueConviction; private static int urabraskTheHidden; private static int veteranArmorer; private static int windbriskRaptor; + + public static boolean canLose(final MagicPlayer controller) { + return controller.getCount(platinumAngel) == 0; + } + + public static boolean canTarget(final MagicPlayer controller) { + return controller.getCount(spiritOfTheHearth) == 0; + } private int getOtherCount(final int cardDefinitionIndex,final MagicPermanent permanent,final int count) { return permanent.getCardDefinition().getIndex() != cardDefinitionIndex ? count : count - 1;