인벤토리 기능 구현
필요한 기능
- 아이템 획득 시 인벤토리에 추가
- 장비 아이템은 한 칸에 한 개의 아이템만 들어가게 하기
- 소비 아이템은 개수 추가
- 인벤토리의 아이템을 Drag&Drop으로 옮기기
- 마우스 우 클릭으로 아이템 사용 (장비 아이템은 장착)
아이템
아이템은 소비아이템과 장비 아이템 2가지 종류로 나눴다.
장비 아이템은 개수가 없기 때문에 인벤토리 한 칸에 한 개의 아이템만 들어갈 수 있다.
소비 아이템은 인벤토리 한칸에 여러 개가 들어갈 수 있고 최대 개수가 존재한다.

인벤토리 & 아이템 획득
UI 디자인은 추후에 에셋을 이용해서 변경할 예정이다. (안 할 수도..?)
인벤토리의 크기는 7x7로 고정된 사이즈로 만들었다. 한 칸에 한 개의 아이템이 들어가고 소비 아이템 같은 경우는 개수를 사용해서 나타낸다.

아이템 획득 시 인벤토리의 왼쪽 상단부터 자동으로 채워지게 된다.

소비 아이템은 해당 아이템의 최대 개수 이상으로 획득하게 되면 다음 칸에 추가되도록 했다.

인벤토리 드래그
아이템을 빈 슬롯에 놓으면 해당 위치로 옮겨지도록 만들었다. 빈 슬롯이 아닌 경우에는 2개의 아이템의 위치가 서로 변경되도록 했다.

OnBeginDrag, OnDrag, OnEndDrag를 사용해서 마우스의 입력을 감지했는데, 마우스 왼쪽 버튼과 오른쪽 버튼 둘 다 감지를 하는 문제가 발생했다. eventData에서 오른쪽 버튼 입력은 무시하도록 변경했다.
드래그를 실행하면 슬롯의 이미지가 직접 마우스를 따라가는 것이 아닌 드래그용 이미지가 마우스를 따라가는 방식인데, 빈 슬롯을 드래그했을 때 기본 UI 이미지가 보이는 문제가 발생해서 빈 슬롯은 무시하는 방법으로 수정했다.

마우스 오른쪽 클릭 시 발생하는 이벤트들은 장비창과 소모품 사용시 효과가 없으므로 기능만 구현하고 추후에 제작 예정이다.

'Unity > 개발연습' 카테고리의 다른 글
| [Unity] 포트폴리오 프로젝트 개발일지 - 5 (0) | 2022.05.11 |
|---|---|
| [Unity] 포트폴리오 프로젝트 개발일지 - 4 (0) | 2022.05.04 |
| [Unity] 포트폴리오 개발 메모 (0) | 2022.04.29 |
| [Unity] 포트폴리오 프로젝트 개발일지 - 3 (0) | 2022.04.29 |
| [Unity] 포트폴리오 프로젝트 개발일지 - 1 (0) | 2022.04.23 |