internal void SetInMatchStateBuffered(IInGameState state)
 {
     lock (LockCardsInMatchTracking)
     {
         MustReset    |= state.IsReset;
         StateBuffered = state;
         UpdateCardsInMatchTrackingBuffered = true;
     }
 }
 internal void SetInMatchStateBuffered(InGameTrackerState state)
 {
     lock (lockCardsInMatchTracking)
     {
         mustReset    |= state.IsReset;
         stateBuffered = state;
         updateCardsInMatchTrackingBuffered = true;
     }
 }
Beispiel #3
0
 public void ChangeState(IInGameState gameState, Action postRender)
 {
     Task.Factory.StartNew(() =>
     {
         if (m_CurrentGameState != null && m_CurrentGameState != InGameSetupState.Get())
         {
             m_CurrentGameState.Dispose();
         }
         m_PreviousGameState = m_CurrentGameState;
         m_CurrentGameState = gameState;
         m_CurrentGameState.Render();
         postRender.Invoke();
     }, CancellationToken.None, TaskCreationOptions.None, GlobalResources.m_TaskScheduler);
 }
Beispiel #4
0
        internal void Create(IInitGameState initGameState, IReadyToStartState readyToStartState, IInGameState inGameState, IEndOfGameState endOfGameState, IIReleaseState releaseState, ILostGameState lostGameState)
        {
            Add(initGameState);
            Add(readyToStartState);
            Add(inGameState);
            Add(endOfGameState);
            Add(releaseState);
            Add(lostGameState);

            Start <InitGameState>();
        }