This problem is really bugging me, any help would be appreciated!
Script #1
using UnityEngine;
using UnityEngine.UI;
using UnityEngine.SceneManagement;
public class Score : MonoBehaviour
{
public Transform player;
public Text scoreText ;
static float zPos;
void Update()
{
zPos = 1 + player.position.z / 2;
scoreText.text = zPos.ToString("0");
PlayerPrefs.SetFloat("theScore", zPos);
if (FindObjectOfType<GameManager>().GameEnds == true)
{
Destroy(scoreText);
}
}
}
Script #2
using UnityEngine;
using UnityEngine.SceneManagement;
public class GameManager : MonoBehaviour
{
public bool GameEnds = false;
public GameObject levelComplete;
public GameObject GameOverAn;
public GameObject pauseMenuUI;
public static bool pauseMenu;
public void GameOver()
{
if (GameEnds == false)
{
GameEnds = true;
GameOverAn.SetActive(true);
Destroy(levelComplete);
}
}
public void Update()
{
if (Input.GetKeyDown(KeyCode.Escape))
{
if (pauseMenu)
{
Resume();
}
else
{
Pause(); ;
}
}
}
public void Resume()
{
pauseMenuUI.SetActive(false);
Time.timeScale = 1f;
pauseMenu = false;
}
void Pause()
{
pauseMenuUI.SetActive(true);
Time.timeScale = 0f;
pauseMenu = true;
}
void RestartGame()
{
SceneManager.LoadScene(SceneManager.GetActiveScene().name);
}
public void NextLevel()
{
SceneManager.LoadScene(SceneManager.GetActiveScene().buildIndex + 1);
}
public void LevelComplete()
{
levelComplete.SetActive(true);
Destroy(GameOverAn);
}
}
Note: I am a beginner casually looking for answers from similar questions, but nothing that i found was helpful (since i am not very familiar with complicated code).