mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-19 12:18:00 +00:00
CardFactoryUtil expand Devour keyword possibilities
This commit is contained in:
@@ -2038,16 +2038,23 @@ public class CardFactoryUtil {
|
|||||||
} else if (keyword.startsWith("Devour")) {
|
} else if (keyword.startsWith("Devour")) {
|
||||||
final String[] k = keyword.split(":");
|
final String[] k = keyword.split(":");
|
||||||
final String magnitude = k[1];
|
final String magnitude = k[1];
|
||||||
|
String valid = "Creature";
|
||||||
|
final String[] s = k[0].split(" ");
|
||||||
|
if (s.length > 1) {
|
||||||
|
valid = s[1].substring(0, 1).toUpperCase() + s[1].substring(1);
|
||||||
|
final StringBuilder d = new StringBuilder();
|
||||||
|
}
|
||||||
|
|
||||||
String sacrificeStr = "DB$ Sacrifice | Defined$ You | Amount$ DevourSacX | "
|
String sacrificeStr = "DB$ Sacrifice | Defined$ You | Amount$ DevourSacX | SacValid$ " + valid +
|
||||||
+ "SacValid$ Creature.Other | SacMessage$ another creature (Devour "+ magnitude + ") | "
|
".Other | SacMessage$ another " + valid.toLowerCase() + " (Devour " + magnitude +
|
||||||
+ "RememberSacrificed$ True | Optional$ True | Devour$ True";
|
") | RememberSacrificed$ True | Optional$ True | Devour$ True";
|
||||||
|
|
||||||
String counterStr = "DB$ PutCounter | ETB$ True | Defined$ Self | CounterType$ P1P1 | CounterNum$ DevourX";
|
String counterStr = "DB$ PutCounter | ETB$ True | Defined$ Self | CounterType$ P1P1 | CounterNum$ DevourX";
|
||||||
String cleanupStr = "DB$ Cleanup | ClearRemembered$ True";
|
String cleanupStr = "DB$ Cleanup | ClearRemembered$ True";
|
||||||
|
|
||||||
AbilitySub sacrificeSA = (AbilitySub) AbilityFactory.getAbility(sacrificeStr, card);
|
AbilitySub sacrificeSA = (AbilitySub) AbilityFactory.getAbility(sacrificeStr, card);
|
||||||
sacrificeSA.setSVar("DevourSacX", "Count$Valid Creature.YouCtrl+Other");
|
String value = "Count$Valid " + valid + ".YouCtrl+Other";
|
||||||
|
sacrificeSA.setSVar("DevourSacX", value);
|
||||||
|
|
||||||
AbilitySub counterSA = (AbilitySub) AbilityFactory.getAbility(counterStr, card);
|
AbilitySub counterSA = (AbilitySub) AbilityFactory.getAbility(counterStr, card);
|
||||||
counterSA.setSVar("DevourX", "SVar$DevourSize/Times." + magnitude);
|
counterSA.setSVar("DevourX", "SVar$DevourSize/Times." + magnitude);
|
||||||
|
|||||||
Reference in New Issue
Block a user