public ClientRegistration(ServerConfiguration config, GameLogger log, RejoinClientToGame rejoinCallback, UniqueIDGenerator sessionIDGenerator) { Logger = log; InitRegistration(config); RejoinCallback = rejoinCallback; SessionIDGenerator = sessionIDGenerator; }
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; }
public GameNetwork(UDPConnection UDPGameData, Logger Logger, UniqueIDGenerator sessionIDManager) : base(UDPGameData, Logger) { LogWriter = (LogWriterConsole)Logger; SessionDied += SessionDiedHandler; SessionIDManager = sessionIDManager; }
public GameNetwork(UDPConnection UDPGameData, UniqueIDGenerator sessionIDManager) : this(UDPGameData, new NoLog(), sessionIDManager) { }
public MatchmakingManager(UniqueIDGenerator sessionIDGenerator) { SessionIDGenerator = sessionIDGenerator; UpdateMatchmakingQueue = new OneShotTimer(MatchmakingRefreshIntervalInSeconds * 1000000, true); }
public GamesManager(UDPConnection MasterUDPSocket, UniqueIDGenerator sessionManager) { this.MasterUDPSocket = MasterUDPSocket; SessionManager = sessionManager; }