반응형
// 시간을 표시하는 text UI를 유니티에서 가져온다.
public Text gameTimeUI;
// 전체 제한 시간을 설정해준다. 여기서는 180초.
float setTime = 180;
// 분단위와 초단위를 담당할 변수를 만들어준다.
int min;
float sec;
void Update()
{
// 남은 시간을 감소시켜준다.
setTime -= Time.deltaTime;
// 전체 시간이 60초 보다 클 때
if (setTime >= 60f)
{
// 60으로 나눠서 생기는 몫을 분단위로 변경
min = (int)setTime / 60;
// 60으로 나눠서 생기는 나머지를 초단위로 설정
sec = setTime % 60;
// UI를 표현해준다
gameTime.text = "남은 시간 : " + min + "분" + (int)sec + "초";
}
// 전체시간이 60초 미만일 때
if (setTime < 60f)
{
// 분 단위는 필요없어지므로 초단위만 남도록 설정
gameTime.text = "남은 시간 : " + (int)setTime + "초";
}
// 남은 시간이 0보다 작아질 때
if (setTime <= 0)
{
// UI 텍스트를 0초로 고정시킴.
gameTime.text = "남은 시간 : 0초";
}
}
훨씬 더 간단하게 표현할 방법이 있을 것 같긴 한데
당장에 필요해서 급하게 만들어서 사용했다.
반응형
'유니티 Unity > 유니티 기능 구현' 카테고리의 다른 글
[유니티] Invoke(인보크) 메소드의 사용법 총정리 (1) | 2021.09.08 |
---|---|
유니티 C# : 주변 오브젝트 날려버리기 - AddExplosionForce (0) | 2021.07.02 |
월드 UI가 플레이어 입장에서 항상 보이도록 만들기 (0) | 2021.06.19 |
유니티 C# : 일정시간마다 랜덤한 좌표에 오브젝트를 생성하기 (0) | 2021.06.17 |
유니티 C# : 일정 범위에 존재하는 오브젝트 검출하는 방법 (0) | 2021.06.05 |
댓글