2.4 KiB
2.4 KiB
64. UI 개선 및 에셋 시스템 복구 (UI Enhancements & Asset System Fixes)
1. 개요 (Overview)
이 작업은 사용자 경험(UX)을 저해하는 UI 요소(하단 알림)를 개선하고, 프로젝트 구조 변경 중 발생한 에셋 로딩 오류(404)를 해결하며, 상점 UI의 문법적 오류를 수정하는 데 중점을 두었습니다. 또한 적 이미지 표시 방식을 개선하여 시각적 완성도를 높였습니다.
2. 주요 변경 사항 (Key Changes)
A. Top-Aligned Toast Notification (ToastUtils)
- 문제: 기존
SnackBar가 하단 네비게이션 바를 가려 사용자가 버튼을 조작하는 데 불편함이 있었음. - 해결:
Overlay를 사용하여 화면 상단에 알림을 띄우는ToastUtils.showTopToast를 구현. - 개선:
Curves.easeOutBack애니메이션 사용 시Opacity값이 1.0을 초과하여 발생하는 크래시 버그를clamp(0.0, 1.0)으로 수정하여 해결. - 적용:
BattleScreen,ShopUI등 주요 화면의 모든 알림을 교체.
B. Enemy Asset System & UI
- 이미지 로딩:
CharacterStatusCard에서 적 이미지를enemies.json의 경로(assets/images/enemies/)를 통해 동적으로 로드하도록 변경. - 크기 확대: 적 이미지의 표시 크기를 200x200으로 확대하여 시각적 비중을 높임.
- 404 에러 수정:
assets/images/enemies/폴더 내에slime.png등 다수의 이미지 파일이 누락되어 발생한 404 에러를,park.png를 플레이스홀더로 복사하여 해결. (추후 실제 리소스로 교체 필요) - Pubspec 업데이트:
pubspec.yaml에assets/images/enemies/경로를 명시적으로 선언.
C. Stage System UI
- Tier 표시:
BattleHeader에서 스테이지 진행에 따라 Tier 1(지하 불법 투기장), Tier 2(콜로세움), Tier 3(왕의 투기장) 텍스트가 표시되도록 로직 개선. - Boss 표시: 각 Tier의 마지막 스테이지(12, 24, 36...)에서 "BOSS" 라벨이 표시되도록 구현.
D. ShopUI Syntax Fixes
- 버그 수정:
ShopUI.dart에서 발생한 괄호 매칭 오류, 중괄호 누락,BattleProvider전달 오류 등을 전면 수정하여 정상 동작하도록 복구.
3. 결과 (Result)
- 알림이 더 이상 중요 UI를 가리지 않음.
- 적 이미지가 정상적으로 로드되며(플레이스홀더 포함), 에러 로그가 제거됨.
- 상점 기능이 정상화됨.