// Use this for initialization void Start() { animator = GetComponent <Animator>(); nav = GetComponent <NavMeshAgent>(); destination = DirectionalNavSphere(transform.position, UnityEngine.Random.insideUnitSphere, RandomPathSearchDistance, -1); walking = false; alive = true; evading = false; waitCurrent = 0; //Random.Range(waitMin, waitMax); movementSpeed = 0; citizenType = GetComponent <Citizen>().Type; if (citizenType == Citizen.CitizenType.Attacker) { targetTransform = GameManager.VIP.transform; } }
void GameOver(Citizen.CitizenType reason) { if (state == GameState.Play) { if (reason == Citizen.CitizenType.VIP) { GUIScript.UpdateReason("The VIP has died"); Debug.Log("Game over, they can't keep getting away with it!"); } else { GUIScript.UpdateReason("An innocent's life has been lost"); Debug.Log("Game over, an innocents life has been lost."); } state = GameState.GameOver; GUIScript.showGameOver(); GUIScript.Countdown(restartDelay); waitAndRestartRoutine = StartCoroutine(waitThenCallback(restartDelay, () => { SceneManager.LoadScene(SceneManager.GetActiveScene().buildIndex); waitAndRestartRoutine = null; })); } }