fix(deck): firstCardDamageBonus 게이트 class→kind (영구 미발동 버그)
ChargedBlow(class=warrior, kind=Attack, firstCardDamageBonus=2)의 첫-카드 보너스가 Lua·JS 양쪽에서 `c.class == "Attack"`로 게이트돼 있었다. class는 warrior/bandit 등이라 절대 "Attack"이 아니어서 보너스가 영구 미발동(죽은 코드). kind가 "Attack"이므로 `c.kind == "Attack"`로 수정(양쪽 미러). RED-GREEN 회귀 테스트 추가: class=warrior·kind=Attack 카드의 첫 카드 보너스로 7뎀 → 1턴 처치(미수정 시 5뎀 2턴). 테스트 84→85. 산출물 재생성 포함. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01UUvHKjrt8jqLzDeCsRRGmj
This commit is contained in:
@@ -342,7 +342,7 @@ export function simulateCombat(data, rng, stats) {
|
||||
if (c.damagePerDiscardedThisTurn) base += turnDiscardedCards * c.damagePerDiscardedThisTurn;
|
||||
if (c.damagePerSkillInHand) base += countOtherHandSkills(id) * c.damagePerSkillInHand;
|
||||
if (c.damagePerCardDrawnThisCombat) base += cardsDrawnThisCombat * c.damagePerCardDrawnThisCombat;
|
||||
if (c.class === 'Attack' && turnCardsPlayedThisTurn === 0 && c.firstCardDamageBonus) base += c.firstCardDamageBonus;
|
||||
if (c.kind === 'Attack' && turnCardsPlayedThisTurn === 0 && c.firstCardDamageBonus) base += c.firstCardDamageBonus;
|
||||
if (c.class === 'shiv') {
|
||||
if (powerFieldTotal('shivDamageBonus') > 0) base += powerFieldTotal('shivDamageBonus');
|
||||
if (!shivFirstDamageBonusUsed && powerFieldTotal('firstShivDamageBonus') > 0) base += powerFieldTotal('firstShivDamageBonus');
|
||||
|
||||
Reference in New Issue
Block a user