Ejemplo n.º 1
0
 private void CreateServerGame(ServerGameInfo sgi)
 {
     Serv.GameServer gs = new Yad.Net.GameServer.Server.GameServer(sgi);
     gs.EnterMsgHandlerChange(this._server);
     lock (((ICollection)_gameServerList).SyncRoot)
     {
         _gameServerList.Add(gs);
     }
     gs.OnGameEnd     += new GameEndDelegate(OnGameServerEnd);
     gs.OnPlayerLeave += new PlayerGameLeaveDelegate(OnPlayerGameLeave);
     gs.StartGameServer();
 }
Ejemplo n.º 2
0
 private void OnGameServerEnd(object sender, GameEndEventArgs args)
 {
     Serv.GameServer gs      = sender as Serv.GameServer;
     Player[]        players = gs.GetPlayersArray();
     gs.LeaveMsgHandlerChange(this._server);
     for (int i = 0; i < players.Length; ++i)
     {
         players[i].State = PlayerStateMachine.Transform(players[i].State,
                                                         MenuAction.GameEnd);
         _server.Chat.AddPlayer(players[i]);
     }
     _gameServerList.Remove(gs);
 }