示例#1
0
        private async void onKeyEntered(string username, string key)
        {
            if (key.Length == 0)
            {
                handleLicenceError(LicenceError.ERROR_INVALID_KEY);
                return;
            }

            bool haveInternetConnection = System.Net.NetworkInformation.NetworkInterface.GetIsNetworkAvailable();

            if (!haveInternetConnection)
            {
                handleLicenceError(LicenceError.ERROR_NO_INTERNET_CONNECTION);
                return;
            }

            _activationWindow.setBlockedView(true);
            _userKey = key;

            await utils.Utils.getMachineUniqueIdAsync((string machineId) =>
            {
                _machineId          = machineId;
                string machineIdMD5 = utils.Utils.createMD5ForString(_machineId);
                ServerCommandManager.requestProductActivation(username, key, machineIdMD5, onActivationRequestCompleted);
            });
        }
示例#2
0
        /// <summary>
        /// Constructs the server manager.
        /// </summary>
        /// <param name="netServer">The net server instance.</param>
        /// <param name="gameSettings">The server game settings.</param>
        /// <param name="packetManager">The packet manager instance.</param>
        protected ServerManager(
            NetServer netServer,
            Settings.GameSettings gameSettings,
            PacketManager packetManager
            )
        {
            _netServer   = netServer;
            GameSettings = gameSettings;
            _playerData  = new ConcurrentDictionary <ushort, ServerPlayerData>();

            CommandManager = new ServerCommandManager();
            var eventAggregator = new EventAggregator();

            var serverApi = new ServerApi(this, CommandManager, _netServer, eventAggregator);

            AddonManager = new ServerAddonManager(serverApi);

            // Load the lists
            _whiteList      = WhiteList.LoadFromFile();
            _authorizedList = AuthKeyList.LoadFromFile(AuthorizedFileName);
            _banList        = BanList.LoadFromFile();

            // Register packet handlers
            packetManager.RegisterServerPacketHandler <HelloServer>(ServerPacketId.HelloServer, OnHelloServer);
            packetManager.RegisterServerPacketHandler <ServerPlayerEnterScene>(ServerPacketId.PlayerEnterScene,
                                                                               OnClientEnterScene);
            packetManager.RegisterServerPacketHandler(ServerPacketId.PlayerLeaveScene, OnClientLeaveScene);
            packetManager.RegisterServerPacketHandler <PlayerUpdate>(ServerPacketId.PlayerUpdate, OnPlayerUpdate);
            packetManager.RegisterServerPacketHandler <EntityUpdate>(ServerPacketId.EntityUpdate, OnEntityUpdate);
            packetManager.RegisterServerPacketHandler(ServerPacketId.PlayerDisconnect, OnPlayerDisconnect);
            packetManager.RegisterServerPacketHandler(ServerPacketId.PlayerDeath, OnPlayerDeath);
            packetManager.RegisterServerPacketHandler <ServerPlayerTeamUpdate>(ServerPacketId.PlayerTeamUpdate,
                                                                               OnPlayerTeamUpdate);
            packetManager.RegisterServerPacketHandler <ServerPlayerSkinUpdate>(ServerPacketId.PlayerSkinUpdate,
                                                                               OnPlayerSkinUpdate);
            packetManager.RegisterServerPacketHandler <ChatMessage>(ServerPacketId.ChatMessage, OnChatMessage);

            // Register a timeout handler
            _netServer.ClientTimeoutEvent += OnClientTimeout;

            // Register server shutdown handler
            _netServer.ShutdownEvent += OnServerShutdown;

            // Register a handler for when a client wants to login
            _netServer.LoginRequestEvent += OnLoginRequest;
        }
示例#3
0
        public MainWindowViewModel()
        {
            ServerStatusList = new ObservableCollection <string>(new List <string>());
            ServerStatusList.Add("Server Ide....");
            ServerStart = new DelegateCommand(Start);
            ServerStop  = new DelegateCommand(Stop);

            // Setup Server
            _connectingPort = 5555;
            allDone         = new ManualResetEvent(false);

            //user
            UserManage = new UserManager();

            // Server Command Manager
            _serverCommManager = new ServerCommandManager();
        }
        public static void checkForTheNewVersion()
        {
            ServerCommandManager.checkForTheNewVersion((bool success, JObject data) =>
            {
                if (!success)
                {
                    return;
                }

                JToken versionToken = data["version"];
                JToken urlToken     = data["url"];
                JToken md5Token     = data["md5"];
                if (versionToken != null && urlToken != null)
                {
                    string newAppVersion         = (string)versionToken;
                    string url                   = (string)urlToken;
                    string md5                   = (string)md5Token;
                    string currentAppVersion     = Utils.getApplicationVersion();
                    VersionsCompareResult result = StringUtils.compareApplicationVersions(currentAppVersion, newAppVersion);
                    if (result == VersionsCompareResult.NEW_VERSION_IS_BIGGER)
                    {
                        ui.AlertWindow.show(
                            Properties.Strings.update_application_window_title,
                            string.Format(Properties.Strings.update_application_window_message, newAppVersion, currentAppVersion),
                            null,
                            Properties.Strings.update_application_window_button_update,
                            () =>
                        {
                            startProgramUpdating(url, md5);
                        },
                            Properties.Strings.update_application_window_button_cancel,
                            null);
                    }
                }
            });
        }
 void ServerSyncRemoveItem(ItemData item, int slotId, Pose?pose) =>
 ServerCommandManager.AddCommand(InventoryCommands.RemoveItemFromServerCommand(item.id));
 void ServerSyncAddItem(ItemData item, int slotId) =>
 ServerCommandManager.AddCommand(InventoryCommands.AddItemFromServerCommand(item.id));