void Handle(GameLockChanged gameLockChanged) {
     var obs = GetOrAdd(gameLockChanged.GameId);
     lock (obs) {
         var state = new GameLockState(gameLockChanged.IsLocked, gameLockChanged.CanAbort);
         _currentValues[gameLockChanged.GameId] = state;
         obs.Item1.OnNext(state);
     }
 }
예제 #2
0
 void Handle(GameLockChanged message) {
     if (message.CanAbort)
         return;
     if (Current != null) {
         Current.NextAction = null;
         Current.NextActionInfo = null;
     }
 }