示例#1
0
 public override void Stop()
 {
     if (base.GameState == eGameState.GameOver)
     {
         this.m_gameState = eGameState.Stopped;
         List <Player> players = base.GetAllFightPlayers();
         foreach (Player p in players)
         {
             if (p.IsActive && !p.FinishTakeCard && p.CanTakeOut > 0)
             {
                 this.TakeCard(p, true);
             }
         }
         Dictionary <int, Player> players2;
         Monitor.Enter(players2 = this.m_players);
         try
         {
             this.m_players.Clear();
         }
         finally
         {
             Monitor.Exit(players2);
         }
         MapMgr.ReleaseMapInstance(this.m_map);
         base.Stop();
     }
 }