언리얼 - 게임 개발

첫 게임 개발(9) _ Inventory _ 돈 구현하기

earth-star 2024. 6. 21. 10:03

간단히 돈을 구현하는 작업을 해 볼 것이다.

 

미리 구한 5가지 색의 돈 에셋을 임포트한다.

 

BP_Money 블루프린트를 만들고 컴포넌트를 추가하여 MoneySM로 이름붙인다.

 

구조체 블루프린트를 만들어 Name, Amount, Mesh 3가지를 추가한다.

 

컴포짓 데이터 테이블을 만들고 열 5개를 추가하여 이름과 Name에 순서대로 Green, Blue, Red, Silver, Gold로 이름붙이고 Amount를 각가 1, 5, 10, 50, 100으로 설정한다. 이는 돈의 색에 따른 가치가 된다.

 

Construction Script에서 변수로 Money를 추가하고 변수 유형을 데이터 테이블 열 핸들로 설정한다. 위와 같이 구조체 핀 분할로 Row Name에 Get Data Table Row Dt_Money의 Row Name을 연결한다. MoneySm 컴포넌트를 가져와서 Set Static Mesh함수로 이름에 따른 Static Mesh를 할당한다.

 

이렇게 행 이름에 따라서 이름에 붙여진 Static Mesh를 불러와 설정할 수 있다.

 

BP_Player 캡슐 컴포넌트 오버랩 이벤트를 불러와 BP_Money에 캐스트하고 이름에 따른 Amount를 가져와서 새로 만든 변수 Money Amount에 추가되도록 한다. 먹고난 뒤에는 액터를 Destroy하도록 설정한다. PrintString을 이용하여 잘 적용되는지 확인한다.

 

왼쪽 위 숫자를 보면 각 돈 종류별로 정해진 값이 올라가는 것을 볼 수 있다.