public IEnumerator ExecuteLoadParameter(SceneData.Detail_Parameter detail_parameter) { Debug.Log("Ejecutando: " + this.gameObject.name + " param: " + detail_parameter.ToString()); switch (detail_parameter) { case SceneData.Detail_Parameter.none: break; case SceneData.Detail_Parameter.full_load: yield return(new WaitForSecondsRealtime(0.3f)); if (SceneData.low_detail) { this.low_detail = Instantiate(SceneData.low_detail); } yield return(new WaitForSecondsRealtime(0.3f)); if (SceneData.medium_detail) { this.medium_detail = Instantiate(SceneData.medium_detail); } yield return(new WaitForSecondsRealtime(0.3f)); if (SceneData.hight_detail) { this.hight_detail = Instantiate(SceneData.hight_detail); } yield return(null); break; case SceneData.Detail_Parameter.top_to_landmark: break; case SceneData.Detail_Parameter.top_to_low: break; case SceneData.Detail_Parameter.top_to_medium: break; case SceneData.Detail_Parameter.destroy_and_go_landmark: break; case SceneData.Detail_Parameter.destroy_and_go_low: break; case SceneData.Detail_Parameter.destroy_and_go_medium: break; } }
void TryToExecuteParameter(string sceneName, SceneData.Detail_Parameter parameter) { if (localref.ContainsKey(sceneName)) { StartCoroutine(localref[sceneName].ExecuteLoadParameter(parameter)); if (hotScenesParameters.ContainsKey(sceneName)) { hotScenesParameters.Remove(sceneName); } } else { if (!hotScenesParameters.ContainsKey(sceneName)) { hotScenesParameters.Add(sceneName, parameter); } else { hotScenesParameters[sceneName] = parameter; } } }