示例#1
0
        private static void _ReloadReserved()
        {
            StageSystem._transMode = StageSystem.TransMode.DONE;
            AStage aStage = StageSystem._stack.Peek();

            aStage.OnExit();
            aStage.RegistSeialTaskInternal();
            aStage.OnReloadReserved();
            aStage.OnEnter();
        }
示例#2
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();
        }
示例#3
0
 public static void SetStartStage(AStage iStg)
 {
     if (StageSystem._1stRunPassed)
     {
         TsLog.LogWarning("!!!!!! StageSystem.SetStartStage() called multiple! Watch your code carefully!", new object[0]);
     }
     else if (iStg == null)
     {
         TsLog.LogError("!!!!!! StageSystem.SetStartStage(null) null parameter!", new object[0]);
     }
     else
     {
         StageSystem._1stRunPassed = true;
         StageSystem._stack.Push(iStg);
         iStg.RegistSeialTaskInternal();
         iStg.OnEnter();
     }
 }