feat(battle-engine-port): M3 COMPLETE — fixed-damage spell resolves headless (leader-life-delta oracle passes)
Card 900124030 (ELF cost-3, when_play damage=3 to enemy leader) resolves to correct authoritative state headless via the IsForecast/IsRecovery + ActionProcessor.PlayCard path. New oracle dimension (opponent leader-life delta) passes; 3/3 tests green; engine still 0 errors; check_drift clean. Four headless gaps, each mechanical (no logic/Unity wall): - Data seam: InitLeaderLife (SetupInitialGameState->InitializeClassLife subset); leader BaseMaxLife was 0 => game-over => play silently rejected. M2 missed it (only asserted leader life unchanged: 0==0). - Runtime cast: re-attach IClassBattleCardView on the generated NullClassBattleCardView stub (members already present; base-clause recovery stripped the decl). Compiled fine -> M1 loop never surfaced it. - M1 mis-cut: copy NullVfxWithLoading verbatim (its GetInstance() lazy singleton was stubbed to default!/null). Same pattern as M2 NullCardVfxCreator. - Card events: CreateHeadlessHandCard now calls SetupCardEvent so a spell's OnPlay->RemoveSpellCardFromHand / OnFinishWhenPlaySkill->AddSpellCardToCemetery fire (the bare CreateCardWithoutResources seam skips them). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -3311,3 +3311,4 @@ llField.cs llField.cs a0e0eaed3f22a8c4ce47f82fa80346e3b99e3ac0a6765e1ad4ade3a87c
|
||||
Wizard.Battle.View/CardIconControl.cs Wizard.Battle.View/CardIconControl.cs affd5a289a04bc9f446f3e892403dd9cd560ee557de1e5cd743dcb031dab280c 0
|
||||
Wizard.Battle.View.Vfx/NullCardVfxCreator.cs Wizard.Battle.View.Vfx/NullCardVfxCreator.cs bf8f34d27f41df0dc728c47f874465869649299a5195c2d616597d7a37c581f5 0
|
||||
Wizard.Battle.View.Vfx/NotEmptyNullVfx.cs Wizard.Battle.View.Vfx/NotEmptyNullVfx.cs fd471e4254bde6dded2c1447714e605a9889b97b01a834bc616585bcff738825 0
|
||||
Wizard.Battle.View.Vfx/NullVfxWithLoading.cs Wizard.Battle.View.Vfx/NullVfxWithLoading.cs c297c7c7e53fc9a41e46b5f52baa65f905bc51943d6a0fbe683a98fc0668b9b9 0
|
||||
|
||||
|
Reference in New Issue
Block a user