커뮤니티
포인트
쿠폰
내 강의실
국비 신청 내역
증명서
계정
로그아웃
학습 질문
개발 일지
나의 활동
답변 완료
retry 버튼
게임개발 종합반 v8
2주차
북마크
심*용
댓글
1
추천
0
조회수
27
조회수
27
답변 완료

* 겪고 있는 문제 상황을 최대한 자세하게 작성해주세요.

* 문제 해결을 위해 어떤 시도를 해보았는지 구체적으로 함께 알려주세요.


다시하기 버튼을 눌렀을 때 게임이 재시작이 안됩니다.



스파르타 즉문즉답


작성한 코드 및 에러 메세지

using System.Collections;

using System.Collections.Generic;

using UnityEngine;

using UnityEngine.UI;

using UnityEngine.SceneManagement;

public class gameManager : MonoBehaviour

{

  public GameObject square;

  public Text timeTxt;

  float alive = 0f;

  // Start is called before the first frame update

  public static gameManager I;

  public GameObject endPanel;

  public Text thisScoreTxt;

  bool isRunning = true;

  public Text bestScoreTxt;

  public Animator anim;



  void Awake()

  {

    I = this;

  }

  void Start()

  {

    Time.timeScale = 1.0f;

    InvokeRepeating("makeSquare", 0.0f, 0.5f);

  }


  // Update is called once per frame

  void Update()

  {

    if (isRunning)

    {

      alive += Time.deltaTime;

      timeTxt.text = alive.ToString("N2");

    }


  }

  void makeSquare()

  {

    Instantiate(square);

  }

  public void gameOver()

  {

    anim.SetBool("isDie", true);

    isRunning = false;

    Invoke("timeStop", 0.5f);

    thisScoreTxt.text = alive.ToString("N2");

    endPanel.SetActive(true);


    if (PlayerPrefs.HasKey("bestScore") == false)

    {

      PlayerPrefs.SetFloat("bestScore", alive);

    }

    else

    {

      if (PlayerPrefs.GetFloat("bestScore") < alive)

      {

        PlayerPrefs.SetFloat("bestScore", alive);

      }

    }

    float maxScore = PlayerPrefs.GetFloat("bestscore");

    bestScoreTxt.text = PlayerPrefs.GetFloat("bestScore").ToString("N2");

  }

  public void retry()

  {

    SceneManager.LoadScene("MainScene");

  }

  void timeStop()

  {

    Time.timeScale = 0.0f;

  }

}




취소
 공유
취소
댓글 0
댓글 알림
나의얼굴