mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-19 04:08:01 +00:00
fixed calculateAmount so Remembered and Imprint work when ability != null
This commit is contained in:
@@ -1183,7 +1183,27 @@ public class AbilityFactory {
|
|||||||
if (calcX[0].startsWith("Number")) {
|
if (calcX[0].startsWith("Number")) {
|
||||||
return CardFactoryUtil.xCount(card, card.getSVar(amount)) * multiplier;
|
return CardFactoryUtil.xCount(card, card.getSVar(amount)) * multiplier;
|
||||||
}
|
}
|
||||||
|
else if (calcX[0].startsWith("Remembered")) {
|
||||||
|
// Add whole Remembered list to handlePaid
|
||||||
|
CardList list = new CardList();
|
||||||
|
for (Object o : card.getRemembered()) {
|
||||||
|
if (o instanceof Card) {
|
||||||
|
list.add(AllZoneUtil.getCardState((Card) o));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return CardFactoryUtil.handlePaid(list, calcX[1], card) * multiplier;
|
||||||
|
|
||||||
|
}
|
||||||
|
else if (calcX[0].startsWith("Imprinted")) {
|
||||||
|
// Add whole Imprinted list to handlePaid
|
||||||
|
CardList list = new CardList();
|
||||||
|
for (Card c : card.getImprinted()) {
|
||||||
|
list.add(AllZoneUtil.getCardState(c));
|
||||||
|
}
|
||||||
|
|
||||||
|
return CardFactoryUtil.handlePaid(list, calcX[1], card) * multiplier;
|
||||||
|
}
|
||||||
else if (ability != null) {
|
else if (ability != null) {
|
||||||
//Player attribute counting
|
//Player attribute counting
|
||||||
if (calcX[0].startsWith("TargetedPlayer")) {
|
if (calcX[0].startsWith("TargetedPlayer")) {
|
||||||
@@ -1275,26 +1295,6 @@ public class AbilityFactory {
|
|||||||
|
|
||||||
return CardFactoryUtil.handlePaid(list, calcX[1], card) * multiplier;
|
return CardFactoryUtil.handlePaid(list, calcX[1], card) * multiplier;
|
||||||
|
|
||||||
} else if (calcX[0].startsWith("Remembered")) {
|
|
||||||
// Add whole Remembered list to handlePaid
|
|
||||||
CardList list = new CardList();
|
|
||||||
for (Object o : card.getRemembered()) {
|
|
||||||
if (o instanceof Card) {
|
|
||||||
list.add(AllZoneUtil.getCardState((Card) o));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return CardFactoryUtil.handlePaid(list, calcX[1], card) * multiplier;
|
|
||||||
|
|
||||||
} else if (calcX[0].startsWith("Imprinted")) {
|
|
||||||
// Add whole Imprinted list to handlePaid
|
|
||||||
CardList list = new CardList();
|
|
||||||
for (Card c : card.getImprinted()) {
|
|
||||||
list.add(AllZoneUtil.getCardState(c));
|
|
||||||
}
|
|
||||||
|
|
||||||
return CardFactoryUtil.handlePaid(list, calcX[1], card) * multiplier;
|
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user