IEnumerator RespawnNew() { // Destroy & respawn yield return(new WaitForSeconds(8f)); pedestrianManager.KillPed(); Destroy(gameObject); }
// Ends the current mission public void EndMission(bool completed) { StopCoroutine("IncreaseTimeTaken"); passengerTimer.GetComponent <Text> ().text = ""; if (completed) { // Passenger delivered successfully passengerLeave.volume = PlayerPrefs.GetFloat("sfx", 1); passengerLeave.Play(); if (passengerTime - timeTaken > 0) { // If the time left is positive noticesManager.ShowMainScreenNotice("Passenger Delivered", "+ " + moneyManager.moneySymbol + ((passengerTime - timeTaken) * fareMultiplier), new Color(93 / 255, 255 / 255, 0 / 255), successSound); } else { // If the time left is negative noticesManager.ShowMainScreenNotice("Passenger Refunded", "- " + moneyManager.moneySymbol + (((passengerTime - timeTaken) * fareMultiplier) * -1), new Color(255 / 255, 69 / 255, 69 / 255), failSound); } moneyManager.ChangeMoney((passengerTime - timeTaken) * fareMultiplier); timeTaken = 0; } else { // Passenger not delivered successfully noticesManager.ShowMainScreenNotice("Passenger Killed", "- " + moneyManager.moneySymbol + killPenaltyAmount, new Color(255 / 255, 69 / 255, 69 / 255), failSound); moneyManager.ChangeMoney(-killPenaltyAmount); } Destroy(GameObject.Find("Destination").gameObject); GameObject.Find("Player").transform.Find("Passenger").gameObject.SetActive(false); GameObject.Find("Player").GetComponent <CarDrive> ().ForceHandbrake = false; pedestrianManager.KillPed(); StartCoroutine("FindNewPassenger"); }