From 0cccc17f1f8022bedec1c670b71f53d88b46c4ca Mon Sep 17 00:00:00 2001 From: JiWoong Sul Date: Mon, 19 Jan 2026 19:40:48 +0900 Subject: [PATCH] =?UTF-8?q?refactor(model):=20=EC=A0=84=ED=88=AC=20?= =?UTF-8?q?=EC=83=81=ED=83=9C=20=EB=B0=8F=20=EC=A2=85=EC=A1=B1=20=EB=8D=B0?= =?UTF-8?q?=EC=9D=B4=ED=84=B0=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - combat_state: 전투 상태 모델 필드 추가 - race_traits: 종족 특성 정리 - race_data: 종족 데이터 업데이트 --- lib/data/race_data.dart | 6 +++--- lib/src/core/model/combat_state.dart | 6 ++++++ lib/src/core/model/race_traits.dart | 3 --- 3 files changed, 9 insertions(+), 6 deletions(-) diff --git a/lib/data/race_data.dart b/lib/data/race_data.dart index c883111..59988be 100644 --- a/lib/data/race_data.dart +++ b/lib/data/race_data.dart @@ -151,9 +151,9 @@ class RaceData { }, passives: [ PassiveAbility( - type: PassiveType.deathEquipmentPreserve, - value: 1.0, - description: '사망 시 장비 1개 유지', + type: PassiveType.defenseBonus, + value: 0.10, + description: '방어력 +10%', ), ], ); diff --git a/lib/src/core/model/combat_state.dart b/lib/src/core/model/combat_state.dart index 3140b3f..c393234 100644 --- a/lib/src/core/model/combat_state.dart +++ b/lib/src/core/model/combat_state.dart @@ -21,6 +21,7 @@ class CombatState { this.activeDoTs = const [], this.lastPotionUsedMs = 0, this.activeDebuffs = const [], + this.isFirstPlayerAttack = true, }); /// 플레이어 전투 스탯 @@ -59,6 +60,9 @@ class CombatState { /// 몬스터에 적용된 활성 디버프 목록 final List activeDebuffs; + /// 첫 번째 플레이어 공격 여부 (firstStrikeBonus 적용용) + final bool isFirstPlayerAttack; + // ============================================================================ // 유틸리티 // ============================================================================ @@ -124,6 +128,7 @@ class CombatState { List? activeDoTs, int? lastPotionUsedMs, List? activeDebuffs, + bool? isFirstPlayerAttack, }) { return CombatState( playerStats: playerStats ?? this.playerStats, @@ -140,6 +145,7 @@ class CombatState { activeDoTs: activeDoTs ?? this.activeDoTs, lastPotionUsedMs: lastPotionUsedMs ?? this.lastPotionUsedMs, activeDebuffs: activeDebuffs ?? this.activeDebuffs, + isFirstPlayerAttack: isFirstPlayerAttack ?? this.isFirstPlayerAttack, ); } diff --git a/lib/src/core/model/race_traits.dart b/lib/src/core/model/race_traits.dart index 1960e50..7dd5503 100644 --- a/lib/src/core/model/race_traits.dart +++ b/lib/src/core/model/race_traits.dart @@ -20,9 +20,6 @@ enum PassiveType { /// MP 배율 보너스 mpBonus, - - /// 사망 시 장비 보존 - deathEquipmentPreserve, } /// 패시브 능력 (passive ability)