mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-18 19:58:00 +00:00
AbilityUtils: add TriggeredPlayers to work with a List of Player objects
This commit is contained in:
@@ -580,16 +580,20 @@ public class AbilityUtils {
|
|||||||
}
|
}
|
||||||
return CardFactoryUtil.handlePaid(tgtList, calcX[1], card) * multiplier;
|
return CardFactoryUtil.handlePaid(tgtList, calcX[1], card) * multiplier;
|
||||||
}
|
}
|
||||||
|
if (calcX[0].startsWith("TriggeredPlayers") || calcX[0].equals("TriggeredCardController")) {
|
||||||
|
String key = calcX[0];
|
||||||
|
if (calcX[0].startsWith("TriggeredPlayers")) {
|
||||||
|
key = "Triggered" + key.substring(16);
|
||||||
|
}
|
||||||
|
final List<Player> players = new ArrayList<Player>();
|
||||||
|
Iterables.addAll(players, getDefinedPlayers(card, key, sa));
|
||||||
|
return CardFactoryUtil.playerXCount(players, calcX[1], card) * multiplier;
|
||||||
|
}
|
||||||
if (calcX[0].startsWith("TriggeredPlayer") || calcX[0].startsWith("TriggeredTarget")) {
|
if (calcX[0].startsWith("TriggeredPlayer") || calcX[0].startsWith("TriggeredTarget")) {
|
||||||
final SpellAbility root = sa.getRootAbility();
|
final SpellAbility root = sa.getRootAbility();
|
||||||
Object o = root.getTriggeringObject(calcX[0].substring(9));
|
Object o = root.getTriggeringObject(calcX[0].substring(9));
|
||||||
return o instanceof Player ? CardFactoryUtil.playerXProperty((Player) o, calcX[1], card) * multiplier : 0;
|
return o instanceof Player ? CardFactoryUtil.playerXProperty((Player) o, calcX[1], card) * multiplier : 0;
|
||||||
}
|
}
|
||||||
if (calcX[0].equals("TriggeredCardController")) {
|
|
||||||
final List<Player> players = new ArrayList<Player>();
|
|
||||||
Iterables.addAll(players, getDefinedPlayers(card, "TriggeredCardController", sa));
|
|
||||||
return CardFactoryUtil.playerXCount(players, calcX[1], card) * multiplier;
|
|
||||||
}
|
|
||||||
if (calcX[0].equals("TriggeredSpellAbility")) {
|
if (calcX[0].equals("TriggeredSpellAbility")) {
|
||||||
final SpellAbility root = sa.getRootAbility();
|
final SpellAbility root = sa.getRootAbility();
|
||||||
SpellAbility sat = (SpellAbility) root.getTriggeringObject("SpellAbility");
|
SpellAbility sat = (SpellAbility) root.getTriggeringObject("SpellAbility");
|
||||||
|
|||||||
Reference in New Issue
Block a user