xenodron mentionned that one of the use of setSourceId is to more easily find the Event that use non-standard
sourceId.
So reverting the change made in a previous commit.
It was a non-functional change meant to ease new
BatchEvent sharing sourceId, but I'll use setSourceId
instead there.
I did check the BEGINNING_PHASE_PRE usage, and found none that wanted to watch the extra beginning phases.
Of note, we may want to have separate 'beginning of turn'/'beginning of game' events, if there is ever a way to skip beginning phases.
The frameStyle was unexpectedly null when displaying the trigger in the view to choose trigger panels.
It was good on the stack so I missed that in initial implementation.
Bug showed up once there was another trigger on Beginning of Main Phase, for instance Coalition Relic.
The lack of frameStyle lead to a rendering NPE.
* game: now all playable calculations done in game simulation, outside real game (no more freeze and ruined games by wrong Nyxbloom Ancient and other cards with wrong replacement dialog);
* game: fixed multiple problems with triggers (wrong order, duplicated calls or "too many mana" bugs, see #8426, #12087);
* tests: added data integrity checks for game's triggers (3 enabled and 3 disabled due current game engine logic);
* simplify sacrifice target filters, part 1
* minor cleanup
* adjust SacrificeXTargetCost
* adjust Arctic Merfolk
* more cleanup
* remove unused
* adjust filters not used for sacrifice
* fix Hew the Entwood
* fix Nahiri's Lithoforming
* remove unused
* remove another
* cleanup more
* fix MegatronDestructiveForce
* remove next
* next batch of replacements
* remove next
* rename filter to match text
* finish removing
* use existing static filter
* gui: removed public deck hash info;
* gui: improved xmage dck-file - now it correctly load a card's amount (related to files from third party services);
* server: fixed wrong cheating warning on deck construction (closes#11877);
* refactor: removed outdated hash code and calculations;
* other: added docs, added multiple deck hash tests;
* Fix DealtDamageAttachedTriggeredAbility and update test
* Fix AegarTheFreezingFlameTriggeredAbility and add test
* fix enum reference for DealtDamageAttachedTriggeredAbility
* fix Pious Warrior
* Fix souls of the faultless
* fix Stuffy Doll
* Fix Vengeful Pharoah and add test
* fix Wall of Essence
* fix Wall of Souls
* fix Rite of Passage and add test
* incorporate simple fixes - these cards use no methods that aren't re-implemented in DamagedBatchForOnePermanentEvent
* fix Chandra's Spitfire
* fix Darien, King of Kjeldor
* fix Jace, Cunning Castaway
* fix Mindblade Render
* fix Popular Entertainer
* fix Swarmborn Giant
* fix The Raven's Warning
* fix War Elemental
* fix Wildfire Elemental
* make simple player damage trigger fixes
* Add isCombatDamage to DamagedBatchForOnePermanentEvent and utilize in trigger fixes
* fix Fall of Cair Andros
* fix Toralf, God of Fury
* optimize some imports
* create new abstract class for batch event framework
* adjust CardUtil.getEventTargets to support new framework
* update TappedBatchEvent to new framework
* update UntappedBatchEvent to new framework
* slight cleanup
* update LifeLostBatchEvent to new framework
* update ZoneChangeBatchEvent to new framework
* complete refactor by moving damage events to new framework
* remove old code no longer used
* clean up some nonsense code in star wars card
* fix watcher checking id before event type
* fix wrong id usage
* fix missed wrong id usage