BÖLÜM 7 / 10
Skor ve GameManager
Skor sayacını ve merkezi GameManager'ı bağlıyoruz.
Unity Editör Adımları
Canvas > TMP_Text → 'ScoreText'
GameManager ve ScoreManager objeleri oluştur
GameOverPanel (Restart butonu ile)
using UnityEngine;
using TMPro;
using UnityEngine.SceneManagement;
public class ScoreManager : MonoBehaviour
{
public static ScoreManager Instance;
public TMP_Text scoreText;
private int score;
void Awake() { Instance = this; scoreText.text = "0000"; }
public void AddScore(int v) { score += v; scoreText.text = score.ToString("D4"); }
public int GetScore() => score;
}
public class GameManager : MonoBehaviour
{
public static GameManager Instance;
public GameObject gameOverPanel;
private bool playing;
void Awake() => Instance = this;
void Start() { playing = true; gameOverPanel.SetActive(false); }
public void GameOver()
{
playing = false; Time.timeScale = 0f; gameOverPanel.SetActive(true);
int s = ScoreManager.Instance.GetScore();
if (s > PlayerPrefs.GetInt("FruitBest", 0)) PlayerPrefs.SetInt("FruitBest", s);
}
public void Restart() { Time.timeScale = 1f; SceneManager.LoadScene(0); }
public bool IsPlaying() => playing;
}
score.ToString("D4") skoru 4 haneli gösterir — arcade his verir.