Unity 카운트다운 기능 구현
카운트다운 을 실현 할 수 있 는 두 가지 사고방식 이 있 는데 하 나 는 Update 이 고 다른 하 나 는 협정 이다.여기 서 핵심 적 인 알고리즘 아이디어 만 보 여 드 리 고 수확 이 있 으 면 좋아요 도 눌 러 주세요.
Update
먼저 세 개의 변 수 를 정의 하고 접근 권한 은 필요 에 따라 설정 합 니 다.
float GameTime; // ,int float ,
float TimeLeft; // ,
float Timer; //
Text TimeCountDown; // Text
사고방식:먼저 GameTime 으로 TimeLeft 를 초기 화하 고 Update 에서 타이머 가 계속 증가 합 니 다.1 초가 지나 면 TimeLeft 는-1 을 하고 타 이 머 를 리 셋 합 니 다.코드 는 다음 과 같 습 니 다:
void Update()
{
Timer += Time.deltaTime;
if (Timer >= 1) //
{
GameTime -= 1; // -1
if (TimeLeft <= 0) // 0,
{
Time.timeScale = 0;
}
int _minute = TimeLeft / 60; //
float _second = TimeLeft % 60; //
//
TimeCountDown.text = _minute + ":" + string.Format("{0:00}", _second);
m_TrGame = 0f; //
}
}
협정상대 적 으로 협 정 은 좀 간단 해 야 한다.마찬가지 로 몇 개의 변 수 를 먼저 정의 합 니 다.
float GameTime; // ,int float ,
float TimeLeft; // ,
Text TimeCountDown; // Text
사고방식:우선 GameTime 으로 TimeLeft 를 초기 화한 다음 에 협정 에 순환 을 설정 하고 매번 순환 할 때마다 TimeLeft 는-1 이다.코드 는 다음 과 같 습 니 다:
IEnumerator TimeCountDown()
{
TimeLeft = GameTime; //
while (true)
{
int _minute = TimeLeft / 60; //
float _second = TimeLeft % 60; //
//
TimeCountDown.text = _minute + ":" + string.Format("{0:00}", _second);
if (TimeLeft <= 0) // 0,
{
Time.timeScale = 0;
yield break; // ,
}
yield return new WaitForSeconds(1f); // 1s
}
}
꼭 혼자 써 주세요.이상 이 바로 본 고의 모든 내용 입 니 다.여러분 의 학습 에 도움 이 되 고 저 희 를 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
photonnetwork.instantiate에서 gamepobject 유형을 생성 한 다음 상태 및 값을 참조하는 방법주로 마지막 기사에서 일어난 일의 수정입니다. 지난번↓ 그럼 주제입니다. (타이틀이 정리되어 없어서 죄송합니다) 우선 전회의 Illegal view ID:0입니다만 photonnetwork.instantiate를 사...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.