void Awake() { if (Instance != this) { Destroy(gameObject); return; } DontDestroyOnLoad(gameObject); m_PlayerInput = FindObjectOfType <PlayerInput>(); if (initialSceneTransitionDestination != null) { SetEnteringGameObjectLocation(initialSceneTransitionDestination); ScreenFader.SetAlpha(1f); StartCoroutine(ScreenFader.FadeSceneIn()); initialSceneTransitionDestination.OnReachDestination.Invoke(); } else { m_CurrentZoneScene = SceneManager.GetActiveScene(); m_ZoneRestartDestinationTag = SceneTransitionDestination.DestinationTag.A; } }
void Awake() { //si la instancia creada es diferente de este script destruyalo if (Instance != this) { Destroy(gameObject); return; } //sino No destruya el objeto DontDestroyOnLoad(gameObject); m_PlayerInput = FindObjectOfType <PlayerInput>(); //Si esta vacio el proximo destino entre y encuentre el destino //Sirve por si quiero configurar una escena inicial if (initialSceneTransitionDestination != null) { SetEnteringGameObjectLocation(initialSceneTransitionDestination); ScreenFader.SetAlpha(1f); //establece en 1 es decir en negro StartCoroutine(ScreenFader.FadeSceneIn()); initialSceneTransitionDestination.OnReachDestination.Invoke(); //llama al metodo en SceneTransition...invoca un evento se puede ver en la jerarquia de los gameobjects TransitionDestinationA..B..C } else// si no configure escena inicial coja la escena activa (generalmente entra aqui, buena idea para que Alucard empiece de una en la escena que abra) { m_CurrentZoneScene = SceneManager.GetActiveScene(); //Coja la escena activa m_ZoneRestartDestinationTag = SceneTransitionDestination.DestinationTag.A; // Y pongala en el punto A de dicha Escena } }//fin awake