diff --git a/assets/data/enemy/enemy_01.png b/assets/data/enemy/enemy_01.png new file mode 100644 index 0000000..092473f Binary files /dev/null and b/assets/data/enemy/enemy_01.png differ diff --git a/lib/widgets/battle/battle_header.dart b/lib/widgets/battle/battle_header.dart index 9bd39bd..68664bd 100644 --- a/lib/widgets/battle/battle_header.dart +++ b/lib/widgets/battle/battle_header.dart @@ -29,7 +29,7 @@ class BattleHeader extends StatelessWidget { break; } - return "Tier $tier $tierName - $round"; + return "$tierName - $round"; } @override diff --git a/lib/widgets/battle/character_status_card.dart b/lib/widgets/battle/character_status_card.dart index 7349b20..c6072cf 100644 --- a/lib/widgets/battle/character_status_card.dart +++ b/lib/widgets/battle/character_status_card.dart @@ -109,12 +109,10 @@ class CharacterStatusCard extends StatelessWidget { BattleAnimationWidget( key: animationKey, child: Container( - width: 100, // 임시 크기 - height: 100, // 임시 크기 + width: isPlayer ? 100 : 200, // 플레이어 100, 적 200 + height: isPlayer ? 100 : 200, // 플레이어 100, 적 200 decoration: BoxDecoration( - color: isPlayer - ? Colors.lightBlue - : Colors.deepOrange, // 플레이어/적 구분 색상 + color: isPlayer ? Colors.lightBlue : null, borderRadius: BorderRadius.circular(8), ), child: Center( @@ -124,11 +122,12 @@ class CharacterStatusCard extends StatelessWidget { size: 60, color: ThemeConfig.textColorWhite, ) // 플레이어 아이콘 - : const Icon( - Icons.psychology, - size: 60, - color: ThemeConfig.textColorWhite, - ), // 적 아이콘 (몬스터 대신) + : Image.asset( + 'assets/data/enemy/enemy_01.png', + width: 200, + height: 200, + fit: BoxFit.contain, + ), // 적 이미지 ), ), ), diff --git a/prompt/00_project_context_restore.md b/prompt/00_project_context_restore.md index 7048256..e13d843 100644 --- a/prompt/00_project_context_restore.md +++ b/prompt/00_project_context_restore.md @@ -68,6 +68,21 @@ - **자동 저장:** 스테이지 클리어 시 `SaveManager`를 통해 자동 저장. - **Permadeath:** 패배 시 저장 데이터 삭제 (로그라이크 요소). +### G. 스테이지 시스템 (Stage System) + +- **Map Generation:** 진행에 따라 랜덤하게 다음 스테이지 타입이 결정됨 (현재는 단순 랜덤). +- **Underground Colosseum System (Rounds/Tiers):** + - **Round Progression:** 스테이지 진행(`stage` count)에 따라 난이도(Tier)가 상승. + - **Tier:** + - Tier 1: Stage 1 ~ 12 (지하 불법 투기장) + - Tier 2: Stage 13 ~ 24 (콜로세움) + - Tier 3: Stage 25+ (왕의 투기장) +- **Stage Types:** + - **Battle:** 일반 몬스터 전투. + - **Elite:** 강화된 몬스터 전투 (보상 증가, 12 스테이지마다 등장). + - **Shop:** 아이템 구매/판매/리롤 (5 스테이지마다 등장). + - **Rest:** 휴식 (8 스테이지마다 등장). + ### F. 코드 구조 (Code Structure - Barrel Pattern) - **Barrel File Pattern:** `lib/` 내의 모든 주요 디렉토리는 해당 폴더의 파일들을 묶어주는 단일 진입점 파일(`.dart`)을 가집니다. diff --git a/pubspec.yaml b/pubspec.yaml index 6e32ee5..3c4db17 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -2,7 +2,7 @@ name: game_test description: "A new Flutter project." # The following line prevents the package from being accidentally published to # pub.dev using `flutter pub publish`. This is preferred for private packages. -publish_to: 'none' # Remove this line if you wish to publish to pub.dev +publish_to: "none" # Remove this line if you wish to publish to pub.dev # The following defines the version and build number for your application. # A version number is three numbers separated by dots, like 1.2.43 @@ -53,7 +53,6 @@ dev_dependencies: # The following section is specific to Flutter packages. flutter: - # The following line ensures that the Material Icons font is # included with your application, so that you can use the icons in # the material Icons class. @@ -63,6 +62,7 @@ flutter: assets: - assets/data/ - assets/data/icon/ + - assets/data/enemy/ # An image asset can refer to one or more resolution-specific "variants", see # https://flutter.dev/to/resolution-aware-images