Merge pull request #11723 from DominionSpy/case-of-the-pilfered-proof

[MKM] Implement Case of the Pilfered Proof
This commit is contained in:
Matthew Wilson 2024-04-09 14:48:27 +03:00 committed by GitHub
commit 6fffc2aeb0
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
3 changed files with 184 additions and 3 deletions

View file

@ -7,6 +7,7 @@ import mage.abilities.condition.common.SolvedSourceCondition;
import mage.abilities.decorator.ConditionalActivatedAbility;
import mage.abilities.decorator.ConditionalAsThoughEffect;
import mage.abilities.decorator.ConditionalContinuousEffect;
import mage.abilities.decorator.ConditionalReplacementEffect;
import mage.abilities.decorator.ConditionalTriggeredAbility;
import mage.abilities.effects.Effect;
import mage.abilities.effects.OneShotEffect;
@ -85,13 +86,14 @@ public class CaseAbility extends SimpleStaticAbility {
if (solvedAbility instanceof SimpleStaticAbility) {
for (Effect effect : solvedAbility.getEffects()) {
if (!(effect instanceof ConditionalContinuousEffect ||
effect instanceof ConditionalAsThoughEffect)) {
throw new IllegalArgumentException("solvedAbility must be one of ConditionalActivatedAbility, " +
effect instanceof ConditionalAsThoughEffect ||
effect instanceof ConditionalReplacementEffect)) {
throw new IllegalArgumentException("Wrong code usage: solvedAbility must be one of ConditionalActivatedAbility, " +
"ConditionalTriggeredAbility, or StaticAbility with conditional effects.");
}
}
} else {
throw new IllegalArgumentException("solvedAbility must be one of ConditionalActivatedAbility, " +
throw new IllegalArgumentException("Wrong code usage: solvedAbility must be one of ConditionalActivatedAbility, " +
"ConditionalTriggeredAbility, or StaticAbility with conditional effects.");
}
}