* no need to specify mana cost, just add cost
* handle all mana costs through addcost method only
* eliminate another constructor
* more constructor cleanup
* Rework AsThoughEffect
* some cleanup of MageIdentifer
* refactor ActivationStatus
* fix bolas's citadel
* fix a couple of the Alternative Cost being applied too broadly.
* fix Risen Executioneer
* allow cancellation of AsThough choice.
* fix One with the Multiverse
* cleanup cards needing their own MageIdentifier
* last couple of fixes
* apply reviews for cleaner code.
* some more cleanup
1a. Make `costs`, `manaCosts`, and `manaCostsToPay` private in `AbilityImpl` with access through getters/setters
1b. fix cost adjuster for imprinted cards affected by the above
2a. Lazy instantiation for rarely used `data` field in `TargetPointerImpl`
3a. Pre-allocate certain array sizes in `Modes` and `CostsImpl`
4a. Make `manaTemplate` private in `BasicManaEffect`, copy when passing outside the class
4b. Don't copy `manaTemplate` in copy constructor since it doesn't change
4c. Add comments explaining copy usage for `manaTemplate`
4d. Remove redundant variable assignment and make fields final
---------
Co-authored-by: xenohedron <xenohedron@users.noreply.github.com>
* refactor SacrificeCostManaValue to be an enum.
* [CMM] Implement Demon of Fates Design
* Add Unit Tests, including one bug on alternative cost.
* fix alternativeCosts made from dynamicCost returning that they were not activated when paid.
* fix small issues, add hint
* cleanup tests and add a couple
* Capitalize enum instances
* Minor fixes
* simplify the ContinuousEffect
* use the ConditionPermanentHint made for the Demon
* fix text
* extra deck cards not counted in deck size
* extra deck handling in deckbuilder
* move responsibility for extraDeckCard boolean to CardImpl
* remove redundant field copy
- fixed miss phase changed events and logs in some use cases;
- added source info in turn modification logs;
- added game logs for take and lost control of the spell (example: Word of Command)
- added game logs for skip step;
- added game logs for extra step;
- added game logs for skip phase;
* UI Changes
* Add new buffer time options
* Main functionality
* Final implementation
Also added player UI for when they are using their buffer time (timer turns green)
* Fix Ring-bearer choosing & add some GUI + logs
* use a ring svg in a separate gold panel
* use a fontawesome svg
* add a couple null checks, group icon with commander
* rework rinbearer logic according to review
* fix typo in game log
* small fixes
* Added minor documentation and TODO questions
* Fixed typo
* Address one set of comments
* merge fix
* remove commented code
---------
Co-authored-by: xenohedron <xenohedron@users.noreply.github.com>
* remove skip
* initial implementation of the ring mechanic
* some changes
* rework ring-bearer choosing
* [LTR] Implement Call of the Ring
* update ring-bearer condition