Unreal Engine: Ultimate Survival Horror Course
S_ItemData Structure에 버릴 수 없는 아이템인지 저장하는 CanBeDropped Boolean 변수를 추가한다.
BPC_Inventory에 아이템을 버릴 때 호출할 DropItem 함수를 추가한다.
현재 소지 개수만큼 RemoveItem을 호출하여 인벤토리에서 아이템을 제거한다.
라인 트레이스를 수행해 감지한 곳이 있으면 그곳에 버린 아이템을 생성하고 없으면 라인의 끝에 생성한다.
생성 후 Amount의 값을 설정해 버린 만큼의 개수를 갖도록 한다.
Static Mesh - Set Simulate Physics를 활성화하면 중력 등의 물리 작용이 가능해진다.
W_InventoryDropDown에 DropButton의 On Released 이벤트에 DropItem 함수를 호출한다.
S_ItemData에 월드에 배치할 액터 아이템을 뜻하는 BP_PickupActor_Master 타입의 PickupActor 변수를 추가한다.
배터리와 문 열쇠의 PickupActor를 설정한다.
BPC_Inventory에 초기화 함수인 Initialize를 생성하고 BeginPlay의 내용을 Initialize로 옮긴다.
L1_Character의 참조인 PlayerRef를 받아오는 부분을 마지막에 추가한다.
물리 작용 활성화 결과 Static Mesh만 떨어지고 Sphere Collision은 떨어지지 않으므로 BP_PickupActor_Master에서 Sphere Collision을 Static Mesh의 자식으로 만들어 같이 떨어지게 한다.
성공적으로 아이템을 버렸다.
'Unreal Engine > Ultimate Survival Horror Course' 카테고리의 다른 글
아이템 정보 표시하기 (0) | 2023.02.06 |
---|---|
아이템 표시 및 획득 개선 (0) | 2023.02.06 |
인벤토리 아이템 사용하기 (0) | 2023.02.05 |
인벤토리 드롭다운 메뉴 추가하기 (0) | 2023.02.04 |
실행 순서에 따른 배열 인덱스 오류 수정 (0) | 2023.02.03 |