feat(game): 포션 시스템 및 UI 패널 추가
- 포션 시스템 구현 (PotionService, Potion 모델) - 포션 인벤토리 패널 위젯 - 활성 버프 패널 위젯 - 장비 스탯 패널 위젯 - 스킬 시스템 확장 - 일본어 번역 추가 - 전투 이벤트/상태 모델 개선
This commit is contained in:
@@ -5,6 +5,7 @@ import 'package:askiineverdie/src/core/model/combat_state.dart';
|
||||
import 'package:askiineverdie/src/core/model/equipment_item.dart';
|
||||
import 'package:askiineverdie/src/core/model/equipment_slot.dart';
|
||||
import 'package:askiineverdie/src/core/model/item_stats.dart';
|
||||
import 'package:askiineverdie/src/core/model/potion.dart';
|
||||
import 'package:askiineverdie/src/core/model/skill.dart';
|
||||
import 'package:askiineverdie/src/core/util/deterministic_random.dart';
|
||||
|
||||
@@ -23,6 +24,7 @@ class GameState {
|
||||
ProgressState? progress,
|
||||
QueueState? queue,
|
||||
SkillSystemState? skillSystem,
|
||||
PotionInventory? potionInventory,
|
||||
this.deathInfo,
|
||||
}) : rng = DeterministicRandom.clone(rng),
|
||||
traits = traits ?? Traits.empty(),
|
||||
@@ -32,7 +34,8 @@ class GameState {
|
||||
spellBook = spellBook ?? SpellBook.empty(),
|
||||
progress = progress ?? ProgressState.empty(),
|
||||
queue = queue ?? QueueState.empty(),
|
||||
skillSystem = skillSystem ?? SkillSystemState.empty();
|
||||
skillSystem = skillSystem ?? SkillSystemState.empty(),
|
||||
potionInventory = potionInventory ?? const PotionInventory();
|
||||
|
||||
factory GameState.withSeed({
|
||||
required int seed,
|
||||
@@ -44,6 +47,7 @@ class GameState {
|
||||
ProgressState? progress,
|
||||
QueueState? queue,
|
||||
SkillSystemState? skillSystem,
|
||||
PotionInventory? potionInventory,
|
||||
DeathInfo? deathInfo,
|
||||
}) {
|
||||
return GameState(
|
||||
@@ -56,6 +60,7 @@ class GameState {
|
||||
progress: progress,
|
||||
queue: queue,
|
||||
skillSystem: skillSystem,
|
||||
potionInventory: potionInventory,
|
||||
deathInfo: deathInfo,
|
||||
);
|
||||
}
|
||||
@@ -72,6 +77,9 @@ class GameState {
|
||||
/// 스킬 시스템 상태 (Phase 3)
|
||||
final SkillSystemState skillSystem;
|
||||
|
||||
/// 물약 인벤토리
|
||||
final PotionInventory potionInventory;
|
||||
|
||||
/// 사망 정보 (Phase 4, null이면 생존 중)
|
||||
final DeathInfo? deathInfo;
|
||||
|
||||
@@ -88,6 +96,7 @@ class GameState {
|
||||
ProgressState? progress,
|
||||
QueueState? queue,
|
||||
SkillSystemState? skillSystem,
|
||||
PotionInventory? potionInventory,
|
||||
DeathInfo? deathInfo,
|
||||
bool clearDeathInfo = false,
|
||||
}) {
|
||||
@@ -101,6 +110,7 @@ class GameState {
|
||||
progress: progress ?? this.progress,
|
||||
queue: queue ?? this.queue,
|
||||
skillSystem: skillSystem ?? this.skillSystem,
|
||||
potionInventory: potionInventory ?? this.potionInventory,
|
||||
deathInfo: clearDeathInfo ? null : (deathInfo ?? this.deathInfo),
|
||||
);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user