Fix first strike damage logic (#12297)

* add tests for first strike rules

* fix first strike damage logic per 702.7c

* add more test cases

* update logic to not check actual damage dealt

* add another test case

* adjust naming and docs
This commit is contained in:
xenohedron 2024-05-26 20:01:01 -04:00 committed by GitHub
parent 8dfafad95c
commit 33fe4730ae
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
4 changed files with 489 additions and 56 deletions

View file

@ -1386,6 +1386,7 @@ public abstract class GameImpl implements Game {
List<Watcher> newWatchers = new ArrayList<>();
newWatchers.add(new CastSpellLastTurnWatcher());
newWatchers.add(new PlayerLostLifeWatcher());
newWatchers.add(new FirstStrikeWatcher()); // required for combat code
newWatchers.add(new BlockedAttackerWatcher());
newWatchers.add(new PlanarRollWatcher()); // needed for RollDiceTest (planechase code needs improves)
newWatchers.add(new AttackedThisTurnWatcher());