From a5bcf94a219bba2e490c22d15dae4db851aeb88a Mon Sep 17 00:00:00 2001 From: Evan Kranzler Date: Wed, 16 Jun 2021 07:07:17 -0400 Subject: [PATCH] fixed Gyome, Master Chef and Valentin, Dean of the Vein counting noncreature permanents (fixes #7913) --- Mage.Sets/src/mage/cards/g/GyomeMasterChef.java | 11 ++++++++--- Mage.Sets/src/mage/cards/v/ValentinDeanOfTheVein.java | 2 ++ 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/Mage.Sets/src/mage/cards/g/GyomeMasterChef.java b/Mage.Sets/src/mage/cards/g/GyomeMasterChef.java index d8a3d1d2512..1e51d518f2a 100644 --- a/Mage.Sets/src/mage/cards/g/GyomeMasterChef.java +++ b/Mage.Sets/src/mage/cards/g/GyomeMasterChef.java @@ -22,6 +22,7 @@ import mage.filter.common.FilterControlledPermanent; import mage.game.Game; import mage.game.events.EntersTheBattlefieldEvent; import mage.game.events.GameEvent; +import mage.game.permanent.Permanent; import mage.game.permanent.PermanentToken; import mage.game.permanent.token.FoodToken; import mage.target.common.TargetControlledPermanent; @@ -110,10 +111,14 @@ class GyomeMasterChefWatcher extends Watcher { @Override public void watch(GameEvent event, Game game) { - if (event.getType() == GameEvent.EventType.ENTERS_THE_BATTLEFIELD - && !(((EntersTheBattlefieldEvent) event).getTarget() instanceof PermanentToken)) { - playerMap.compute(event.getPlayerId(), (u, i) -> i != null ? Integer.sum(i, 1) : 1); + if (event.getType() != GameEvent.EventType.ENTERS_THE_BATTLEFIELD) { + return; } + Permanent permanent = ((EntersTheBattlefieldEvent) event).getTarget(); + if (permanent == null || permanent instanceof PermanentToken || !permanent.isCreature()) { + return; + } + playerMap.compute(event.getPlayerId(), (u, i) -> i != null ? Integer.sum(i, 1) : 1); } @Override diff --git a/Mage.Sets/src/mage/cards/v/ValentinDeanOfTheVein.java b/Mage.Sets/src/mage/cards/v/ValentinDeanOfTheVein.java index 850ead4f820..1a1007091c1 100644 --- a/Mage.Sets/src/mage/cards/v/ValentinDeanOfTheVein.java +++ b/Mage.Sets/src/mage/cards/v/ValentinDeanOfTheVein.java @@ -118,7 +118,9 @@ class ValentinDeanOfTheVeinEffect extends ReplacementEffectImpl { public boolean applies(GameEvent event, Ability source, Game game) { ZoneChangeEvent zEvent = (ZoneChangeEvent) event; return zEvent.isDiesEvent() + && zEvent.getTarget() != null && !(zEvent.getTarget() instanceof PermanentToken) + && zEvent.getTarget().isCreature() && game.getOpponents(zEvent.getTarget().getControllerId()).contains(source.getControllerId()); }