광산김가네

[모각코][Unity/유니티]0724 TIL_플랫포머 게임만들기(완)(5)_ hp bar 생성, 마무리 build 본문

카테고리 없음

[모각코][Unity/유니티]0724 TIL_플랫포머 게임만들기(완)(5)_ hp bar 생성, 마무리 build

어둠의 그림자 2021. 7. 26. 02:33

hp bar 생성_slider 기능 활용

<결과화면>

엔딩화면(게임종료화면)을 넣고싶었는데 canvas에서 destroy를 넣어서 그런가 잘 되지않았다,,

slider를 활용해서 hpbar 기능을 추가했다.

https://www.youtube.com/watch?v=EhJObA5bN2c 

해당 영상을 참고해서 만들었다.

또한 curHp를 원래는 50*(2- enemy.HP)이런식으로 작성했는데, enemy.HP가 update 초반부터 1로 변경이 되고, update 될때마다 깎여서 hp바가 바로 사라져버렸다.

if (enemy.HP == 0){
            curHp = 50;
        }
else if(enemy.HP == -1){
        curHp = 0;
        Destroy(gameObject);

}

그래서 약간의 비효율적이지만 이런식으로 HP와 HP바 역할을 맡은 슬라이더가 맞춰서 움직이도록 조정했다.

조금 어려웠던구간

canvas는 무조건 메인카메라를 따라간다.

이 사실을 초반에 모르는 상태로 슬라이더를 만들었는데, 슬라이더 스크립트에서 public transform target이라는 변수를 두고, 이를 enemy 스프라이트로 넣어주면 되겠다 싶었는데

이를 포함하는 canvas전체가 카메라와 맞춰서 움직이고 카메라는 플레이어와 맞추어 움직이도록 설정했기때문에

뭘해도 계속 플레이어와 같이 움직였다,,,

그래서 결국 메이플스토리에 보스몹 처치시 뜨는 UI처럼 길쭉하게 설정했다

요약하자면 hp bar가 enemy를 따라다니게 하고싶었는데 canvas 특성상 메인카메라를 따라다녀서 총알 pos조정처럼 transform target으로 조정하기 어려웠다.

+게임으로 추출하기위해선 build settings에 들어가면된다.

New Unity Project.exe
0.61MB

이렇게 5회에 걸쳐 간단한 플랫포머 게임을 클론코딩해보았다.

canvas 생성하는것과 animation 설정이가장 어려웠던것같다,,