Merge branch 'fixtargets2' into 'master'

Fix Spell targets

See merge request core-developers/forge!4226
This commit is contained in:
Hans Mackowiak
2021-03-20 11:10:45 +00:00
7 changed files with 17 additions and 14 deletions

View File

@@ -239,6 +239,14 @@ public abstract class SpellAbilityEffect {
: AbilityUtils.getDefinedObjects(sa.getHostCard(), sa.getParam(definedParam), sa);
}
protected final static List<Card> getCardsfromTargets(final SpellAbility sa) {
List<Card> cards = getTargetCards(sa);
List<SpellAbility> spells = getTargetSpells(sa);
for (SpellAbility s : spells) {
cards.add(s.getHostCard());
}
return cards;
}
protected static void registerDelayedTrigger(final SpellAbility sa, String location, final Iterable<Card> crds) {
boolean intrinsic = sa.isIntrinsic();

View File

@@ -132,7 +132,7 @@ public class AnimateEffect extends AnimateEffectBase {
sVars.addAll(Arrays.asList(sa.getParam("sVars").split(",")));
}
List<Card> tgts = getTargetCards(sa);
List<Card> tgts = getCardsfromTargets(sa);
for (final Card c : tgts) {
doAnimate(c, sa, power, toughness, types, removeTypes, finalDesc,
@@ -210,7 +210,7 @@ public class AnimateEffect extends AnimateEffectBase {
final StringBuilder sb = new StringBuilder();
final List<Card> tgts = getTargetCards(sa);
final List<Card> tgts = getCardsfromTargets(sa);
for (final Card c : tgts) {
sb.append(c).append(" ");

View File

@@ -97,7 +97,7 @@ public class ChangeTextEffect extends SpellAbilityEffect {
changedTypeWordNew = null;
}
final List<Card> tgts = getTargetCards(sa);
final List<Card> tgts = getCardsfromTargets(sa);
for (final Card c : tgts) {
if (changedColorWordOriginal != null && changedColorWordNew != null) {
c.addChangedTextColorWord(changedColorWordOriginal, changedColorWordNew, timestamp);
@@ -156,7 +156,7 @@ public class ChangeTextEffect extends SpellAbilityEffect {
final StringBuilder sb = new StringBuilder();
sb.append("Change the text of ");
final List<Card> tgts = getTargetCards(sa);
final List<Card> tgts = getCardsfromTargets(sa);
for (final Card c : tgts) {
sb.append(c).append(" ");
}

View File

@@ -179,7 +179,7 @@ public class PumpEffect extends SpellAbilityEffect {
final StringBuilder sb = new StringBuilder();
List<GameEntity> tgts = Lists.newArrayList();
tgts.addAll(getTargetCards(sa));
tgts.addAll(getCardsfromTargets(sa));
if ((sa.usesTargeting() && sa.getTargetRestrictions().canTgtPlayer()) || sa.hasParam("Defined")) {
tgts.addAll(getTargetPlayers(sa));
}
@@ -279,7 +279,7 @@ public class PumpEffect extends SpellAbilityEffect {
}
List<GameEntity> tgts = Lists.newArrayList();
List<Card> tgtCards = getTargetCards(sa);
List<Card> tgtCards = getCardsfromTargets(sa);
List<Player> tgtPlayers = getTargetPlayers(sa);
tgts.addAll(tgtCards);
tgts.addAll(tgtPlayers);