//Reset current task public void ResetTask(int i) { TaskIndex = i; TrialIndex = 0; ListIndex = 0; IsTrialOn = false; IsTrialFinished = false; IsExperimentFinished = false; IsTaskFinished = false; if (i == 0) { Studio.transform.localScale = new Vector3(-1, 1, 1); BedPiano.transform.localScale = new Vector3(-1, 1, 1); TVWindow.transform.localScale = new Vector3(-1, 1, 1); Task0Source.Play(); TargetIndex = (int)UnityEngine.Random.Range(0, TotalObjNum); ListSource = TargetObjects [TargetIndex].GetComponent <AudioSource> (); TargetPosition = TargetObjects [TargetIndex].transform.position; } else if (i == 1) { Studio.transform.localScale = new Vector3(1, 1, 1); BedPiano.transform.localScale = new Vector3(1, 1, 1); TVWindow.transform.localScale = new Vector3(1, 1, 1); Task1Source.Play(); TargetIndex = (int)UnityEngine.Random.Range(0, TotalObjNum); ListSource = TargetObjects [TargetIndex].GetComponent <AudioSource> (); TargetPosition = TargetObjects [TargetIndex].transform.position; } else if (i == 2) { Studio.transform.localScale = new Vector3(1, 1, 1); BedPiano.transform.localScale = new Vector3(1, 1, 1); TVWindow.transform.localScale = new Vector3(1, 1, 1); var ChairRenderer = Chair.GetComponent <MeshRenderer> (); Chair.SetActive(true); Task2Source.Play(); ResetTrial(); TargetPosition = Chair.transform.position; } else if (i == 3) { Studio.transform.localScale = new Vector3(1, 1, 1); BedPiano.transform.localScale = new Vector3(1, 1, 1); TVWindow.transform.localScale = new Vector3(1, 1, 1); IsSpotlightOn = true; var ChairRenderer = Chair.GetComponent <MeshRenderer> (); Chair.SetActive(false); Task3Source.Play(); ResetTrial(); TargetPosition = Key.transform.position; } FileName = FolderPath + System.DateTime.Now.ToString("yy-MM-dd") + "-" + System.DateTime.Now.ToString("hh-mm-ss") + "_" + TaskIndex + "_" + FileIndex.ToString() + ".txt"; recording = new StreamWriter(new FileStream(@FileName, FileMode.Create)); recording.AutoFlush = true; FileName2 = FolderPath + "Summary" + System.DateTime.Now.ToString("yy-MM-dd") + "-" + System.DateTime.Now.ToString("hh-mm-ss") + "_" + TaskIndex + "_" + FileIndex.ToString() + ".txt"; summary = new StreamWriter(new FileStream(@FileName2, FileMode.Create)); summary.AutoFlush = true; }
void ChairSpawn() { foreach (GameObject Chair in m_Stoelen) { int _Random = UnityEngine.Random.Range(0, m_ChairSpawns.Count); Chair.transform.position = m_ChairSpawns[_Random].transform.position; Destroy(m_ChairSpawns[_Random]); m_ChairSpawns.Remove(m_ChairSpawns[_Random]); Chair.SetActive(true); } }
// Update is called once per frame void Update() { if (OVRInput.GetDown(OVRInput.RawButton.RIndexTrigger)) { // Wall position if (BuildStage == 0 && Building == true) { Wall.SetActive(true); WallYrot = ReturnReferencePosition().transform.eulerAngles.y; WallPosition = new Vector3(ReturnReferencePosition().transform.position.x, ReturnReferencePosition().transform.position.y, ReturnReferencePosition().transform.position.z); _wallBuilder.UpdateWallPosition(WallPosition, WallYrot); // Save values PlayerPrefs.SetFloat("WallPositionX", WallPosition.x); PlayerPrefs.SetFloat("WallPositionY", WallPosition.y); PlayerPrefs.SetFloat("WallPositionZ", WallPosition.z); PlayerPrefs.SetFloat("WallRotationY", WallYrot); // Change instructions Ins1.SetActive(false); Ins2.SetActive(true); } // Desk position if (BuildStage == 1 && Building == true) { Desk.SetActive(true); DeskYrot = ReturnReferencePosition().transform.eulerAngles.y; DeskPosition = new Vector3(ReturnReferencePosition().transform.position.x, ReturnReferencePosition().transform.position.y, ReturnReferencePosition().transform.position.z); _deskBuilder.UpdateDeskPosition(DeskPosition, DeskYrot); // Save values PlayerPrefs.SetFloat("DeskPositionX", DeskPosition.x); PlayerPrefs.SetFloat("DeskPositionY", DeskPosition.y); PlayerPrefs.SetFloat("DeskPositionZ", DeskPosition.z); PlayerPrefs.SetFloat("DeskRotationY", DeskYrot); // Change instructions Ins2.SetActive(false); Ins3.SetActive(true); } // Desk height if (BuildStage == 2 && Building == true) { DeskHeight = new Vector3(ReturnReferencePosition().transform.position.x, ReturnReferencePosition().transform.position.y, ReturnReferencePosition().transform.position.z); _deskBuilder.UpdateDeskHeight(DeskHeight); // Save values PlayerPrefs.SetFloat("DeskHeightX", DeskHeight.x); PlayerPrefs.SetFloat("DeskHeightY", DeskHeight.y); PlayerPrefs.SetFloat("DeskHeightZ", DeskHeight.z); // Change instructions Ins3.SetActive(false); Ins4.SetActive(true); } // Desk right if (BuildStage == 3 && Building == true) { DeskRight = new Vector3(ReturnReferencePosition().transform.position.x, ReturnReferencePosition().transform.position.y, ReturnReferencePosition().transform.position.z); _deskBuilder.UpdateDeskRight(DeskRight); // Save values PlayerPrefs.SetFloat("DeskRightX", DeskRight.x); PlayerPrefs.SetFloat("DeskRightY", DeskRight.y); PlayerPrefs.SetFloat("DeskRightZ", DeskRight.z); // Change instructions Ins4.SetActive(false); Ins5.SetActive(true); } // Desk left if (BuildStage == 4 && Building == true) { DeskLeft = new Vector3(ReturnReferencePosition().transform.position.x, ReturnReferencePosition().transform.position.y, ReturnReferencePosition().transform.position.z); _deskBuilder.UpdateDeskLeft(DeskLeft); // Save values PlayerPrefs.SetFloat("DeskLeftX", DeskLeft.x); PlayerPrefs.SetFloat("DeskLeftY", DeskLeft.y); PlayerPrefs.SetFloat("DeskLeftZ", DeskLeft.z); ContentHolder.transform.position = AttachReference.transform.position; // Change instructions Ins5.SetActive(false); Ins6.SetActive(true); } // Desk back if (BuildStage == 5 && Building == true) { DeskBack = new Vector3(ReturnReferencePosition().transform.position.x, ReturnReferencePosition().transform.position.y, ReturnReferencePosition().transform.position.z); _deskBuilder.UpdateDeskBack(DeskBack); // Save values PlayerPrefs.SetFloat("DeskBackX", DeskBack.x); PlayerPrefs.SetFloat("DeskBackY", DeskBack.y); PlayerPrefs.SetFloat("DeskBackZ", DeskBack.z); // Change instructions Ins6.SetActive(false); Ins7.SetActive(true); } // Button 1 if (BuildStage == 6 && Building == true) { Button1.SetActive(true); Button1Pos = new Vector3(ReturnReferencePosition().transform.position.x, ReturnReferencePosition().transform.position.y, ReturnReferencePosition().transform.position.z); _deskBuilder.UpdateButton1(Button1Pos); // Save values PlayerPrefs.SetFloat("Button1X", Button1Pos.x); PlayerPrefs.SetFloat("Button1Y", Button1Pos.y); PlayerPrefs.SetFloat("Button1Z", Button1Pos.z); // Change instructions Ins7.SetActive(false); Ins8.SetActive(true); } // Button 2 if (BuildStage == 7 && Building == true) { Button2.SetActive(true); Button2Pos = new Vector3(ReturnReferencePosition().transform.position.x, ReturnReferencePosition().transform.position.y, ReturnReferencePosition().transform.position.z); _deskBuilder.UpdateButton2(Button2Pos); // Save values PlayerPrefs.SetFloat("Button2X", Button2Pos.x); PlayerPrefs.SetFloat("Button2Y", Button2Pos.y); PlayerPrefs.SetFloat("Button2Z", Button2Pos.z); // Change instructions Ins8.SetActive(false); Ins9.SetActive(true); } // Button 3 if (BuildStage == 8 && Building == true) { Button3.SetActive(true); Button3Pos = new Vector3(ReturnReferencePosition().transform.position.x, ReturnReferencePosition().transform.position.y, ReturnReferencePosition().transform.position.z); _deskBuilder.UpdateButton3(Button3Pos); // Save values PlayerPrefs.SetFloat("Button3X", Button3Pos.x); PlayerPrefs.SetFloat("Button3Y", Button3Pos.y); PlayerPrefs.SetFloat("Button3Z", Button3Pos.z); // Change instructions Ins9.SetActive(false); Ins10.SetActive(true); } // Button 4 if (BuildStage == 9 && Building == true) { Button4.SetActive(true); Button4Pos = new Vector3(ReturnReferencePosition().transform.position.x, ReturnReferencePosition().transform.position.y, ReturnReferencePosition().transform.position.z); _deskBuilder.UpdateButton4(Button4Pos); // Save values PlayerPrefs.SetFloat("Button4X", Button4Pos.x); PlayerPrefs.SetFloat("Button4Y", Button4Pos.y); PlayerPrefs.SetFloat("Button4Z", Button4Pos.z); // Change instructions Ins10.SetActive(false); Ins11.SetActive(true); } // Chair position if (BuildStage == 10 && Building == true) { Chair.SetActive(true); ChairYrot = ReturnReferencePosition().transform.eulerAngles.y; ChairPosition = new Vector3(ReturnReferencePosition().transform.position.x, ReturnReferencePosition().transform.position.y, ReturnReferencePosition().transform.position.z); _chairBuilder.UpdateChairPosition(ChairPosition, ChairYrot); // Save values PlayerPrefs.SetFloat("ChairPositionX", ChairPosition.x); PlayerPrefs.SetFloat("ChairPositionY", ChairPosition.y); PlayerPrefs.SetFloat("ChairPositionZ", ChairPosition.z); PlayerPrefs.SetFloat("ChairRotationY", ChairYrot); // Change instructions Ins11.SetActive(false); Ins12.SetActive(true); } // Chair height if (BuildStage == 11 && Building == true) { ChairHeight = new Vector3(ReturnReferencePosition().transform.position.x, ReturnReferencePosition().transform.position.y, ReturnReferencePosition().transform.position.z); _chairBuilder.UpdateChairHeight(ChairHeight); // Save values PlayerPrefs.SetFloat("ChairHeightX", ChairHeight.x); PlayerPrefs.SetFloat("ChairHeightY", ChairHeight.y); PlayerPrefs.SetFloat("ChairHeightZ", ChairHeight.z); // Change instructions Ins12.SetActive(false); Ins13.SetActive(true); } // Chair right if (BuildStage == 12 && Building == true) { ChairRight = new Vector3(ReturnReferencePosition().transform.position.x, ReturnReferencePosition().transform.position.y, ReturnReferencePosition().transform.position.z); _chairBuilder.UpdateChairRight(ChairRight); // Save values PlayerPrefs.SetFloat("ChairRightX", ChairRight.x); PlayerPrefs.SetFloat("ChairRightY", ChairRight.y); PlayerPrefs.SetFloat("ChairRightZ", ChairRight.z); // Change instructions Ins13.SetActive(false); Ins14.SetActive(true); } // Chair left if (BuildStage == 13 && Building == true) { ChairLeft = new Vector3(ReturnReferencePosition().transform.position.x, ReturnReferencePosition().transform.position.y, ReturnReferencePosition().transform.position.z); _chairBuilder.UpdateChairLeft(ChairLeft); // Save values PlayerPrefs.SetFloat("ChairLeftX", ChairLeft.x); PlayerPrefs.SetFloat("ChairLeftY", ChairLeft.y); PlayerPrefs.SetFloat("ChairLeftZ", ChairLeft.z); // Change instructions Ins14.SetActive(false); Ins15.SetActive(true); } // Chair back if (BuildStage == 14 && Building == true) { ChairBack = new Vector3(ReturnReferencePosition().transform.position.x, ReturnReferencePosition().transform.position.y, ReturnReferencePosition().transform.position.z); _chairBuilder.UpdateChairBack(ChairBack); // Save values PlayerPrefs.SetFloat("ChairBackX", ChairBack.x); PlayerPrefs.SetFloat("ChairBackY", ChairBack.y); PlayerPrefs.SetFloat("ChairBackZ", ChairBack.z); // Change instructions Ins15.SetActive(false); Ins16.SetActive(true); } // Chair back height if (BuildStage == 15 && Building == true) { ChairBackHeight = new Vector3(ReturnReferencePosition().transform.position.x, ReturnReferencePosition().transform.position.y, ReturnReferencePosition().transform.position.z); _chairBuilder.UpdateChairBackHeight(ChairBackHeight); // Save values PlayerPrefs.SetFloat("ChairBackHeightX", ChairBackHeight.x); PlayerPrefs.SetFloat("ChairBackHeightY", ChairBackHeight.y); PlayerPrefs.SetFloat("ChairBackHeightZ", ChairBackHeight.z); // Change instructions Ins16.SetActive(false); InstructionCanvas.SetActive(false); // Save object positions CombineScene(); PlayerPrefs.SetInt("IsSavedData", 1); LaserPointer.SetActive(true); } if (BuildStage > 15 && Building == true) { ResetGlobalPosition(); LaserPointer.SetActive(true); } if (Building == true) { BuildStage++; } } }