Commit graph

9 commits

Author SHA1 Message Date
Steven Knipe
660288dfd7 Use generics to ensure the correct class types stored inside the costs tags. 2023-11-17 02:37:06 -08:00
ssk97
bea33c7493
Costs Tag Tracking part 2: Tag system and X values, reworked deep copy code (#11406)
* Implement Costs Tag Map system

* Use Costs Tag Map system to store X value for spells, abilities, and resolving permanents

* Store Bestow without target's tags
Change functions for getting tags and storing the tags of a new permanent

* Create and use deep copy function in CardUtil, add Copyable<T> to many classes

* Fix Hall Of the Bandit Lord infinite loop

* Add additional comments

* Don't store null/empty costs tags maps (saves memory)

* Fix two more Watchers with Ability variable

* Add check for exact collection types during deep copy

* Use generics instead of pure type erasure during deep copy

* convert more code to using deep copy helper, everything use Object copier, add EnumMap

* fix documentation

* Don't need the separate null checks anymore (handled in deepCopyObject)

* Minor cleanup
2023-11-16 23:12:32 +04:00
Oleg Agafonov
cdf6fbb5d8 * GUI: fixed that announced X card icon info shows X=0 on next turns (example: Engineered Explosives, #8046); 2021-09-05 01:20:46 +04:00
Oleg Agafonov
76082e1d7a * GUI: added card icon for announced X value (card cast); 2021-07-19 13:40:21 +04:00
Evan Kranzler
91eb324847 updated ManaSpentToCastWatcher to default watcher list, reworked it to be game scope 2021-06-21 20:26:39 -04:00
Evan Kranzler
1fad23b9fb [C21] Implemented Fractal Harness 2021-04-27 20:06:49 -04:00
Evan Kranzler
fd7b8f29ca made many dynamicvalues into singleton enums 2019-01-12 21:29:02 -05:00
Fenhl
430ae503c7 Change all line endings to LF 2016-04-14 16:18:01 +00:00
poixen
46eb6c0525 Restructured Mage module 2015-11-29 21:56:49 +01:00
Renamed from Mage/src/mage/abilities/dynamicvalue/common/ManacostVariableValue.java (Browse further)