diff --git a/Mage/src/mage/abilities/AbilityImpl.java b/Mage/src/mage/abilities/AbilityImpl.java index 1648581dfda..98fffb6eab9 100644 --- a/Mage/src/mage/abilities/AbilityImpl.java +++ b/Mage/src/mage/abilities/AbilityImpl.java @@ -482,16 +482,18 @@ public abstract class AbilityImpl> implements Ability { } } - MageObject object = game.getObject(getSourceId()); - if (object != null && !object.getAbilities().contains(this)) { - boolean found = false; - // unfortunately we need to handle double faced cards separately and only this way - if (object instanceof PermanentCard && ((PermanentCard)object).canTransform()) { - PermanentCard permanent = (PermanentCard)object; - found = permanent.getSecondCardFace().getAbilities().contains(this) || permanent.getCard().getAbilities().contains(this); - } - if (!found) { - return false; + if (!(this instanceof MageSingleton)) { + MageObject object = game.getObject(getSourceId()); + if (object != null && !object.getAbilities().contains(this)) { + boolean found = false; + // unfortunately we need to handle double faced cards separately and only this way + if (object instanceof PermanentCard && ((PermanentCard)object).canTransform()) { + PermanentCard permanent = (PermanentCard)object; + found = permanent.getSecondCardFace().getAbilities().contains(this) || permanent.getCard().getAbilities().contains(this); + } + if (!found) { + return false; + } } }