mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-17 19:28:01 +00:00
CardFactoryUtil: fixed copySpellAbility with ActivatingPlayer
This commit is contained in:
@@ -17,11 +17,18 @@
|
|||||||
*/
|
*/
|
||||||
package forge.game.card;
|
package forge.game.card;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Map.Entry;
|
||||||
|
|
||||||
|
import com.google.common.base.Joiner;
|
||||||
|
import com.google.common.collect.Iterables;
|
||||||
|
import com.google.common.collect.Lists;
|
||||||
|
|
||||||
import forge.ImageKeys;
|
import forge.ImageKeys;
|
||||||
import forge.StaticData;
|
import forge.StaticData;
|
||||||
import forge.card.CardStateName;
|
|
||||||
import forge.card.CardRules;
|
import forge.card.CardRules;
|
||||||
import forge.card.CardSplitType;
|
import forge.card.CardSplitType;
|
||||||
|
import forge.card.CardStateName;
|
||||||
import forge.card.CardType;
|
import forge.card.CardType;
|
||||||
import forge.card.CardType.CoreType;
|
import forge.card.CardType.CoreType;
|
||||||
import forge.card.ICardFace;
|
import forge.card.ICardFace;
|
||||||
@@ -43,14 +50,6 @@ import forge.game.zone.ZoneType;
|
|||||||
import forge.item.IPaperCard;
|
import forge.item.IPaperCard;
|
||||||
import forge.item.PaperCard;
|
import forge.item.PaperCard;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
|
||||||
import java.util.Arrays;
|
|
||||||
import java.util.List;
|
|
||||||
import java.util.Map.Entry;
|
|
||||||
|
|
||||||
import com.google.common.base.Joiner;
|
|
||||||
import com.google.common.collect.Iterables;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* <p>
|
* <p>
|
||||||
* AbstractCardFactory class.
|
* AbstractCardFactory class.
|
||||||
@@ -183,7 +182,7 @@ public class CardFactory {
|
|||||||
if (newColor.equals("ChosenColor")) {
|
if (newColor.equals("ChosenColor")) {
|
||||||
tmp = CardUtil.getShortColorsString(source.getChosenColors());
|
tmp = CardUtil.getShortColorsString(source.getChosenColors());
|
||||||
} else {
|
} else {
|
||||||
tmp = CardUtil.getShortColorsString(new ArrayList<String>(Arrays.asList(newColor.split(","))));
|
tmp = CardUtil.getShortColorsString(Lists.newArrayList(newColor.split(",")));
|
||||||
}
|
}
|
||||||
final String finalColors = tmp;
|
final String finalColors = tmp;
|
||||||
|
|
||||||
@@ -644,6 +643,7 @@ public class CardFactory {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public static void copySpellAbility(SpellAbility from, SpellAbility to) {
|
public static void copySpellAbility(SpellAbility from, SpellAbility to) {
|
||||||
|
to.setActivatingPlayer(from.getActivatingPlayer());
|
||||||
to.setDescription(from.getDescription());
|
to.setDescription(from.getDescription());
|
||||||
to.setStackDescription(from.getDescription());
|
to.setStackDescription(from.getDescription());
|
||||||
|
|
||||||
@@ -693,7 +693,7 @@ public class CardFactory {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private static String[] getCardTypes(Card c) {
|
private static String[] getCardTypes(Card c) {
|
||||||
List<String> relevantTypes = new ArrayList<String>();
|
List<String> relevantTypes = Lists.newArrayList();
|
||||||
for (CoreType t : c.getType().getCoreTypes()) {
|
for (CoreType t : c.getType().getCoreTypes()) {
|
||||||
relevantTypes.add(t.name());
|
relevantTypes.add(t.name());
|
||||||
}
|
}
|
||||||
@@ -720,6 +720,7 @@ public class CardFactory {
|
|||||||
return c;
|
return c;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public String toString() {
|
public String toString() {
|
||||||
StringBuilder sb = new StringBuilder();
|
StringBuilder sb = new StringBuilder();
|
||||||
sb.append(name).append(',');
|
sb.append(name).append(',');
|
||||||
@@ -765,7 +766,7 @@ public class CardFactory {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public static List<Card> makeToken(final TokenInfo tokenInfo, final Player controller) {
|
public static List<Card> makeToken(final TokenInfo tokenInfo, final Player controller) {
|
||||||
final List<Card> list = new ArrayList<Card>();
|
final List<Card> list = Lists.newArrayList();
|
||||||
final Card c = tokenInfo.toCard(controller.getGame());
|
final Card c = tokenInfo.toCard(controller.getGame());
|
||||||
final int multiplier = controller.getTokenDoublersMagnitude();
|
final int multiplier = controller.getTokenDoublersMagnitude();
|
||||||
for (int i = 0; i < multiplier; i++) {
|
for (int i = 0; i < multiplier; i++) {
|
||||||
|
|||||||
Reference in New Issue
Block a user