유니티 플레이어 체온 구현하기
오랜만에 팀 프로젝트를 시작했다.
우리는 발헤임, 아크와 같은 3D 서바이벌 아포칼립스 생존게임을 만들기로 했다.
좀비도 등장하고, 캐릭터가 배틀그라운드 3인칭 처럼 3인칭 구현으로 하기로 했다.
물론 총, 총알까지 나오면 시간이 너무 부족할 것 같아서 총은 제외 ㅎㅎ;
그래서 나는 일단 플레이어의 상태를 맡기로 하였다.
플레이어의 상태에는 체력, 배고픔, 갈증, 스태미나, 체온 총 5가지 였다.
다른 것들은 다 이전 강의에서 배운것이여서 수월하게 진행했는데,
체온? 체온을 어떻게 할까 나는 고민에 빠졌다.
그러다가 아! 텍스트메쉬를 활용하여 텍스트를 변하게 하면 되겠구나! 싶었다.
그래서 바디템프라는 클래스를 만들었다.
우선 현재 온도, 시작할 때 온도, 최고 온도, 패시브 온도(변화하는 값) 그리고 실질적으로 체온이
변하는 게 보이는 텍스트를 변수로 선언한다.
그리고 스타트에서 현재체온 = 시작체온 으로 설정하고,
업데이트에서 텍스트 UI에 현재텍스트를 출력한다. F2는 소수 둘째자리까지 표현하기 위함이고 뒤에 °C를 적는다.
그리고 주석처리해놨는데 뜨거울 때는 예를 들어 더운 지역을 가거나, 불에 닿였을 때 같은 경우이기 때문에 아직 구현을 안해놨기 때문에 주석처리를 해놨다.
자 핫 함수와 콜드함수를 봐보자. 매우 간단하다
뜨거운 곳에 갔을 때 현재 체온을 올려주되, 최대체온을 넘지 않도록 하는 것이다.
콜드함수는 반대이다.
이처럼 간단하게 구현을 했다.
물론 나중에 어떤 상황에 이 함수를 써야하는지가 어려울 것 같다. 그렇지만 이 코드들이 100퍼센트 내 머리에서
나왔다는 것에 자화자찬하며 매우 뿌듯하게 하루를 보낼것이다.