refactor(model): 전투 상태 및 종족 데이터 수정

- combat_state: 전투 상태 모델 필드 추가
- race_traits: 종족 특성 정리
- race_data: 종족 데이터 업데이트
This commit is contained in:
JiWoong Sul
2026-01-19 19:40:48 +09:00
parent 5cccd28b77
commit 0cccc17f1f
3 changed files with 9 additions and 6 deletions

View File

@@ -151,9 +151,9 @@ class RaceData {
}, },
passives: [ passives: [
PassiveAbility( PassiveAbility(
type: PassiveType.deathEquipmentPreserve, type: PassiveType.defenseBonus,
value: 1.0, value: 0.10,
description: '사망 시 장비 1개 유지', description: '방어력 +10%',
), ),
], ],
); );

View File

@@ -21,6 +21,7 @@ class CombatState {
this.activeDoTs = const [], this.activeDoTs = const [],
this.lastPotionUsedMs = 0, this.lastPotionUsedMs = 0,
this.activeDebuffs = const [], this.activeDebuffs = const [],
this.isFirstPlayerAttack = true,
}); });
/// 플레이어 전투 스탯 /// 플레이어 전투 스탯
@@ -59,6 +60,9 @@ class CombatState {
/// 몬스터에 적용된 활성 디버프 목록 /// 몬스터에 적용된 활성 디버프 목록
final List<ActiveBuff> activeDebuffs; final List<ActiveBuff> activeDebuffs;
/// 첫 번째 플레이어 공격 여부 (firstStrikeBonus 적용용)
final bool isFirstPlayerAttack;
// ============================================================================ // ============================================================================
// 유틸리티 // 유틸리티
// ============================================================================ // ============================================================================
@@ -124,6 +128,7 @@ class CombatState {
List<DotEffect>? activeDoTs, List<DotEffect>? activeDoTs,
int? lastPotionUsedMs, int? lastPotionUsedMs,
List<ActiveBuff>? activeDebuffs, List<ActiveBuff>? activeDebuffs,
bool? isFirstPlayerAttack,
}) { }) {
return CombatState( return CombatState(
playerStats: playerStats ?? this.playerStats, playerStats: playerStats ?? this.playerStats,
@@ -140,6 +145,7 @@ class CombatState {
activeDoTs: activeDoTs ?? this.activeDoTs, activeDoTs: activeDoTs ?? this.activeDoTs,
lastPotionUsedMs: lastPotionUsedMs ?? this.lastPotionUsedMs, lastPotionUsedMs: lastPotionUsedMs ?? this.lastPotionUsedMs,
activeDebuffs: activeDebuffs ?? this.activeDebuffs, activeDebuffs: activeDebuffs ?? this.activeDebuffs,
isFirstPlayerAttack: isFirstPlayerAttack ?? this.isFirstPlayerAttack,
); );
} }

View File

@@ -20,9 +20,6 @@ enum PassiveType {
/// MP 배율 보너스 /// MP 배율 보너스
mpBonus, mpBonus,
/// 사망 시 장비 보존
deathEquipmentPreserve,
} }
/// 패시브 능력 (passive ability) /// 패시브 능력 (passive ability)