// Update is called once per frame void Update() { if (!PlayerShipObject.Dead()) { WrappedBoundaryData playerShipBoundaryData = isOutsideBoundary(PlayerShipObject.transform.position, PlayerShipObject.getColliderExtents()); this.transform.position = new Vector3(this.transform.position.x, PlayerShipObject.transform.position.y, this.transform.position.z); for (int i = 0; i < FollowCameraObjects.Length; i++) { FollowCameraObjects[i].position = new Vector3(FollowCameraObjects[i].position.x, this.transform.position.y, FollowCameraObjects[i].position.z); } if (playerShipBoundaryData.isWrapped) { // temporarily set parent of Player Objects to allow them to also wrap for (int i = 0; i < PlayerObjects.Length; i++) { PlayerObjects[i].transform.parent = PlayerShipObject.transform; } PlayerShipObject.transform.position = playerShipBoundaryData.wrappedVector; // wrap // reset Player Objects parent to null for (int i = 0; i < PlayerObjects.Length; i++) { PlayerObjects[i].transform.parent = null; } } totalTime += Time.deltaTime; } else { if (BackgroundFade.color.a < 1) { BackgroundFade.color = new Color(BackgroundFade.color.r, BackgroundFade.color.g, BackgroundFade.color.b, BackgroundFade.color.a + .25f * Time.deltaTime); if (BackgroundFade.color.a > 1) { BackgroundFade.color = new Color(BackgroundFade.color.r, BackgroundFade.color.g, BackgroundFade.color.b, 1); } } } TimeSpan t = TimeSpan.FromSeconds(totalTime); string formattedTime = string.Format("{0:D2}:{1:D2}", t.Minutes, t.Seconds); if (CurrentHealth < 0) { CurrentHealth = 0; } GameObject.Find("TotalTime_Text").GetComponent <GUIText>().text = formattedTime; GameObject.Find("MinesDestroyed_Text").GetComponent <GUIText>().text = Convert.ToString(minesDestroyed); GameObject.Find("Health_Text").GetComponent <GUIText>().text = Convert.ToString((((int)currentHealth / maxHealth) * 100)) + "%"; GameObject.Find("LeakCount_Text").GetComponent <GUIText>().text = Convert.ToString(PlayerShipObject.LeakCount); }