コード例 #1
0
 public ClientRegistration(ServerConfiguration config, GameLogger log, RejoinClientToGame rejoinCallback, UniqueIDGenerator sessionIDGenerator)
 {
     Logger = log;
     InitRegistration(config);
     RejoinCallback     = rejoinCallback;
     SessionIDGenerator = sessionIDGenerator;
 }
コード例 #2
0
ファイル: Server.cs プロジェクト: ThoenigAdrian/PingPong
        public Server()
        {
            ServerConfiguration = new ServerConfiguration();

            UDPConnection MasterUDPSocket = new UDPConnection(new IPEndPoint(IPAddress.Any, ServerConfiguration.ServerPort));

            MasterUDPSocket.OnDisconnect.Event += MasterUDPSocket_OnDisconnect;
            MasterUDPSocket.Logger              = Logger;

            SessionIDGenerator = new UniqueIDGenerator();

            GamesManager = new GamesManager(MasterUDPSocket, SessionIDGenerator);
            MatchManager = new MatchmakingManager(SessionIDGenerator);
            MatchManager.OnMatchFound += GamesManager.OnMatchmadeGameFound;
            MatchManager.TotalPlayersOnlineCallback += NumberOfPlayersOnline;

            Registration = new ClientRegistration(ServerConfiguration, Logger, GamesManager.RejoinClientToGame, SessionIDGenerator);
            Registration.OnMatchmakingRequest += HandleMatchmakingRequest;
            Registration.OnObserverRequest    += HandleObserveRequest;
        }
コード例 #3
0
ファイル: GameNetwork.cs プロジェクト: ThoenigAdrian/PingPong
 public GameNetwork(UDPConnection UDPGameData, Logger Logger, UniqueIDGenerator sessionIDManager) : base(UDPGameData, Logger)
 {
     LogWriter        = (LogWriterConsole)Logger;
     SessionDied     += SessionDiedHandler;
     SessionIDManager = sessionIDManager;
 }
コード例 #4
0
ファイル: GameNetwork.cs プロジェクト: ThoenigAdrian/PingPong
 public GameNetwork(UDPConnection UDPGameData, UniqueIDGenerator sessionIDManager) : this(UDPGameData, new NoLog(), sessionIDManager)
 {
 }
コード例 #5
0
 public MatchmakingManager(UniqueIDGenerator sessionIDGenerator)
 {
     SessionIDGenerator     = sessionIDGenerator;
     UpdateMatchmakingQueue = new OneShotTimer(MatchmakingRefreshIntervalInSeconds * 1000000, true);
 }
コード例 #6
0
 public GamesManager(UDPConnection MasterUDPSocket, UniqueIDGenerator sessionManager)
 {
     this.MasterUDPSocket = MasterUDPSocket;
     SessionManager       = sessionManager;
 }