Exemplo n.º 1
0
 public static void Update()
 {
     if (StageSystem._transMode == StageSystem.TransMode.NONE)
     {
         StageSystem._stack.Peek().Update();
     }
     else if (StageSystem._transMode == StageSystem.TransMode.MOVE)
     {
         StageSystem._MoveReserved();
     }
     else if (StageSystem._transMode == StageSystem.TransMode.PUSH)
     {
         StageSystem._PushReserved();
     }
     else if (StageSystem._transMode == StageSystem.TransMode.POP)
     {
         StageSystem._PopReserved();
     }
     else if (StageSystem._transMode == StageSystem.TransMode.RELOAD)
     {
         StageSystem._ReloadReserved();
     }
     else if (StageSystem._transMode == StageSystem.TransMode.DONE)
     {
         StageSystem._transMode = StageSystem.TransMode.NONE;
     }
     if (StageSystem._stgCommon != null)
     {
         StageSystem._stgCommon.Update();
     }
 }
Exemplo n.º 2
0
 private static void _PushReserved()
 {
     StageSystem._transMode = StageSystem.TransMode.DONE;
     StageSystem._stack.Peek().OnExit();
     StageSystem._nxtStg.RegistSeialTaskInternal();
     StageSystem._nxtStg.OnEnter();
     StageSystem._stack.Push(StageSystem._nxtStg);
     StageSystem._nxtStg = null;
 }
Exemplo n.º 3
0
        private static void _ReloadReserved()
        {
            StageSystem._transMode = StageSystem.TransMode.DONE;
            AStage aStage = StageSystem._stack.Peek();

            aStage.OnExit();
            aStage.RegistSeialTaskInternal();
            aStage.OnReloadReserved();
            aStage.OnEnter();
        }
Exemplo n.º 4
0
 public static void ReserveMoveStage(AStage iStg)
 {
     StageSystem._transMode = StageSystem.TransMode.MOVE;
     StageSystem._nxtStg    = iStg;
     iStg.OnPrepareSceneChange();
     TsLog.Log("=== StageSystem.ReserveMoveStage : {0}", new object[]
     {
         StageSystem._nxtStg.GetType().Name
     });
 }
Exemplo n.º 5
0
 static StageSystem()
 {
     StageSystem._transMode    = StageSystem.TransMode.NONE;
     StageSystem._nxtStg       = null;
     StageSystem._1stRunPassed = false;
     StageSystem._stack        = new Stack <AStage>(4);
     StageSystem.bStabled      = false;
     StageSystem._stgCommon    = null;
     StageSystem._stgCommon    = new StageSystem.StgCommon();
     StageSystem._stack.Push(StageSystem._stgCommon);
 }
Exemplo n.º 6
0
        public static void ReloadStage()
        {
            StageSystem._transMode = StageSystem.TransMode.RELOAD;
            AStage aStage = StageSystem._stack.Peek();

            aStage.OnPrepareSceneChange();
            TsLog.Log("=== StageSystem.ReloadStage POP: {0}", new object[]
            {
                aStage.GetType().Name
            });
        }
Exemplo n.º 7
0
        private static void _MoveReserved()
        {
            AStage aStage = StageSystem._stack.Pop();

            aStage.OnExit();
            aStage = StageSystem._nxtStg;
            StageSystem._nxtStg    = null;
            StageSystem._transMode = StageSystem.TransMode.DONE;
            StageSystem._stack.Push(aStage);
            aStage.RegistSeialTaskInternal();
            aStage.OnEnter();
        }
Exemplo n.º 8
0
 public static void ReservePushStage(AStage iStg)
 {
     if (iStg == null)
     {
         TsLog.LogError("=== StageSystem.ReservePushStage(null) null parameter!", new object[0]);
     }
     else
     {
         StageSystem._nxtStg    = iStg;
         StageSystem._transMode = StageSystem.TransMode.PUSH;
         iStg.OnPrepareSceneChange();
         TsLog.Log("=== StageSystem.ReservePushStage PUSH: {0}", new object[]
         {
             StageSystem._nxtStg.GetType().Name
         });
     }
 }
Exemplo n.º 9
0
 public static Scene.Type ReservePopStage()
 {
     Scene.Type result = Scene.Type.EMPTY;
     if (StageSystem._stack.Count <= 1)
     {
         TsLog.LogError("=== StageSystem.ReservePopStage stack empty", new object[0]);
     }
     else
     {
         AStage aStage  = StageSystem._stack.Pop();
         AStage aStage2 = StageSystem._stack.Peek();
         aStage2.OnPrepareSceneChange();
         result = aStage2.SceneType();
         StageSystem._stack.Push(aStage);
         StageSystem._transMode = StageSystem.TransMode.POP;
         TsLog.Log("=== StageSystem.ReservePopStage POP: {0}", new object[]
         {
             aStage.GetType().Name
         });
     }
     return(result);
 }