오늘의 TIL (Today I Learned)
- 액티브 스킬의 발동 조건 문제 해결
- 액티브 스킬의 발동 조건을 히트 기반으로 변경하면서, 쿨타임 값이 0으로 고정되는 문제가 발생.
- IsReadyToActivate와 RemainingCooldown의 로직을 수정하여 쿨타임 기반과 히트 기반 조건을 명확히 분리함.
- 히트 기반 스킬은 currentHits를 기준으로 처리하고, UI에도 올바르게 반영되도록 수정.
- ResetCondition 함수 수정
- 스킬 타입에 따라 쿨타임(cooldownTimer)과 히트 횟수(currentHits) 초기화를 각각 처리하도록 개선.
- 히트 기반 스킬에서는 currentHits를 0으로 초기화하여 조건이 다시 충족되도록 설정.
- SkillEquipSlot의 UI 로직 개선
- 쿨타임 기반 스킬은 남은 쿨타임을, 히트 기반 스킬은 현재 히트 상태를 표시하도록 로직을 분리.
- cooldownImage와 conditionText가 각각의 스킬 타입에 따라 올바른 정보를 표시하도록 수정.
- SkillEffectManager에서 이펙트 관리 확인
- 액티브 스킬에서 이펙트 프리팹이 생성되었지만 바로 삭제되는 문제를 확인.
- 이펙트의 지속 시간을 BuffDuration 대신 별도로 설정하도록 수정, 이후 정상 동작 확인.
오늘의 개선점
- 스킬의 발동 조건을 명확히 구분하고, 각 스킬 타입에 맞는 로직과 UI 처리를 추가적으로 점검.
- 디버그 로그를 활용하여 문제를 추적하고, 조건 충족 여부를 명확히 확인.
- 코드와 게임 로직을 정리하여 이후 유지보수가 용이하도록 개선.
배운 점
- 디버그 로그는 문제를 추적하는 데 강력한 도구이며, 조건별 로직 분리가 예상치 못한 동작을 해결하는 열쇠임을 다시 느꼈습니다.
- 액티브, 패시브, 버프 스킬 등 다양한 스킬 타입의 특성을 고려한 코드 설계가 중요함을 배웠습니다.
'TIL(Today I Learned) > 오늘 무엇을 배웠을까' 카테고리의 다른 글
TIL(Today I Learned) - 67 (0) | 2024.12.24 |
---|---|
TIL(Today I Learned) - 66 (0) | 2024.12.23 |
TIL(Today I Learned) - 64 (0) | 2024.12.19 |
TIL(Today I Learned) - 63 (0) | 2024.12.18 |
TIL(Today I Learned) - 62 (2) | 2024.12.17 |