mirror of
https://github.com/magefree/mage.git
synced 2026-01-25 20:59:14 -08:00
* Profane Command - Fixed a bug that target of second mode was not set correctly.
This commit is contained in:
parent
d69edc00c7
commit
e2b4128b2a
1 changed files with 16 additions and 17 deletions
|
|
@ -76,7 +76,7 @@ public class ProfaneCommand extends CardImpl {
|
||||||
// * Return target creature card with converted mana cost X or less from your graveyard to the battlefield.
|
// * Return target creature card with converted mana cost X or less from your graveyard to the battlefield.
|
||||||
Mode mode = new Mode();
|
Mode mode = new Mode();
|
||||||
mode.getEffects().add(new ReturnFromGraveyardToBattlefieldTargetEffect());
|
mode.getEffects().add(new ReturnFromGraveyardToBattlefieldTargetEffect());
|
||||||
mode.getTargets().add(new TargetCardInYourGraveyard(new FilterCreatureCard("creature card from your graveyard")));
|
mode.getTargets().add(new TargetCardInYourGraveyard(new FilterCreatureCard("creature card with converted mana cost X or less from your graveyard")));
|
||||||
this.getSpellAbility().addMode(mode);
|
this.getSpellAbility().addMode(mode);
|
||||||
|
|
||||||
// * Target creature gets -X/-X until end of turn.
|
// * Target creature gets -X/-X until end of turn.
|
||||||
|
|
@ -97,22 +97,21 @@ public class ProfaneCommand extends CardImpl {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void adjustTargets(Ability ability, Game game) {
|
public void adjustTargets(Ability ability, Game game) {
|
||||||
for (UUID modeId :ability.getModes().getSelectedModes()) {
|
// adjust targets is called for every selected mode
|
||||||
Mode mode = ability.getModes().get(modeId);
|
Mode mode = ability.getModes().getMode();
|
||||||
for (Effect effect :mode.getEffects()) {
|
for (Effect effect :mode.getEffects()) {
|
||||||
if (effect instanceof ReturnFromGraveyardToBattlefieldTargetEffect) {
|
if (effect instanceof ReturnFromGraveyardToBattlefieldTargetEffect) {
|
||||||
mode.getTargets().clear();
|
mode.getTargets().clear();
|
||||||
int xValue = ability.getManaCostsToPay().getX();
|
int xValue = ability.getManaCostsToPay().getX();
|
||||||
FilterCard filter = new FilterCreatureCard("creature card with converted mana cost " + xValue + " or less from your graveyard");
|
FilterCard filter = new FilterCreatureCard("creature card with converted mana cost " + xValue + " or less from your graveyard");
|
||||||
filter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.LessThan, xValue + 1));
|
filter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.LessThan, xValue + 1));
|
||||||
mode.getTargets().add(new TargetCardInYourGraveyard(filter));
|
mode.getTargets().add(new TargetCardInYourGraveyard(filter));
|
||||||
}
|
}
|
||||||
if (effect instanceof GainAbilityTargetEffect) {
|
if (effect instanceof GainAbilityTargetEffect) {
|
||||||
mode.getTargets().clear();
|
mode.getTargets().clear();
|
||||||
int xValue = ability.getManaCostsToPay().getX();
|
int xValue = ability.getManaCostsToPay().getX();
|
||||||
FilterCreaturePermanent filter = new FilterCreaturePermanent("creatures gain fear until end of turn");
|
FilterCreaturePermanent filter = new FilterCreaturePermanent("creatures gain fear until end of turn");
|
||||||
mode.getTargets().add(new TargetCreaturePermanent(0, xValue, filter, false));
|
mode.getTargets().add(new TargetCreaturePermanent(0, xValue, filter, false));
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue