안녕하세요

프로그램 과정에서 막혔던 문제들에 대한 해결책 정리


페이지 목록

2024년 12월 23일 월요일

[유니티][코파일럿][Unity][Copilot] Tricky한 이전 값과 현재 값 비교하기 어떻게 하는건가?

 이전값과 현재값 비교는 초기화 때 이전 값에 현재값을 넣어 준 후 

 현재값과 이전 값을 비교 하면 된다.

  int curHP;

 int prevHP;

로 했을 때

 SwordMan(){

     curHP = 100;

      prevHP = curHP; 로 curHP와 동일 값이 되도록 해준다.
}

이 후 void Update() {

       if(prevHP == curHP) {

               //같을 때 처리할 것들 적기 

               //이 후 prev 값은 cur 값으로 교체해준다.

              prevHP = curHP;
       }


}

에서 비교해주면 된다.


  이 경우 curHP와 prevHP가 같은 거 아니냐 하고 생각할 수 있는데 아래 method 와 같이 curHP만 변경해주는 경우가 있기에 성립된다.

void Attacked (int atkPower) {
     curHP -= atkPower;

}

 어딘가에서 Attacked 가 호출 된 경우 Prev 값과 cur 값이 달라지게 된다.


** 글은 Microsoft Copilot의 도움을 받아 작성되었습니다. Copilot은 AI 기반 어시스턴트로, 정보 제공과 다양한 작업을 지원합니다.

댓글 없음:

댓글 쓰기