forked from External/mage
Improves: * refactor: split CostAdjuster logic in multiple parts - prepare X, prepare cost, increase cost, reduce cost; * refactor: improved VariableManaCost to support min/max values, playable and AI calculations, test framework; * refactor: improved EarlyTargetCost to support mana costs too (related to #13023); * refactor: migrated some cards with CostAdjuster and X to EarlyTargetCost (Knollspine Invocation, etc - related to #13023); * refactor: added shared code for "As an additional cost to cast this spell, discard X creature cards"; * refactor: added shared code for "X is the converted mana cost of the exiled card"; * tests: added dozens tests with cost adjusters; Bug fixes: * game: fixed that some cards with CostAdjuster ignore min/max limits for X (allow to choose any X, example: Scorched Earth, Open The Way); * game: fixed that some cards ask to announce already defined X values (example: Bargaining Table); * game: fixed that some cards with CostAdjuster do not support combo with other cost modification effects; * game, gui: fixed missing game logs about predefined X values; * game, gui: fixed wrong X icon for predefined X values; Test framework: * test framework: added X min/max check for wrong values; * test framework: added X min/max info in miss X value announce; * test framework: added check to find duplicated effect bugs (see assertNoDuplicatedEffects); Cards: * Open The Way - fixed that it allow to choose any X without limits (close #12810); * Unbound Flourishing - improved combo support for activated abilities with predefined X mana costs like Bargaining Table; |
||
|---|---|---|
| .. | ||
| functions | ||
| validation | ||
| CardUtil.java | ||
| CircularList.java | ||
| ClassScanner.java | ||
| Copier.java | ||
| CopierObjectInputStream.java | ||
| Copyable.java | ||
| DateFormat.java | ||
| DebugUtil.java | ||
| DeckBuildUtils.java | ||
| DeckUtil.java | ||
| FastByteArrayInputStream.java | ||
| FastByteArrayOutputStream.java | ||
| GameLog.java | ||
| JarVersion.java | ||
| JsonUtil.java | ||
| ManaUtil.java | ||
| MessageToClient.java | ||
| MultiAmountMessage.java | ||
| RandomUtil.java | ||
| StreamUtils.java | ||
| SubTypes.java | ||
| TargetAddress.java | ||
| ThreadLocalStringBuilder.java | ||
| ThreadUtils.java | ||
| TournamentUtil.java | ||
| TreeNode.java | ||
| XmageThreadFactory.java | ||