지난번엔 충돌 판정이 존재하는 스킬의 구조를 고안해내고, 투사체가 필요 없는 근접 범위 공격을 구현해봤음.
이번엔 지난번에 구상해 놓은 구조를 토대로 원거리 투사체 공격을 구현해봤다
요약하자면 충돌 판정이 존재하는 스킬은 캐릭터와 별도의 오브젝트를 생성해 충돌 처리와 효과 처리를 직접 맡도록 했음.
우선 '파이어볼' 이라는 스킬의 투사체 오브젝트를 구현했음
투사체의 발사 처리를 한 후 벽이나 적에게 닿을 시 즉시 폭발해 주변의 적에게 범위 공격을 주도록 스크립트를 짬.
파이어볼과 유사한 매커니즘을 가진 스킬을 만들 때 작업을 단순화하고 싶어서
인스펙터에 폭발 범위 콜라이더, 투사체 속도 등의 변수를 커스터마이징 할 수 있도록 구조화함
투사체의 궤도를 특이하게 만들고 싶거나 닿을 때 데미지가 아니라 회복을 넣어주는 등 색다른 바리에이션을 주고 싶다면 그냥 이 클래스를 상속시키면 됨.
이제 스킬 발동이나 충돌 처리 같은 전투의 핵심적인 부분은 다 마친 것 같아서 본격적으로 전투에 디테일을 넣으려고 함
다음은 아마 버프, 디버프, 상태 이상 시스템 구현하고 여유 있으면 스킬로 만들어볼 듯
전투 시스템이 어느 정도 완성된 다음엔 궁극적으로 코딩을 모르는 사람이라도 간단한 형태의 스킬을 인스펙터를 통해 직접 구현할 수 있도록 하는 것이 목표임
작업이 훨씬 단순해질테고 언젠가 게임의 가닥이 좀 잡히고 나서 팀원을 영입하거나 할 때 프로젝트의 러닝 커브를 획기적으로 줄일 수 있으니까....
ㅇㅇㅇ