//------------- Time Travel Related Functions: All --------------// private IEnumerator TravelBackInTime() { //Enable TimeTravel State playerManager.StartTimeTravelling(); //Fetcth the recording up until you pressed the reqind button Queue <TBInput> inputRecording = new Queue <TBInput>(controllerHandler.getRecording(playerManager.GetWhichPlayer())); //Set you up in proper position //transform.position = playerManager.getRecordedPosition(); List <positionalData> positionalDatas = playerManager.getRecordPositionList(); Color c = new Color(0.1f, 1f, 1f); transform.GetChild(2).GetChild(1).GetComponent <Renderer>().material.color = c; transform.GetChild(2).GetComponent <TrailRenderer>().enabled = true; for (int i = positionalDatas.Count - 1; i >= 0; i -= 2) { transform.position = positionalDatas[i].position; //playerManager.setPlayerOrientation(positionalDatas[i].orientation); //Debug.Log(positionalDatas[i].position); //yield return new WaitForSeconds(0.0000001f); yield return(new WaitForFixedUpdate()); } c = new Color(1f, 1f, 1f); transform.GetChild(2).GetChild(1).GetComponent <Renderer>().material.color = c; transform.GetChild(2).GetComponent <TrailRenderer>().enabled = false; // FIXME:UBISOFT VISIT FIXME //yield return new WaitForSeconds(timeTravelWaitTime); playerManager.StopTimeTravelling(); createEcho(inputRecording); transform.GetChild(2).GetComponent <TrailRenderer>().enabled = true; }