public static void UnregisterTransitioner(ISceneTransitioner transitioner) { // Logger.LogEditor($"unregister: {Utilities.GetPathToGameObjectInScene(transitioner.gameObject)}"); Assert.IsTrue(!_pendingTransitioners.Contains(transitioner), "[SceneController] Tried to unregister a SceneTransitioner that was still pending."); // Assert.IsTrue(_activeTransitioners.Contains(transitioner), "[SceneController] Tried to unregister a SceneTransitioner that was not active."); _activeTransitioners.Remove(transitioner); }
// Use this for initialization void Start() { if (transitionerObject != null) { Transitioner = transitionerObject as ISceneTransitioner; } SceneController.TransitionToEntry(); }
public static void RegisterTransitioner(ISceneTransitioner transitioner) { // Logger.LogEditor($"register: {Utilities.GetPathToGameObjectInScene(transitioner.gameObject)}"); Assert.IsTrue(!_activeTransitioners.Contains(transitioner), "[SceneController] Tried to register a SceneTransitioner that was already active."); Assert.IsTrue(!_pendingTransitioners.Contains(transitioner), "[SceneController] Tried to register a SceneTransitioner that was already pending."); _pendingTransitioners.Add(transitioner); }
private void OnValidate() { if (transitionerObject == null) { Transitioner = null; } else { Transitioner = transitionerObject as ISceneTransitioner; if (Transitioner == null) { Debug.LogError("Transition object does not implement ISceneTransitioner interface"); transitionerObject = null; } } }