Example #1
0
        public void Stop()
        {
            ProxyReconnectionStop();
            Reset();
            Window w = Window.Get;

            // Reset locket controls
            w.Login_cmbxSilkroad.InvokeIfRequired(() => {
                w.Login_cmbxSilkroad.Enabled = true;
            });
            w.Login_btnStart.InvokeIfRequired(() => {
                w.Login_btnStart.Text    = "START";
                w.Login_btnStart.Enabled = true;
            });
            w.Login_btnLauncher.InvokeIfRequired(() => {
                w.Login_btnLauncher.Enabled = true;
            });
            w.Login_gbxCharacters.InvokeIfRequired(() => {
                w.Login_gbxCharacters.Visible = false;
            });
            w.Login_gbxServers.InvokeIfRequired(() => {
                w.Login_gbxServers.Visible = true;
            });

            if (InfoManager.inGame)
            {
                InfoManager.OnDisconnected();
            }
            DataManager.DisconnectDatabase();
            w.Log("Disconnected");
            w.LogProcess("Disconnected");
            // Relogin
            if (w.Login_cbxRelogin.Checked)
            {
                System.Timers.Timer Relogin = new System.Timers.Timer(50);
                Relogin.AutoReset      = false;
                Relogin.Elapsed       += ReloginOnDisconnect;
                ReloginIntervalCounter = 0;
                ReloginCountdown       = 15;
                Relogin.Start();
                w.LogProcess("Relogin at " + ReloginCountdown + " seconds...");
            }
        }