-
블루아카이브 루트슈터 팬게임 프로젝트(1) - 아이템 구조체 구현루트슈터 프로젝트 2023. 12. 27. 22:53
게임을 구현하면서 틈틈히 포스팅을 하려고 했는데.. 막상 무엇부터 포스팅을 해야하는지 모르겠네요. 일단 루트슈터에서 가장 중요한것은 파밍할 아이템이니 아이템 특성, 스탯에 대해 구현한 구조체를 먼저 기록해볼까 합니다.
구조체에 대해 구현하기 전에 먼저 여러 아이템의 특성들을 언리얼 ENUM으로 구현해놓았습니다. 아이템 등급은 여느 게임과 마찬가지로 노말, 언커먼, 레어, 전설템 4개 등급으로 구현해놓았고 아이템의 종류, 아이템이 총이라면 총의 종류는 무엇인지 ENUM으로 구현해놓았습니다.
다음으로 총기 스탯에 대한 구조체입니다. 무기 종류, 데미지, 발사간격, 재장전 시간 등등.. 무기에 있을법한 스탯들은 전부 이 구조체에 담아놓았습니다. 밑의 option은 무기에 붙는 스탯들에 대한 옵션 배열입니다.
다음으로 모든 아이템의 특징을 설명할 수 있는 아이템데이터 구조체입니다. 아이템의 이름, 아이템 렙, 아이템의 희귀도(레어리티), 아이템 타입, 아이템의 아이콘사진(인벤토리에 보여질 사진), 무기스탯입니다. 원래는 방어구 스탯에 대한 구조체도 들어가야 하지만 아직 방어구를 구현해놓지 않았기 때문에 추가하지는 않았습니다.
지금와서 보니 아이템 데이터에 대한 구조체는 구조체 안에 구조체(무기스탯 구조체, 아직 구현하지 않은 방어구 스탯 구조체) 형태로 되어있는데 이거 괜찮을지 모르겠습니다..지금은 언리얼에서 오류를 뱉어내진 않으니 일단 이렇게 만들어 놓고 나중에 더 좋은 방법이 떠오르면 구조를 바꿔봐야겠네요.
다음 포스팅은 아이템 클래스와 총기 클래스에 대해 소개하고, 여유가 더 있다면 총기 랜덤 옵션 생성 클래스에 대해 소개하도록 하겠습니다.'루트슈터 프로젝트' 카테고리의 다른 글
블루아카이브 루트슈터 팬게임 프로젝트(5) - 드래그 앤 드롭 기능 (1) 2024.01.01 블루아카이브 루트슈터 팬게임 프로젝트(4) - 인벤토리 기능 (2) 2023.12.31 블루아카이브 루트슈터 팬게임 프로젝트(3) - 아이템랜덤 옵션 생성기능 (1) 2023.12.30 블루아카이브 루트슈터 팬게임 프로젝트(2) - 아이템, 총기 클래스 (1) 2023.12.28 블루아카이브 루트슈터 팬게임 프로젝트(0) - 개발개요(?) (0) 2023.12.27