# 장비 착용/해제 시 HP 처리 로직 수정 ## 현재 상황 및 문제점 현재 시스템에서는 방어구나 장신구 등 최대 체력(Max HP)을 올려주는 장비를 착용하거나 해제할 때, 체력 처리 방식에 따라 예상치 못한 동작(예: 체력 회복 꼼수 등)이 발생할 수 있습니다. ## 요청 사항 장비를 착용하거나 해제할 때, **최대 체력(Max HP)의 변동에 관계없이 현재 체력(Current HP)의 퍼센트(%) 비율을 유지**하도록 로직을 수정해주세요. ### 구체적인 요구조건 1. **장비 변경 전 현재 HP 비율 계산:** 장비 착용/해제 전에 `Current HP / Max HP` 비율을 계산합니다. 2. **장비 변경 후 HP 적용:** 장비 변경(Max HP 변화)이 발생한 후, 이전에 계산한 HP 비율을 새로운 `Max HP`에 적용하여 `Current HP`를 설정합니다. * 예시: 현재 50/100 (50%) -> 장비 착용으로 Max HP가 150이 되면, Current HP는 75 (150의 50%)로 조정됩니다. * 예시: 현재 150/150 (100%) -> 장비 해제로 Max HP가 100이 되면, Current HP는 100 (100의 100%)으로 조정됩니다. 3. **최소값 및 최대값 보정:** `Current HP`는 항상 0보다 크거나 같아야 하며, 새로운 `Max HP`를 초과할 수 없습니다. ## 목표 - 장비 변경 시 `Current HP`가 `Max HP`의 비율에 맞춰 일관성 있게 변화하도록 합니다. ## 참고 코드 - `lib/game/model/entity.dart` (Character 클래스 내 장비 착용/해제 로직) - `lib/providers/battle_provider.dart` (장비 장착/해제 액션 처리)