IEnumerator CreateStateWithFade(LoadingSubTask _subTask, Level _level, int _state) { visualM.FadeOut(); for (;;) { if (visualM.faded) { break; } yield return(null); } CreateState(_subTask, _level, _state); visualM.FadeIn(); }
void CreateState(LoadingSubTask _subTask, Level _level, int _state) { generalManagerS.ActiveSubTask = (int)_subTask; generalManagerS.ActiveLevel = _level; state = _state; //GameObject tempObj = null; timerS.setStateStartTime(); Debug.Log(_subTask + ", " + _level + ", " + _state); switch (_subTask) { #region CREATE_Identical_Boxes case LoadingSubTask.Identical_Boxes: switch (_level) { case Level.Tutorial: switch (_state) { case 0: //timing set timerS.initializeTimes(0.0f, 60.0f, 300.0f); //clear items boxM.ClearAll(); //tutorial visualM.tutorialSetNo = 0; visualM.tutorialOn = true; visualM.pictographsOn = false; visualM.visualOn = false; visualM.infoOn = false; //distracters off generalManagerS.DistracterM.ActiveteDistracters(false); //start save session saverS.StartSaveSession(); saverS.instanceCount = 1; timerS.setLevelStartTime(); //resume Omni boxM.ResumeHepticDevice(); break; case 1: //create one box boxM.CreateTutorial(false); //info on visualM.infoOn = true; break; case 100: //WIN //forman voice and visual visualM.pictographsOn = false; visualM.PlayVoice(6); visualM.visualNo = 0; if (visualM.visualOn) { visualM.visualStartTime = Time.timeSinceLevelLoad; } visualM.visualOn = true; //save session saverS.result = 1; saverS.SaveDataBase(); //pause Omni boxM.PauseHepticDevice(); break; case 200: //FAIL //visual visualM.pictographsOn = false; visualM.visualNo = 1; if (visualM.visualOn) { visualM.visualStartTime = Time.timeSinceLevelLoad; } visualM.visualOn = true; //save session saverS.result = 2; saverS.SaveDataBase(); //pause Omni boxM.PauseHepticDevice(); break; } break; case Level.Train_without_Distracters: switch (_state) { case 0: //timing set timerS.initializeTimes(0.0f, 60.0f, 300.0f); //visuals visualM.tutorialOn = false; visualM.pictographsOn = false; visualM.visualOn = false; visualM.infoOn = false; visualM.PlayVoice(9); //distracters off generalManagerS.DistracterM.ActiveteDistracters(false); //create boxes boxM.ClearAll(); randomInstanceCount = Random.Range(5, 8); boxM.DivideArea(randomInstanceCount, 0.0f, false); //info on visualM.infoOn = true; //start save session saverS.StartSaveSession(); saverS.instanceCount = randomInstanceCount; timerS.setLevelStartTime(); //resume Omni boxM.ResumeHepticDevice(); break; case 100: //WIN //forman voice and visual visualM.pictographsOn = false; visualM.PlayVoice(11); visualM.visualNo = 0; if (visualM.visualOn) { visualM.visualStartTime = Time.timeSinceLevelLoad; } visualM.visualOn = true; //save session saverS.result = 1; saverS.SaveDataBase(); //pause Omni boxM.PauseHepticDevice(); break; case 200: //FAIL //visual visualM.pictographsOn = false; visualM.visualNo = 1; if (visualM.visualOn) { visualM.visualStartTime = Time.timeSinceLevelLoad; } visualM.visualOn = true; //save session saverS.result = 2; saverS.SaveDataBase(); //pause Omni boxM.PauseHepticDevice(); break; } break; case Level.Train_with_Distracters: switch (_state) { case 0: //timing set timerS.initializeTimes(0.0f, 60.0f, 300.0f); //visuals visualM.tutorialOn = false; visualM.pictographsOn = false; visualM.visualOn = false; visualM.infoOn = false; visualM.PlayVoice(9); //distracters on //generalManagerS.DistracterM.SetActiveDistracters(992); generalManagerS.DistracterM.SetDistracterTiming(30.0f, 5.0f); generalManagerS.DistracterM.ActiveteDistracters(true); //create boxes boxM.ClearAll(); if (randomInstanceCount == 0) { randomInstanceCount = Random.Range(5, 8); } boxM.DivideArea(randomInstanceCount, 0.0f, false); //info on visualM.infoOn = true; //start save session saverS.StartSaveSession(); saverS.instanceCount = randomInstanceCount; timerS.setLevelStartTime(); //resume Omni boxM.ResumeHepticDevice(); break; case 100: //WIN //forman voice and visual visualM.pictographsOn = false; visualM.visualNo = 0; if (visualM.visualOn) { visualM.visualStartTime = Time.timeSinceLevelLoad; } visualM.visualOn = true; //distracters off generalManagerS.DistracterM.ActiveteDistracters(false); //save session saverS.result = 1; saverS.SaveDataBase(); //pause Omni boxM.PauseHepticDevice(); break; case 200: //FAIL //visual visualM.pictographsOn = false; visualM.visualNo = 1; if (visualM.visualOn) { visualM.visualStartTime = Time.timeSinceLevelLoad; } visualM.visualOn = true; //distracters off generalManagerS.DistracterM.ActiveteDistracters(false); //save session saverS.result = 2; saverS.SaveDataBase(); //pause Omni boxM.PauseHepticDevice(); break; } break; } break; #endregion #region CREATE_Labeled_Boxes case LoadingSubTask.Labeled_Boxes: switch (_level) { case Level.Tutorial: switch (_state) { case 0: //timing set timerS.initializeTimes(0.0f, 60.0f, 300.0f); //clear items boxM.ClearAll(); //tutorial visualM.tutorialSetNo = 1; visualM.tutorialOn = true; visualM.pictographsOn = false; visualM.visualOn = false; visualM.infoOn = false; //distracters off generalManagerS.DistracterM.ActiveteDistracters(false); //start save session saverS.StartSaveSession(); saverS.instanceCount = 1; timerS.setLevelStartTime(); //resume Omni boxM.ResumeHepticDevice(); break; case 1: //create one box boxM.ClearAll(); boxM.CreateTutorial(true); //info on visualM.infoOn = true; break; case 100: //WIN //forman voice and visual visualM.pictographsOn = false; visualM.PlayVoice(7); visualM.visualNo = 0; if (visualM.visualOn) { visualM.visualStartTime = Time.timeSinceLevelLoad; } visualM.visualOn = true; //save session saverS.result = 1; saverS.SaveDataBase(); //pause Omni boxM.PauseHepticDevice(); break; case 200: //FAIL //visual visualM.pictographsOn = false; visualM.visualNo = 1; if (visualM.visualOn) { visualM.visualStartTime = Time.timeSinceLevelLoad; } visualM.visualOn = true; //save session saverS.result = 2; saverS.SaveDataBase(); //pause Omni boxM.PauseHepticDevice(); break; } break; case Level.Train_without_Distracters: switch (_state) { case 0: //timing set timerS.initializeTimes(0.0f, 60.0f, 300.0f); //visuals visualM.tutorialOn = false; visualM.pictographsOn = false; visualM.visualOn = false; visualM.infoOn = false; visualM.PlayVoice(12); //distracters off generalManagerS.DistracterM.ActiveteDistracters(false); //create boxes boxM.ClearAll(); randomInstanceCount = Random.Range(5, 8); boxM.DivideArea(randomInstanceCount, 0.15f, true); //info on visualM.infoOn = true; //start save session saverS.StartSaveSession(); saverS.instanceCount = randomInstanceCount; timerS.setLevelStartTime(); //resume Omni boxM.ResumeHepticDevice(); break; case 100: //WIN //forman voice and visual visualM.pictographsOn = false; visualM.PlayVoice(14); visualM.visualNo = 0; if (visualM.visualOn) { visualM.visualStartTime = Time.timeSinceLevelLoad; } visualM.visualOn = true; //save session saverS.result = 1; saverS.SaveDataBase(); //pause Omni boxM.PauseHepticDevice(); break; case 200: //FAIL //visual visualM.pictographsOn = false; visualM.visualNo = 1; if (visualM.visualOn) { visualM.visualStartTime = Time.timeSinceLevelLoad; } visualM.visualOn = true; //save session saverS.result = 2; saverS.SaveDataBase(); //pause Omni boxM.PauseHepticDevice(); break; } break; case Level.Train_with_Distracters: switch (_state) { case 0: //timing set timerS.initializeTimes(0.0f, 60.0f, 300.0f); //visuals visualM.tutorialOn = false; visualM.pictographsOn = false; visualM.visualOn = false; visualM.infoOn = false; visualM.PlayVoice(12); //distracters on //generalManagerS.DistracterM.SetActiveDistracters(992); generalManagerS.DistracterM.SetDistracterTiming(30.0f, 5.0f); generalManagerS.DistracterM.ActiveteDistracters(true); //create boxes boxM.ClearAll(); if (randomInstanceCount == 0) { randomInstanceCount = Random.Range(5, 8); } boxM.DivideArea(randomInstanceCount, 0.15f, true); //info on visualM.infoOn = true; //start save session saverS.StartSaveSession(); saverS.instanceCount = randomInstanceCount; timerS.setLevelStartTime(); //resume Omni boxM.ResumeHepticDevice(); break; case 100: //WIN //visual visualM.pictographsOn = false; visualM.visualNo = 0; if (visualM.visualOn) { visualM.visualStartTime = Time.timeSinceLevelLoad; } visualM.visualOn = true; //distracters off generalManagerS.DistracterM.ActiveteDistracters(false); //save session saverS.result = 1; saverS.SaveDataBase(); //pause Omni boxM.PauseHepticDevice(); break; case 200: //FAIL //visual visualM.pictographsOn = false; visualM.visualNo = 1; if (visualM.visualOn) { visualM.visualStartTime = Time.timeSinceLevelLoad; } visualM.visualOn = true; //distracters off generalManagerS.DistracterM.ActiveteDistracters(false); //save session saverS.result = 2; saverS.SaveDataBase(); //pause Omni boxM.PauseHepticDevice(); break; } break; } break; #endregion #region CREATE_Timed_Boxes case LoadingSubTask.Timer: switch (_level) { case Level.Tutorial: switch (_state) { case 0: //timing set timerS.initializeTimes(0.0f, tutorialTime, tutorialTime * 5.95f); //clear items boxM.ClearAll(); //tutorial visualM.tutorialSetNo = 2; visualM.tutorialOn = true; visualM.pictographsOn = false; visualM.visualOn = false; visualM.infoOn = false; //distracters off generalManagerS.DistracterM.ActiveteDistracters(false); //start save session saverS.StartSaveSession(); saverS.instanceCount = 1; timerS.setLevelStartTime(); //resume Omni boxM.ResumeHepticDevice(); break; case 1: //create one box boxM.ClearAll(); boxM.CreateTutorial(true); startTime = Time.timeSinceLevelLoad; //info on(); visualM.infoOn = true; break; case 100: //WIN //forman voice and visual visualM.pictographsOn = false; visualM.PlayVoice(8); visualM.visualNo = 0; if (visualM.visualOn) { visualM.visualStartTime = Time.timeSinceLevelLoad; } visualM.visualOn = true; //save session saverS.result = 1; saverS.SaveDataBase(); //pause Omni boxM.PauseHepticDevice(); break; case 200: //FAIL //visual visualM.pictographsOn = false; visualM.visualNo = 1; if (visualM.visualOn) { visualM.visualStartTime = Time.timeSinceLevelLoad; } visualM.visualOn = true; //save session saverS.result = 2; saverS.SaveDataBase(); //pause Omni boxM.PauseHepticDevice(); break; } break; case Level.Train_without_Distracters: switch (_state) { case 0: //visuals visualM.tutorialOn = false; visualM.pictographsOn = false; visualM.visualOn = false; visualM.infoOn = false; visualM.PlayVoice(15); //distracters off generalManagerS.DistracterM.ActiveteDistracters(false); //create boxes boxM.ClearAll(); randomInstanceCount = Random.Range(5, 8); boxM.DivideArea(randomInstanceCount, 0.15f, true); startTime = Time.timeSinceLevelLoad; subTaskTime = randomInstanceCount * (20.0f + Random.Range(0.0f, 5.0f)); //timing set timerS.initializeTimes(0.0f, 60.0f, subTaskTime); //info on visualM.infoOn = true; //start save session saverS.StartSaveSession(); saverS.instanceCount = randomInstanceCount; timerS.setLevelStartTime(); //resume Omni boxM.ResumeHepticDevice(); break; case 100: //WIN //forman voice and visual visualM.pictographsOn = false; visualM.PlayVoice(17); visualM.visualNo = 0; if (visualM.visualOn) { visualM.visualStartTime = Time.timeSinceLevelLoad; } visualM.visualOn = true; //save session saverS.result = 1; saverS.SaveDataBase(); //pause Omni boxM.PauseHepticDevice(); break; case 200: //FAIL //visual visualM.pictographsOn = false; visualM.visualNo = 1; if (visualM.visualOn) { visualM.visualStartTime = Time.timeSinceLevelLoad; } visualM.visualOn = true; //save session saverS.result = 2; saverS.SaveDataBase(); //pause Omni boxM.PauseHepticDevice(); break; } break; case Level.Train_with_Distracters: switch (_state) { case 0: //visuals visualM.tutorialOn = false; visualM.pictographsOn = false; visualM.visualOn = false; visualM.infoOn = false; visualM.PlayVoice(15); //distracters on //generalManagerS.DistracterM.SetActiveDistracters(992); generalManagerS.DistracterM.SetDistracterTiming(30.0f, 5.0f); generalManagerS.DistracterM.ActiveteDistracters(true); //create boxes boxM.ClearAll(); if (randomInstanceCount == 0) { randomInstanceCount = Random.Range(5, 8); } boxM.DivideArea(randomInstanceCount, 0.15f, true); startTime = Time.timeSinceLevelLoad; subTaskTime = randomInstanceCount * (20.0f + Random.Range(0.0f, 5.0f)); //timing set timerS.initializeTimes(0.0f, 60.0f, subTaskTime); //info on visualM.infoOn = true; //start save session saverS.StartSaveSession(); saverS.instanceCount = randomInstanceCount; timerS.setLevelStartTime(); //resume Omni boxM.ResumeHepticDevice(); break; case 100: //WIN //forman voice and visual visualM.pictographsOn = false; visualM.visualNo = 0; if (visualM.visualOn) { visualM.visualStartTime = Time.timeSinceLevelLoad; } visualM.visualOn = true; //distracters off generalManagerS.DistracterM.ActiveteDistracters(false); //save session saverS.result = 1; saverS.SaveDataBase(); //pause Omni boxM.PauseHepticDevice(); break; case 200: //FAIL //visual visualM.pictographsOn = false; visualM.visualNo = 1; if (visualM.visualOn) { visualM.visualStartTime = Time.timeSinceLevelLoad; } visualM.visualOn = true; //distracters off generalManagerS.DistracterM.ActiveteDistracters(false); //save session saverS.result = 2; saverS.SaveDataBase(); //pause Omni boxM.PauseHepticDevice(); break; } break; } break; #endregion } //PHOTON CODE //generalManagerS.PhotonUpdate(); //PHOTON CODE }