Commit Graph

60 Commits

Author SHA1 Message Date
JiWoong Sul
77f3f1d46b feat(iap): 인앱 결제 서비스 추가
- 광고 제거 상품 구매 처리
- 구매 복원 기능
- 결제 상태 스트림 지원
2026-01-16 20:08:43 +09:00
JiWoong Sul
6662a5dcfb feat(ads): AdMob 광고 서비스 추가
- 리워드/인터스티셜 광고 로드 및 표시
- 디버그 모드 광고 토글 지원
- 비모바일 플랫폼 자동 스킵
2026-01-16 20:08:27 +09:00
JiWoong Sul
306715ca26 feat(balance): 레벨 기반 장비 손실 확률 시스템
- 저레벨 사망 스파이럴 방지
- 장비 손실 확률 = (레벨 - 5) * 10%
  - Lv 1~5: 0% (절대 안전)
  - Lv 6: 10%
  - Lv 10: 50%
  - Lv 15+: 100%
- 디버그 로그 추가
2026-01-16 00:17:08 +09:00
JiWoong Sul
9e5472728f refactor(potion): 물약 자동 사용 조건 변경
- 임계치 기반 → 소모량 기반 조건 전환
- HP/MP 소모량 >= 물약 회복량일 때 사용
- emergencyHpThreshold, emergencyMpThreshold 상수 제거
- 우선순위 HP > MP 유지
2026-01-16 00:15:38 +09:00
JiWoong Sul
93f29f6c33 feat(ui): 사망 화면 잃은 아이템 희귀도 색상 표시
- DeathInfo에 lostItemRarity 필드 추가
- 사망 처리 시 아이템 희귀도 저장
- 사망 오버레이에서 희귀도별 색상 적용
  - Common: 회색, Uncommon: 녹색, Rare: 파랑
  - Epic: 보라, Legendary: 주황
2026-01-16 00:13:24 +09:00
JiWoong Sul
a2b5bb7dc0 refactor(ui): 물약 글로벌 쿨타임 적용 UI 정리
- usedPotionTypes/usedInBattle 파라미터 제거
- 전투당 타입별 제한 → 시간 기반 쿨타임 전환
- PotionInventoryPanel 불투명도 로직 제거
2026-01-16 00:12:43 +09:00
JiWoong Sul
b8a4d73461 fix(death): 사망 시 희생 아이템 선택 디버그 로그 추가
- 장비 슬롯 상태 콘솔 로그 추가
- resurrection_service에 lostItemSlot 설정 누락 수정
- resetBattleUsage 존재하지 않는 메서드 호출 제거
2026-01-15 23:33:31 +09:00
JiWoong Sul
7e1936b34f fix(ui): 사망 화면 장비 슬롯명 표시 및 기타 수정
- 사망 시 잃은 아이템에 슬롯명 표시 추가
- progress_service 마이너 수정
- 관련 테스트 업데이트
2026-01-15 23:23:38 +09:00
JiWoong Sul
b0913a24ff feat(skill): DamageType 및 magAtk/magDef 스킬 시스템 추가
- DamageType enum 추가 (physical/magical)
- 스킬별 데미지 타입 지정 기능 구현
- 마법 스킬 데미지에 magAtk/magDef 적용
- 장비 아이템에서 magAtk/magDef 스탯 추출
- 관련 테스트 업데이트
2026-01-15 23:22:36 +09:00
JiWoong Sul
ac76060222 feat(animation): Act 기반 몬스터 사이즈 시스템 추가
- Act 진행에 따른 몬스터 사이즈 확률 조정
- 보스: Act별 고정 사이즈 (소/중/대)
- 일반/엘리트: Act별 확률 랜덤
- TaskInfo에 monsterSize 필드 추가
- 애니메이션 패널에서 Act 기반 사이즈 사용
2026-01-15 18:01:31 +09:00
JiWoong Sul
f466e1c408 refactor(engine): ActProgressionService 및 UI 컨트롤러 분리
- ActProgressionService: Act 진행 로직 추출
- GameAudioController: 오디오 제어 로직 분리
- CombatLogController: 전투 로그 관리 분리
- ProgressService, GamePlayScreen 경량화
2026-01-15 17:05:19 +09:00
JiWoong Sul
92e5fbbf1a refactor(engine): ProgressService 경량화
- CombatTickService, MarketService 사용으로 전환
- 중복 로직 제거로 577줄 감소
- item_stats.dart 불필요 코드 정리
2026-01-15 01:53:30 +09:00
JiWoong Sul
90c133d577 refactor(engine): 시장 로직을 MarketService로 분리
- ProgressService에서 판매/구매 로직 추출
- SellResult 결과 클래스 정의
- 골드 관리 및 아이템 거래 처리
2026-01-15 01:53:24 +09:00
JiWoong Sul
77dfa48ddf refactor(engine): 전투 틱 로직을 CombatTickService로 분리
- ProgressService에서 전투 처리 로직 추출
- 스킬 자동 사용, DOT, 물약 사용 로직 포함
- CombatTickResult 결과 클래스 정의
2026-01-15 01:53:20 +09:00
JiWoong Sul
de20183b73 style: dart format 적용 2026-01-14 23:07:03 +09:00
JiWoong Sul
02d4d1d397 feat(engine): GCD 체크 및 스킬 자동 장착 로직 구현
SkillService:
- canUseSkill()에 GCD 체크 추가
- selectAutoSkill() 확률 조정 (70% 일반공격, 30% 스킬)
- 버프/디버프 조건 강화 (HP>80%, 활성 효과 체크)

ProgressService:
- 스킬 사용 후 GCD 시작 로직 추가
- 장착된 스킬 슬롯에서 사용 가능 스킬 조회
- 비전투 태스크 시 currentCombat 초기화

GameMutations:
- winSpell()에서 스펠 획득 시 전투 스킬 자동 장착
2026-01-14 23:04:38 +09:00
JiWoong Sul
f89017e5ba feat(core): 엔진, 모델, 애니메이션 개선
- ProgressService 로직 개선
- CombatCalculator 업데이트
- GameState, MonsterCombatStats 확장
- CanvasBattleComposer 개선
2026-01-14 00:17:59 +09:00
JiWoong Sul
c420331300 refactor(game): 테스트 캐릭터 서비스 및 세션 컨트롤러 정리 2026-01-13 15:11:01 +09:00
JiWoong Sul
a1d22369cb feat(engine): 엔진 서비스 개선 및 테스트 캐릭터 서비스 추가
- ProgressService 로직 개선
- RewardService 확장
- CombatCalculator, ItemService 정리
- TestCharacterService 추가
2026-01-12 20:02:45 +09:00
JiWoong Sul
95528786eb refactor(engine): 서비스 로직 정리
- ArenaService, PotionService, ProgressService 개선
- ResurrectionService, SkillService 정리
2026-01-12 16:17:00 +09:00
JiWoong Sul
2bf7387a08 refactor(engine): 스킬 및 전투 시스템 개선
- SkillData 조정
- CombatCalculator 개선
- ItemService 업데이트
- ProgressService 개선
- SkillService 정리
2026-01-09 00:21:14 +09:00
JiWoong Sul
5487c79474 refactor(core): 밸런스 상수 및 진행 서비스 개선
- BalanceConstants 정리
- ProgressService 로직 개선
2026-01-08 20:46:55 +09:00
JiWoong Sul
1eaff23001 feat(core): 밸런스 상수 및 진행 로직 개선
- BalanceConstants 조정
- PqLogic 개선
- ProgressService 업데이트
2026-01-08 20:10:59 +09:00
JiWoong Sul
606d052e2c refactor(core): 진행 루프, 저장 데이터, 저장 관리자 개선
- ProgressLoop 로직 정리
- SaveData 모델 확장
- SaveManager 개선
2026-01-08 16:05:08 +09:00
JiWoong Sul
c02978c960 fix(core): 오디오 및 진행 루프 수정
- AudioService 디버그 로그 정리
- ProgressLoop 개선
2026-01-07 22:13:19 +09:00
JiWoong Sul
699ae3b7f3 feat(arena): 아레나 서비스 및 아이템 서비스 개선
- ArenaService 로직 확장
- ArenaMatch 모델 업데이트
- ItemService 아레나 지원 추가
2026-01-07 20:21:50 +09:00
JiWoong Sul
a2d62f1f4f refactor(arena): 아레나 서비스 로직 개선
- 전투 로직 리팩토링
- 상태 관리 개선
2026-01-06 19:19:00 +09:00
JiWoong Sul
8d51263b2e refactor(model): SpellBook을 SkillBook으로 리네이밍
- 게임 컨셉에 맞게 주문서 → 스킬북 용어 통일
- 관련 모든 참조 일괄 변경
2026-01-06 18:45:16 +09:00
JiWoong Sul
2efd50a09d feat(arena): 아레나 서비스 및 모델 개선
- ArenaService 로직 확장
- ArenaMatch 모델 필드 추가
2026-01-06 18:29:01 +09:00
JiWoong Sul
58cf4739fe feat(arena): 아레나 서비스 추가
- 아레나 전투 로직 처리
- 명예의 전당 연동
2026-01-06 17:54:56 +09:00
JiWoong Sul
02a59fb443 refactor(engine): 몬스터 레벨 기반 페널티 적용
- CombatStats 생성 시 monsterLevel 전달
- Phase 12 레벨 페널티 시스템 연동
2026-01-05 19:42:03 +09:00
JiWoong Sul
7570a4205c refactor(engine): 포션/진행 서비스 개선
- PotionService 로직 개선
- ProgressService 몬스터 등급 지원
2026-01-05 17:52:57 +09:00
JiWoong Sul
86b14427f6 refactor(core): 밸런스 상수 분리 및 진행 서비스 개선
- balance_constants.dart에 게임 밸런스 상수 정의
- ProgressService 로직 개선 및 상수 참조
2026-01-02 15:49:46 +09:00
JiWoong Sul
2ef9807cbe refactor(core): 진행 서비스 및 모델 개선
- ProgressService 로직 개선
- GameState 상태 관리 확장
- MonsterCombatStats 속성 추가
- game_text_l10n 번역 추가
2026-01-02 15:30:09 +09:00
JiWoong Sul
a6d3c1e42f feat(game): 게임 클리어 시 VictoryOverlay 추가
- VictoryOverlay 위젯 신규 생성
- GameSessionController에 isComplete 상태 추가
- 레벨 100 도달 시 승리 오버레이 표시
- 승리 후 명예의 전당 화면으로 이동
2025-12-31 18:52:18 +09:00
JiWoong Sul
9b668d80a4 feat(debug): 모바일 레이아웃에 치트 기능 추가
- MobileCarouselLayout에 치트 버튼 추가
- GameSessionController에 치트 활성화 상태 관리 추가
- ProgressLoop/ProgressService에 치트 메서드 추가
2025-12-31 18:14:31 +09:00
JiWoong Sul
e679abd0d8 refactor(core): 코어 엔진 및 모델 개선
- 애니메이션 시스템 개선
- 오디오 서비스 개선
- 전투/스킬/포션 서비스 개선
- 스토리지 및 저장 시스템 개선
- 모델 클래스 타입 안정성 강화
2025-12-31 17:46:53 +09:00
JiWoong Sul
80b6cd63e3 feat(combat): 디버프 시스템 추가
- CombatEventType.playerDebuff 추가
- CombatState에 activeDebuffs 목록 추가
- SkillService.useDebuffSkill() 구현
- 스킬 자동 선택에 디버프 우선순위 추가
- 밸런스 상수 업데이트
2025-12-30 15:58:03 +09:00
JiWoong Sul
6e56420a07 feat(animation): 공격 속도 기반 동적 애니메이션 페이즈
- CombatEvent에 attackDelayMs 필드 추가
- ProgressService에서 전투 이벤트에 공격 속도 전달
- AsciiAnimationCard에서 공격 속도 기반 페이즈 프레임 수 계산
- 200ms tick 기준으로 동적 프레임 수 (최소 2, 최대 10)
2025-12-26 18:10:43 +09:00
JiWoong Sul
431dd995bf fix(game): 부활 서비스 및 게임 화면 UI 수정 2025-12-26 00:57:47 +09:00
JiWoong Sul
df5fdbaac2 feat(hall-of-fame): 명예의 전당 상세 UI 및 전투 스탯 저장 추가
- CombatStats에 toJson/fromJson 직렬화 메서드 추가
- HallOfFameEntry에 finalStats(CombatStats) 필드 추가
- 명예의 전당 상세 다이얼로그에서 전투 스탯, 장비, 스펠 표시
- GameState에 combatStats 접근자 추가
- game_text_l10n에 명예의 전당 관련 텍스트 추가
2025-12-24 17:20:52 +09:00
JiWoong Sul
c1db1fd5d3 feat(hall-of-fame): 명예의 전당 상세 보기 및 스펠북 기록 추가
- HallOfFameEntry에 finalSpells 필드 추가 (스펠 이름 + 랭크)
- 명예의 전당 카드 클릭 시 상세 정보 다이얼로그 표시
- 디버그 모드에서 샘플 엔트리 자동 생성 (테스트용)
- pq_logic 및 progress 관련 minor 수정
2025-12-24 16:33:13 +09:00
JiWoong Sul
1da6fa7a2b feat(l10n): 게임 텍스트 다국어 지원 확장
- game_text_l10n.dart: 스탯/UI 텍스트 추가 (+61 라인)
- 한국어/일본어 번역 업데이트
- game_data_l10n.dart: 텍스트 접근자 추가
- equipment_stats_panel: l10n 적용 및 레이아웃 개선
- active_buff_panel, potion_inventory_panel: 코드 정리
- new_character_screen: 코드 정리
- progress_service: 마이너 개선
2025-12-23 15:51:56 +09:00
JiWoong Sul
99f5b74802 feat(game): 게임 시스템 전면 개편 및 다국어 지원 확장
## 스킬 시스템 개선
- skill_data.dart: 스킬 데이터 구조 전면 개편 (+1176 라인)
- skill_service.dart: 스킬 발동 로직 확장 및 버프 시스템 연동
- skill.dart: 스킬 모델 개선, 쿨다운/효과 타입 추가

## Canvas 애니메이션 리팩토링
- battle_composer.dart 삭제 (레거시 위젯 기반 렌더러)
- monster_colors.dart 삭제 (AsciiCell 색상 시스템으로 통합)
- canvas_battle_composer.dart: z-index 정렬 (몬스터 z=1, 캐릭터 z=2, 이펙트 z=3)
- ascii_cell.dart, ascii_layer.dart: 코드 정리

## UI/UX 개선
- hp_mp_bar.dart: l10n 적용, 몬스터 HP 바 컴팩트화
- death_overlay.dart: 사망 화면 개선
- equipment_stats_panel.dart: 장비 스탯 표시 확장
- active_buff_panel.dart: 버프 패널 개선
- notification_overlay.dart: 알림 시스템 개선

## 다국어 지원 확장
- game_text_l10n.dart: 게임 텍스트 통합 (+758 라인)
- 한국어/일본어/영어/중국어 번역 업데이트
- ARB 파일 동기화

## 게임 로직 개선
- progress_service.dart: 진행 로직 리팩토링
- combat_calculator.dart: 전투 계산 로직 개선
- stat_calculator.dart: 스탯 계산 시스템 개선
- story_service.dart: 스토리 진행 로직 개선

## 기타
- theme_preferences.dart 삭제 (미사용)
- 테스트 파일 업데이트
- class_data.dart: 클래스 데이터 정리
2025-12-22 19:00:58 +09:00
JiWoong Sul
7cd8be88df feat(game): 포션 시스템 및 UI 패널 추가
- 포션 시스템 구현 (PotionService, Potion 모델)
- 포션 인벤토리 패널 위젯
- 활성 버프 패널 위젯
- 장비 스탯 패널 위젯
- 스킬 시스템 확장
- 일본어 번역 추가
- 전투 이벤트/상태 모델 개선
2025-12-21 23:53:27 +09:00
JiWoong Sul
c07f77a02f feat(canvas): Canvas 기반 ASCII 애니메이션 렌더러 구현
- JetBrains Mono 폰트 번들링 (Android/iOS 호환성)
- Paragraph 캐싱으로 GC 압박 최소화 (최대 256개 캐시)
- shouldRepaint layerVersion 기반 최적화
- willChange 동적 설정으로 메모리 절약
- 레이어 기반 합성 구조 (배경/캐릭터/몬스터/이펙트)
- hp_mp_bar 몬스터 HP 숫자 오버플로우 수정
2025-12-20 07:49:11 +09:00
JiWoong Sul
cf8fdaecde feat(ui): HP/MP 바 개선 및 전투 시스템 UI 업데이트
- HP/MP 변화 시 플래시 효과 및 변화량 표시 추가
- 전투 중 몬스터 HP 바 표시 기능 추가
- 몬스터 HP 바 Row 오버플로우 버그 수정 (Flexible 적용)
- 전투 상태 및 이벤트 모델 개선
- 캐릭터 애니메이션 및 전투 컴포저 업데이트
2025-12-18 18:10:22 +09:00
JiWoong Sul
abcb89d334 feat(story): Phase 9 스토리/엔딩 시스템 구현
- story_data.dart: 5개 Act 스토리 텍스트 및 ASCII 아트
- story_service.dart: Act 전환/보스 조우/엔딩 이벤트 관리
- cinematic_view.dart: 풀스크린 시네마틱 UI (페이드, 스킵)
- game_play_screen.dart: 레벨 기반 Act 전환 시 시네마틱 재생
2025-12-17 18:38:08 +09:00
JiWoong Sul
d158c11249 feat(race-class): Phase 5 종족/클래스 특화 시스템 구현
- RaceTraits: 7종족 (Byte Human, Null Elf, Buffer Dwarf 등)
- ClassTraits: 6클래스 (Bug Hunter, Compiler Mage 등)
- StatCalculator: 종족/클래스 보정 계산
- CombatStats.fromStats: 종족/클래스 패시브 효과 통합
- 종족별 스탯 보정 및 패시브 (경험치, HP/MP, 크리티컬 등)
- 클래스별 스탯 보정 및 패시브 (공격력, 방어력, 회피 등)
2025-12-17 17:22:28 +09:00
JiWoong Sul
21bf057cfc feat(death): Phase 4 사망/부활 시스템 구현
- DeathInfo, DeathCause 클래스 정의 (game_state.dart)
  - 사망 원인, 상실 장비 수, 사망 시점 정보 기록
- ShopService 구현 (shop_service.dart)
  - 장비 가격 계산 (레벨 * 50 * 희귀도 배율)
  - 슬롯별 장비 생성 (프로그래밍 테마)
  - 자동 구매 (빈 슬롯에 Common 장비)
- ResurrectionService 구현 (resurrection_service.dart)
  - 사망 처리: 모든 장비 상실, 기본 무기만 유지
  - 부활 처리: HP/MP 회복, 자동 장비 구매
- progress_service.dart 사망 판정 로직 추가
  - 전투 중 HP <= 0 시 사망 처리
  - ProgressTickResult에 playerDied 플래그 추가
- progress_loop.dart 사망 시 루프 정지
  - onPlayerDied 콜백 추가
  - 사망 상태에서 틱 진행 방지
- DeathOverlay 위젯 구현 (death_overlay.dart)
  - ASCII 스컬 아트, 사망 원인, 상실 정보 표시
  - 부활 버튼
- GameSessionController 사망/부활 상태 관리
  - GameSessionStatus.dead 상태 추가
  - resurrect() 메서드로 부활 처리
2025-12-17 17:15:22 +09:00