본문 바로가기
엔트리/엔트리 액션 RPG만들기

엔트리 액션 RPG 만들기 7.체력바 만들기

by 할거없네 2020. 4. 27.

안녕하세요. 승승이입니다.

이번에는 체력바를 추가합니다.

 

 

 

 

엔트리에서 흔히 체력바를 만드는 방법으로는 '그리기'를 사용하는 방법이 있습니다.

붓으로 그리는 방법으로 체력바를 만드는 것은 스크래치에서는 힘든 일입니다. 왜냐하면 스크래치에서 그리기 레이어는 항상 맨 아래에 있기 때문에 체력바가 오브젝트에 의해 가려지기 때문입니다.

그러나 엔트리는 그리기를 하면 해당 오브젝트와 동일한 레이어에서 그리며, 그리는 것을 지우는 것도 오브젝트마다 제어가 되므로 체력바를 그리는데 어려운 일이 아닙니다.

 

그러나 저는 그리기 대신 '이미지'를 바꾸는 방법으로 만들기로 합니다.

 

 


먼저 체력바 오브젝트를 추가합니다.

 

살짝 귀찮은 일이지만 체력바에 해당되는 이미지를 하나하나 넣어줍니다.

약간의 옵션? 으로 체력바에 그라데이션을 넣어 주었습니다 ㅎㅎ

 


현재 각각의 몬스터의 체력을 알아야 합니다. 그것은 '리스트'를 통해서 각각의 몬스터들의 체력을 알 수 있습니다.

체력은 2가지로, '현재'체력과 '최대'체력으로 나뉩니다. 최대 체력 대비 현재 체력의 퍼센트 비율을 만들어 주는 것이 체력바로 보시면 되겠습니다.

그래서 리스트 2개를 준비합니다.

 

 

한 맵에 표시되는 몬스터는 최대 153개이므로, 153 리스트를 만들어 주기로 합니다.

 

 

이 체력리스트들은 몬스터가 생성될 때 몬스터의 스펙에 따라서 처음에 결정이 되고, 전투를 하게 되면 플레이어의 공격에 의해 감소되거나 하도록 되어 있습니다. 일단 처음에 결정되는 것은 몬스터가 생성될때 이므로, 몬스터를 만들 때 체력을 넣어줍니다.

몬스터 오브젝트에서 몬스터가 복제되는 곳에 체력을 넣어줍니다.

여기서 현재 체력은 사실 최대 체력과 동일해야 하지만, 테스트로 확인하기 위해서 무작위로 데이터를 넣어주었습니다.

 

이미 리스트는 153개로 만들어져 있으니, 바꾸기를 사용하였습니다.

만약 리스트가 처음에 만들어져 있는 상태가 아닌 경우 '추가하기'로 해주셔야 합니다.

 

 

여기까지 체력바를 코딩하기 위한 준비동작이고, 아래 체력바를 코딩하겠습니다.

 


다시 체력바 오브젝트에 돌아 오셔서 코딩을 합니다.

 

체력바는 2종류가 있습니다.

유저의 체력바와 몬스터의 체력바입니다.

유저의 체력바는 리스트가 아닌 '변수'를 사용해서 체력을 넣어줍니다.

그리고 153개를 복제하여 몬스터 체력바를 만들어 주시구요...

자신의 체력값에 따라 모양을 바꿔주는 코딩을 해줍니다.

 

다음은 몬스터의 체력바입니다.

몬스터의 체력바는 유저와 다르게 '리스트'를 사용하기 때문에 복제된 오브젝트가 보이거나 숨기거나의 조건도 넣어 주셔야 합니다.

몬스터가 배치가 되어 있고, 체력이 0보다 큰 경우에 모습을 보여주는 것입니다.

중간에 길어서 짤린 블록은 아래와 같습니다.

모양을 정하는 규칙인데, 체력바의 이름에 맞게 '합치기'를 잘 사용해서 넣어주시면 됩니다.

 

 위와 같이 체력바를 완성할 수 있습니다.

 

 

코드보기: http://naver.me/5oOWt5D0

 

Entry

 

playentry.org

 

댓글