앨범으로 돌려서 게임을 플레이하고 앱을 제대로 사용하세요!
🚀 개요
이 앱은 Flutter로 제작된 클래식 스페이스 인베이더 게임의 향상된 버전입니다. 최신 기능과 메커니즘을 다수 포함하여 더욱 몰입감 있고 역동적인 게임 경험을 제공합니다.
✨ 주요 특징
🎮 게임 메커니즘
- 향상된 그래픽으로 즐기는 클래식 스페이스 인베이더 게임플레이
- 5가지 게임 모드: 클래식, 서바이벌, 하드코어, 갤럭시 런, 보스 러시
- 플레이어의 실력에 따라 조정되는 동적 난이도
- 콤보 시스템으로 점수 증가
- 독특한 공격 패턴을 가진 보스
🔫 고급 무기 시스템
- 6가지 무기 종류:
- 기본 대포
- 확산탄
- 레이저 빔
- 플라즈마 대포
- 로켓 발사기
- 웨이브 건
- 에너지 회복 시스템이 적용된 무기
- 각 무기 종류별 시각 효과
⚡ 특수 능력
- 시간 지연 - 시간 지연
- 화면 클리어 - 화면 전체 제거
- 메가 실드 - 메가 실드
- 연사 속도 증가 - 연사 속도 증가
- 시각적 표시기가 있는 재장전 시스템
👾 고급 적
- 독특한 능력을 가진 8가지 적 종류:
- 저격수
- 탱크
- 치료사
- 소환사
- 팬텀
- 변신
- 보호막
- 순간 이동
- 특수 능력을 갖춘 적 AI
- 시각적인 체력 및 보호막 표시기
🌌 환경 위험 요소
- 6가지 위험 요소:
- 소행성
- 우주 잔해
- 블랙홀
- 태양 플레어
- 혜성
- 성운
- 동적 위험 요소 생성
- 전략적인 게임 플레이 요소
💎 개선된 보너스
- 10가지 보너스:
- 다중 사격
- 보호막
- 속도 부스트
- 생명력 증가
- 무기 업그레이드
- 에너지 부스트
- 시한 폭탄
- 자석
- 드론
- 얼음 효과
- 보너스 생성 가중치 시스템
🎨 시각 효과
- 폭발 시 화면 흔들림
- 입자 및 시각 효과
- 슬로우 모션 효과
- 각 능력별 고유한 시각 효과
- 애니메이션 표시기 및 진행률 표시줄
🏆 업적 시스템
- 다양한 업적 달성
- 점수 및 고득점 시스템
- 순위표 (로컬 및 온라인) 온라인)
- 독특한 미션이 포함된 캠페인
🛠️ 기술적 특징
아키텍처
- 크로스 플랫폼 개발을 위한 Flutter/Dart
- 모듈식 관심사 분리 아키텍처
- 오디오, 현지화 및 순위표 서비스
- 모든 게임 오브젝트 모델
- UI 구성 요소 위젯
프로젝트 구조
```
lib/
├── models/ 데이터 모델
│ ├── weapon.dart
│ ├── advanced_enemy.dart
│ ├── environmental_hazard.dart
│ ├── power_up.dart
│ └── ...
├── screens/ 게임 화면
│ ├── game_screen.dart
│ ├── start_menu_screen.dart
│ └── ...
├── widgets/ UI 위젯
│ ├── weapon.dart
│ ├── advanced_enemy.dart
│ └── ...
├── services/ 서비스
│ ├── audio_service.dart
│ ├── localization_service.dart
│ └── ...
└── game_state.dart 게임 상태
```
지원 플랫폼
- 웹 (Chrome, Edge, Firefox, Safari)
- Windows 데스크톱
- Android
- iOS
🎮 조작법
키보드
- ← → - 플레이어 이동
- 스페이스바 - 사격
- Q/E - 무기 전환
- 1-4 - 특수 능력 활성화
- P/ESC - 일시 정지
터치/마우스
- 드래그 - 플레이어 이동
- 탭/클릭 - 사격
🚀 설치 및 실행
요구 사항
- Flutter SDK 3.0 이상
- Dart SDK 2.17 이상
- 웹용: modern 브라우저
설치
```bash
리포지토리 복제
git clone https://github.com/Katya-AI-Systems-LLC/SpaceInv.git
cd space-invaders
종속성 설치
flutter pub get
브라우저에서 실행
flutter run -d chrome --web-port=8080
Windows에서 실행
flutter run -d windows
Android에서 실행
flutter run -d android
```
📦 빌드
웹 버전
```bash
flutter build web --web-renderer canvaskit
```
Windows
```bash
flutter build windows
```
Android
```bash
flutter build apk --release
flutter build appbundle --release
```
🤝 프로젝트 기여하기
기여 방법
1. 프로젝트 포크
2. 기능 구현을 위한 브랜치 생성 (`git checkout -b 1. 변경 사항을 커밋합니다(`git commit -m 'Add some AmazingFeature'`)
2. 브랜치에 푸시합니다(`git push origin feature/AmazingFeature`)
3. 풀 리퀘스트를 엽니다.
권장 사항
- Dart 코드 스타일을 준수하세요
- 복잡한 코드에는 주석을 추가하세요
- 다양한 플랫폼에서 변경 사항을 테스트하세요
- 문서를 업데이트하세요
📝 문서
- [API 문서](docs/API.md)
- [게임 디자인 문서](docs/GAME_DESIGN.md)
즐거운 게임 되세요! 🎮