이번 글은 아래의 링크에 있는 글의 내용에서 이어집니다
https://unityfactory.tistory.com/17
저번시간에 이어서 근접무기를 만들어 보도록 하겠습니다.
weapon 을 완성한 뒤, 실행을 시켜보면 플래이어의 주변에 붙어서 도는 무기를 확인할 수 있습니다.
무기와 플래이어간의 거리 차이가 없어서 몬스터에게 무기가 닿지 않습니다.

이 경우에는 무기의 위치에서 y축을 1로 바꿔주시면 해결이 됩니다.
그러고 나면 이제 몬스터와 근접무기가 닿으면서 몬스터들이 사라지는걸 볼 수 있습니다.
하지만 무기가 추가될 때마다 이걸 수동으로 조작해줄 수 는 없겠죠?
이제 자동으로 무기를 배치하기 위한 로직을 짜도록 하겠습니다.
만약 많은 수의 무기를 배치해야 한다면, 캐릭터의 주변 각도를 나누어서 배치해야겠죠.
그렇기에 무기의 숫자만큼 360도를 나누어 배치할 수 있게 코드를 짜주도록 하겠습니다.
저번시간에 작성하였던 weapon의 아래쪽에 있던 batch함수를 추가해주었습니다.
처음에 근접무기를 배치하기 전에 무기의 위치와 무기의 돌아간 각도를 초기화해줍니다.
그런 뒤, 360도를 무기의 수인 count 만큼 나누어주고, 무기의 index숫자만큼 곱해서 균등하게 나누어가질 수 있게 해줍니다.
그뒤 translate를 이용해서 근접무기의 위치를 캐릭터보다 위쪽으로 가게 해줍니다
또한 무기가 추가될 때 각도를 다시 계산하여 재분배하도록 코드를 짜주었습니다.
또한 캐릭터의 래벨이 올라갈수록 더 많은 근접무기가 따라다닐 수 있도록 래벨업을 만들어보도록 하겠습니다.
다음과 같은 함수를 weapon 스크립트 파일에 추가하였습니다.
인자로는 damage와 count를 받고, 받은 데미지는 그만큼 데미지를 바꾸어주고, count는 추가를 해주도록 하였습니다.
그리고 스페이스바를 누를때마다 무기가 하나씩 추가되도록 만들었고, 이것이 그 결과물입니다!


이런식으로 자유자재로 추가할 수 있게 되었습니다.
다음 글에서는 근접 무기에 이어서 원거리 무기도 만들어 보도록 하겠습니다!
이 글은 아래의 영상을 따라하는 과정을 기록하는 글 입니다. 더 궁금하신 점이 있다면 아래의 영상을 참고해주시기 바랍니다!
'유니티 > 뱀서라이크' 카테고리의 다른 글
| 뱀서라이크 따라하기 - 플레이어 무기 장착 (0) | 2023.08.03 |
|---|---|
| 뱀서라이크 따라하기 - 원거리 무기 만들기 (0) | 2023.08.02 |
| 뱀서라이크 따라하기 - 소환레벨 적용하기 2번째 (0) | 2023.07.31 |
| 뱀서라이크 따라하기 - 오브젝트 풀링 2번째 (0) | 2023.07.30 |
| 뱀서라이크 따라하기 - 오브젝트 풀링 1 (0) | 2023.07.29 |