public static bool LocalSeguro() { bool retorno = false; NomesCenas nomeDaCena = NomesCenas.cavernaIntro; try { nomeDaCena = (NomesCenas)System.Enum.Parse(typeof(NomesCenas), SceneManager.GetActiveScene().name); } catch { //Debug.Log("cena indisponivel"); } switch (nomeDaCena) { case NomesCenas.katidsTerrain: retorno = LocaisSegurosDeKatidesTerrain.LocalSeguro(); break; case NomesCenas.TempleZone: retorno = LocaisSegurosDeTempleZone.LocalSeguro(); break; case NomesCenas.Marjan: retorno = LocaisSegurosDeMarjan.LocalSeguro(); break; } return(retorno); }
public static void CarregarCenas(NomesCenas[] nomesCenas, NomesCenas cenaComum = NomesCenas.nula) { GameObject G = new GameObject(); SceneLoader loadScene = G.AddComponent <SceneLoader>(); loadScene.CenaDoCarregamento(nomesCenas, cenaComum); }
public static void OnFadeOutComplete(NomesCenas[] cenasAlvo, NomesCenas estaCenaAtiva, Vector3 pos) { posAlvo = pos; if (estaCenaAtiva != NomesCenas.nula) { cenaAtiva = estaCenaAtiva; } else { cenaAtiva = cenasAlvo[0]; } Time.timeScale = 0; contCenasCaregadas = 0; NomesCenas[] N = SceneLoader.DescarregarCenasDesnecessarias(cenasAlvo); for (int i = 0; i < N.Length; i++) { SceneManager.UnloadSceneAsync(N[i].ToString()); } N = SceneLoader.PegueAsCenasPorCarregar(cenasAlvo); numCenasParaCarregar = N.Length; for (int i = 0; i < N.Length; i++) { SceneManager.LoadScene(N[i].ToString(), LoadSceneMode.Additive); } SceneManager.sceneLoaded += OnSceneLoaded; }
public UltimoArmagedomVisitado(Vector3 pos, NomesCenas cena) { V = new float[3] { pos[0], pos[1], pos[2] }; nomeDaCena = cena; }
public void SetarCenasAtivas(NomesCenas[] cenasAtivas) { this.cenasAtivas = new List <NomesCenas>(); this.cenasAtivas.AddRange(cenasAtivas); cenaAtiva = cenasAtivas[0]; }
public void CenaDoCarregamento(NomesCenas[] nomesCenas, NomesCenas cenaComum = NomesCenas.nula) { this.cenaComum = cenaComum; DontDestroyOnLoad(gameObject); cenasParaCarregar = nomesCenas; SceneManager.LoadScene(NomesCenas.CenaDeCarregamento.ToString()); SceneManager.sceneLoaded += IniciarCarregamento; }
public void SetarCenasAtivas(NomesCenas[] cenasAtivas) { this.cenasAtivas = new List <NomesCenas>(); for (int i = 0; i < cenasAtivas.Length; i++) { this.cenasAtivas.AddRange(cenasAtivas); } cenaAtiva = cenasAtivas[0]; }
public DadosDeCena GetSceneDates(string nome) { NomesCenas s = StringParaEnum.ObterEnum <NomesCenas>(nome, true); //Debug.Log(s+" : "+default(NomesCenas)); if (s != default(NomesCenas)) { return(GetSceneDates(s)); } return(null); }
public DadosDeCena GetSceneDates(NomesCenas nome) { for (int i = 0; i < meusDados.Count; i++) { if (meusDados[i].nomeDaCena == nome) { return(meusDados[i]); } } Debug.Log("Parece que não foi encontrada a cena no dicionario"); return(null); }
public static void FacaModificacoes() { NomesCenas nomeDaCena = (NomesCenas)System.Enum.Parse(typeof(NomesCenas), SceneManager.GetActiveScene().name ); switch (nomeDaCena) { case NomesCenas.petrolifera: case NomesCenas.esgoto: GameObject.Find("Directional Light").GetComponent <Light>().intensity = 0; break; } }
public void SetarCenasAtivas() { NomesCenas[] nomesDeCenas = (NomesCenas[])(System.Enum.GetValues(typeof(NomesCenas))); cenasAtivas = new List <NomesCenas>(); for (int i = 0; i < nomesDeCenas.Length; i++) { if (SceneManager.GetSceneByName(nomesDeCenas[i].ToString()).isLoaded) { cenasAtivas.Add(nomesDeCenas[i]); } } cenaAtiva = (NomesCenas)System.Enum.Parse(typeof(NomesCenas), SceneManager.GetActiveScene().name); }
public void VerifiqueLimitantesParaMudeCena(NomesCenas cenaAlvo) { if (camLimits != null) { if (camLimits.Length > 0) { limitantes = (DadosDeCena.LimitantesDaCena)GlobalController.g.SceneDates.GetSceneDates(cenaAlvo).limitantes.Clone(); for (int i = 0; i < camLimits.Length; i++) { AltereLimitante(camLimits[i]); } SceneManager.activeSceneChanged += ModifiqueLimitantesAct; SceneManager.sceneLoaded += ModifiqueLimitantes; } } }
public void MudeLimitantesParaTrigger(NomesCenas cenaAlvo, float tempoDeLerpLimits) { limitantes = (DadosDeCena.LimitantesDaCena)GlobalController.g.SceneDates.GetSceneDates(cenaAlvo).limitantes.Clone(); if (camLimits != null) { if (camLimits.Length > 0) { //Debug.Log("send event A" + limitantes.xMax + " : " + tempoDeLerpLimits); for (int i = 0; i < camLimits.Length; i++) { AltereLimitante(camLimits[i]); } } } EventAgregator.Publish(new StandardSendGameEvent(EventKey.requestChangeCamLimits, limitantes, tempoDeLerpLimits)); }
/*Essa função precisa de grandes melhorias*/ void TentarSetarCena(NomesCenas s) { DadosDeCena dd = null; bool foi = false; foreach (DadosDeCena d in meusDados) { if (d.nomeDaCena == s) { foi = true; dd = d; } } if (foi) { if (dd.limitantes.xMax == dd.limitantes.xMin) { GameObject G = GameObject.Find("startBlock"); if (G != null) { dd.limitantes.xMin = G.transform.position.x; dd.limitantes.yMin = G.transform.position.y; } G = GameObject.Find("endBlock"); if (G != null) { dd.limitantes.xMax = G.transform.position.x; dd.limitantes.yMax = G.transform.position.y; } } } else { GameObject G1 = GameObject.Find("startBlock"); GameObject G2 = GameObject.Find("endBlock"); if (G1 != null && G2 != null) { Vector3 V1 = G1.transform.position; Vector3 V2 = G2.transform.position; meusDados.Add(new DadosDeCena() { bkColor = new Color(.25f, .35f, .75f), limitantes = new DadosDeCena.LimitantesDaCena() { xMin = V1.x, xMax = V2.x, yMax = V2.y, yMin = V1.y }, nomeDaCena = s }); } else { Debug.LogWarning("startBlock e endBlock não inseridos"); } } }
public static void CarregarCenas(NomesCenas nomeCena, NomesCenas cenaComum = NomesCenas.nula) { CarregarCenas(new NomesCenas[1] { nomeCena }, cenaComum); }
public static bool EstaCenaEstaCarregada(NomesCenas nome) { return(SceneManager.GetSceneByName(nome.ToString()).isLoaded); }
AsyncOperation AditiveLoadScene(NomesCenas n) { return(SceneManager.LoadSceneAsync(n.ToString(), LoadSceneMode.Additive)); }