카테고리 없음

0413_ 죽는 애니메이션 업데이트에서 한번만 나타내기

minquu 2021. 4. 13. 16:13
반응형

 

 

void Update()
    {
        if (isGameover == false) {
            this.delta += Time.deltaTime;
            this.hpBarUI.fillAmount = (hp - (delta * 0.5f));
        }
        if (hpBarUI.fillAmount == 0 /*&& player.deadAni == false*/) {
            player.Die();
        }
    }

문제점

 

이 코드에서 체력필마운트(이미지의 양)이 0일때

다이 메서드를 소환하게 되어있다.

하지만 업데이트에서 소환을해서 애니메이션에 계속 소환되서 캐릭터가 멈춰있는 걸로 보인다.

 

해결방법

 

Die 메서드를 만들때, 

playerController 스크립터에서  다이 애니메이션 유무 변수를 하나 만들어서

Die 메서드 소환시 true로 바꿔준다.

그리고 업데이트 문에서, 조건문을 하나 더 달아준다./

player.deadAni == false 추가해준다.

그러면 죽을때 deadAni (죽음 모션을 했는지 여부)를 트루로 바꿔주기 떄문에

업데이트문에 또 들어가지 않는다.

 

 

 

 

 

 

 

 

반응형