רוץ שוב
חלק מהיחידה בניית משחקים אמיתיים במסלול ה-Unity של Coddy. שיעור 32 מתוך 60.
אתגר
בינוניהפוך את הלחצן Run again להתחיל ריצה חדשה.
- ב־
GameManager, כתובvoid Restart()שטוענת מחדש את הסצנה:SceneManager.LoadScene(SceneManager.GetActiveScene().buildIndex);. - הוסף
void Start()עםrestartButton.onClick.AddListener(Restart);.
לחץ על "שחק", התרסק ולחץ על Run again: ריצה חדשה מתחילה. ואז לחץ על "בדיקה".
נסו בעצמכם
using UnityEngine;
using UnityEngine.UI;
using UnityEngine.SceneManagement;
using TMPro;
public enum GameState { Playing, GameOver }
public class GameManager : MonoBehaviour
{
public static GameManager Instance;
public float speed = 10f;
public float speedUp = 0.5f;
public float maxSpeed = 20f;
public TMP_Text distanceText;
public GameObject gameOverPanel;
public Button restartButton;
public GameState state = GameState.Playing;
private float distance;
void Awake()
{
Instance = this;
}
void Update()
{
if (state != GameState.Playing) return;
speed = Mathf.Min(speed + speedUp * Time.deltaTime, maxSpeed);
distance += speed * Time.deltaTime;
distanceText.text = "Distance: " + Mathf.FloorToInt(distance) + " m";
}
public void GameOver()
{
state = GameState.GameOver;
speed = 0f;
gameOverPanel.SetActive(true);
}
}
כל השיעורים ביחידה בניית משחקים אמיתיים
10פרויקט: משחק פלטפורמה תלת־ממדי
המסלולפלטפורמות נעותתרגלו בעצמכם: Unity אונליין