public RudpMessagesSender(ByteArrayRudpStorage byteArrayRudpStorage, MatchStorage matchStorage, UdpSendUtils udpSendUtils, IpAddressesStorage ipAddressesStorage) { this.matchStorage = matchStorage; this.udpSendUtils = udpSendUtils; this.ipAddressesStorage = ipAddressesStorage; this.byteArrayRudpStorage = byteArrayRudpStorage; }
public GameEngineTicker(MatchStorage matchStorage, MatchLifeCycleManager matchLifeCycleManager, InputEntitiesCreator inputEntitiesCreator, ExitEntitiesCreator exitEntitiesCreator, RudpMessagesSender rudpMessagesSender, OutgoingMessagesStorage outgoingMessagesStorage) { this.matchStorage = matchStorage; this.rudpMessagesSender = rudpMessagesSender; this.exitEntitiesCreator = exitEntitiesCreator; this.inputEntitiesCreator = inputEntitiesCreator; this.matchLifeCycleManager = matchLifeCycleManager; this.outgoingMessagesStorage = outgoingMessagesStorage; }
public IdMapper(string settingsFile) { _storage = new MatchStorage <IdMatch, string>(settingsFile); }
public MatchModelMessageHandler(MatchCreator matchCreator, MatchStorage matchStorage) { this.matchCreator = matchCreator; matchModelValidator = new MatchModelValidator(matchStorage); }
public void Run() { if (matchmakerListenerCts != null) { throw new Exception("Сервер уже запущен"); } //Старт уведомления матчмейкера о смертях игроков и окончании матчей MatchmakerNotifier notifier = new MatchmakerNotifier(); matchmakerNotifierCts = notifier.StartThread(); //Создание структур данных для матчей matchStorage = new MatchStorage(); MessageIdFactory messageIdFactory = new MessageIdFactory(); MessageFactory messageFactory = new MessageFactory(messageIdFactory); InputEntitiesCreator inputEntitiesCreator = new InputEntitiesCreator(matchStorage); ExitEntitiesCreator exitEntitiesCreator = new ExitEntitiesCreator(matchStorage); ByteArrayRudpStorage byteArrayRudpStorage = new ByteArrayRudpStorage(); shittyUdpMediator = new ShittyUdpMediator(); MessagesPackIdFactory messagesPackIdFactory = new MessagesPackIdFactory(); IpAddressesStorage ipAddressesStorage = new IpAddressesStorage(); SimpleMessagesPacker simpleMessagesPacker = new SimpleMessagesPacker(PackingHelper.Mtu, shittyUdpMediator, messagesPackIdFactory); OutgoingMessagesStorage outgoingMessagesStorage = new OutgoingMessagesStorage(simpleMessagesPacker, ipAddressesStorage); UdpSendUtils udpSendUtils = new UdpSendUtils(byteArrayRudpStorage, outgoingMessagesStorage, messageFactory); MessageProcessor messageProcessor = new MessageProcessor(inputEntitiesCreator, exitEntitiesCreator, byteArrayRudpStorage, // udpSendUtils, ipAddressesStorage); shittyUdpMediator.SetProcessor(messageProcessor); matchRemover = new MatchRemover(matchStorage, byteArrayRudpStorage, udpSendUtils, notifier, ipAddressesStorage, messageIdFactory, messagesPackIdFactory); MatchFactory matchFactory = new MatchFactory(matchRemover, udpSendUtils, notifier, ipAddressesStorage, messageIdFactory, messagesPackIdFactory); MatchCreator matchCreator = new MatchCreator(matchFactory); MatchLifeCycleManager matchLifeCycleManager = new MatchLifeCycleManager(matchStorage, matchCreator, matchRemover); //Старт прослушки матчмейкера MatchModelMessageHandler matchModelMessageHandler = new MatchModelMessageHandler(matchCreator, matchStorage); MatchmakerListener matchmakerListener = new MatchmakerListener(matchModelMessageHandler, HttpPort); MonitorListener monitorListener = new MonitorListener(HttpPort); monitorListenerCts = monitorListener.StartThread(); matchmakerListenerCts = matchmakerListener.StartThread(); //Старт прослушки игроков shittyUdpMediator .SetupConnection(UdpPort) .StartReceiveThread(); RudpMessagesSender rudpMessagesSender = new RudpMessagesSender(byteArrayRudpStorage, matchStorage, udpSendUtils, ipAddressesStorage); GameEngineTicker gameEngineTicker = new GameEngineTicker(matchStorage, matchLifeCycleManager, inputEntitiesCreator, exitEntitiesCreator, rudpMessagesSender, outgoingMessagesStorage); //Старт тиков Chronometer chronometer = ChronometerFactory.Create(gameEngineTicker.Tick); chronometer.StartEndlessLoop(); }
public SimpleNameMatcher(string settingsFile) { _storage = new MatchStorage <SimpleNameMatch, string>(settingsFile); }
public MatchLogic() { matchStorage = new MatchStorage(); teamPlayerLogic = new TeamPlayerLogic(); goalLogic = new GoalLogic(); }
public ExitEntitiesCreator(MatchStorage matchStorage) { this.matchStorage = matchStorage; }
public MatchModelValidator(MatchStorage matchStorage) { this.matchStorage = matchStorage; }