feat(game): 포션 시스템 및 UI 패널 추가
- 포션 시스템 구현 (PotionService, Potion 모델) - 포션 인벤토리 패널 위젯 - 활성 버프 패널 위젯 - 장비 스탯 패널 위젯 - 스킬 시스템 확장 - 일본어 번역 추가 - 전투 이벤트/상태 모델 개선
This commit is contained in:
@@ -26,6 +26,15 @@ enum CombatEventType {
|
||||
|
||||
/// 플레이어 버프
|
||||
playerBuff,
|
||||
|
||||
/// DOT 틱 데미지
|
||||
dotTick,
|
||||
|
||||
/// 물약 사용
|
||||
playerPotion,
|
||||
|
||||
/// 물약 드랍
|
||||
potionDrop,
|
||||
}
|
||||
|
||||
/// 전투 이벤트 (Combat Event)
|
||||
@@ -188,4 +197,51 @@ class CombatEvent {
|
||||
skillName: skillName,
|
||||
);
|
||||
}
|
||||
|
||||
/// DOT 틱 이벤트 생성
|
||||
factory CombatEvent.dotTick({
|
||||
required int timestamp,
|
||||
required String skillName,
|
||||
required int damage,
|
||||
required String targetName,
|
||||
}) {
|
||||
return CombatEvent(
|
||||
type: CombatEventType.dotTick,
|
||||
timestamp: timestamp,
|
||||
skillName: skillName,
|
||||
damage: damage,
|
||||
targetName: targetName,
|
||||
);
|
||||
}
|
||||
|
||||
/// 물약 사용 이벤트 생성
|
||||
factory CombatEvent.playerPotion({
|
||||
required int timestamp,
|
||||
required String potionName,
|
||||
required int healAmount,
|
||||
required bool isHp,
|
||||
}) {
|
||||
return CombatEvent(
|
||||
type: CombatEventType.playerPotion,
|
||||
timestamp: timestamp,
|
||||
skillName: potionName,
|
||||
healAmount: healAmount,
|
||||
// isHp를 구분하기 위해 targetName 사용 (HP/MP)
|
||||
targetName: isHp ? 'HP' : 'MP',
|
||||
);
|
||||
}
|
||||
|
||||
/// 물약 드랍 이벤트 생성
|
||||
factory CombatEvent.potionDrop({
|
||||
required int timestamp,
|
||||
required String potionName,
|
||||
required bool isHp,
|
||||
}) {
|
||||
return CombatEvent(
|
||||
type: CombatEventType.potionDrop,
|
||||
timestamp: timestamp,
|
||||
skillName: potionName,
|
||||
targetName: isHp ? 'HP' : 'MP',
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user