private static void InitializeHandlers() { try { //CHAT _chatHandler = ChatHandler.GetInstance(); //LOCAL SETTINGS _localSettingsHandler = LocalSettingsHandler.GetInstance(_chatHandler); //COMMAND HANDLER _commandHandler = new CommandHandler(_chatHandler); _commandHandler.RegisterCommandHandlingStrategy(new CmdPingResponseStrategy()); _commandHandler.RegisterCommandHandlingStrategy(new CmdServerTimeStrategy()); _commandHandler.RegisterCommandHandlingStrategy(new CmdCharPositionUpdateStrategy(_chatHandler, _gameStateDetails)); _commandHandler.RegisterCommandHandlingStrategy(new CmdCharPositionBasicDetailsStrategy(_chatHandler, _gameStateDetails)); _commandHandler.RegisterCommandHandlingStrategy(new CmdLocalTerrainDetailsStrategy(_chatHandler, _gameStateDetails)); _commandHandler.RegisterCommandHandlingStrategy(new CmdLocalCharacterDetailsStrategy(_chatHandler, _gameStateDetails)); _commandHandler.RegisterCommandHandlingStrategy(new CmdWorldPlaceDetailsStrategy(_chatHandler, _gameStateDetails)); _commandHandler.RegisterCommandHandlingStrategy(new CmdChatMessageStrategy(_chatHandler)); _commandHandler.RegisterCommandHandlingStrategy(new CmdInfoStrategy()); _commandHandler.RegisterCommandHandlingStrategy(new CmdLoginSuccessStrategy()); _commandHandler.RegisterCommandHandlingStrategy(new CmdLobbyInfoStrategy(_chatHandler)); _commandHandler.RegisterCommandHandlingStrategy(new CmdCharChoosingSuccessStrategy()); //LOCAL COMMAND HANDLER _localCommandHandler = new LocalCommandHandler(_chatHandler); _localCommandHandler.RegisterCommandHandlingStrategy(new LocalCmdQuitStrategy()); _localCommandHandler.RegisterCommandHandlingStrategy(new LocalCmdShowColliderBoxesStrategy(_chatHandler)); _localCommandHandler.RegisterCommandHandlingStrategy(new LocalCmdSwitchPlaceStrategy()); //CONNECTION HANDLER _tcpConnectionHandler = TcpConnectionHandler.GetInstance(_chatHandler, _commandHandler); _tcpConnectionHandler.StartConnection(_localSettingsHandler.GetSettings().TcpConnSettings); //CONNECTION CHECKER _connectionChecker = new ConnectionChecker(); //LOBBY CHARS HANDLER _lobbyCharsHandler = new LobbyCharactersHandler(); } catch (Exception exception) { Debug.Log($"Handler initializing error: {exception.Message} | {exception.StackTrace}"); } }
private void HandleMsgSending() { if (Input.GetKeyDown(KeyCode.Return)) { GameObject obj = EventSystem.current.currentSelectedGameObject; if (obj != null && obj.name.Equals("MsgInputField", StringComparison.InvariantCultureIgnoreCase)) { string msgCommand = _msgInput.text; if (!String.IsNullOrWhiteSpace(msgCommand)) { LocalCommandHandler cmdHandler = MainGameHandler.GetLocalCommandHandler(); cmdHandler.ExecuteCommand(msgCommand); _msgInput.text = ""; } } } }