Пример #1
0
private static void EventSink_Disconnected( DisconnectedEventArgs args ) 
  

{ 
  


Mobile m = args.Mobile; 
  


int userCount = NetState.Instances.Count;
  
  


World.Broadcast( 0x35, true, "{0} has now logged off! There {1} now {2} player{3} online!", args.Mobile.Name,
  


userCount-1 == 1 ? "is" : "are",
  


userCount-1, userCount == 1 ? "" : "s" );
  

}
Пример #2
0
        private static void EventSink_Disconnected( DisconnectedEventArgs e )
        {
            // at OSI for logout from Lamp Room, account may be banned
            Mobile m = e.Mobile;

            if ( m != null && m.IsPlayer && m.Region.Name == "Doom Lamp Room" )
            {
                Rectangle2D rect = new Rectangle2D( 342, 168, 16, 16 );

                int x = Utility.Random( rect.X, rect.Width );
                int y = Utility.Random( rect.Y, rect.Height );

                if ( x >= 345 && x <= 352 && y >= 173 && y <= 179 )
                {
                    x = 353;
                    y = 172;
                }

                m.MoveToWorld( new Point3D( x, y, -1 ), Map.Malas );
            }
        }
Пример #3
0
        public void Disconnect(DisconnectedEventArgs e = null)
        {
            var didDisconnect = false;

            if (!_isDisconnecting)
            {
                _isDisconnecting = true;
                try
                {
                    try
                    {
                        if (_sender != null)
                        {
                            _sender.Close();
                            _sender.Dispose();
                            didDisconnect = true;
                        }
                    }
                    catch (Exception)
                    {
                    }

                    _sender = null;

                    if (didDisconnect)
                    {
                        _connectedEvent.Reset();
                        Disconnected?.Invoke(this, e ?? DisconnectedEventArgs.Empty);
                    }
                }
                finally
                {
                    _isDisconnecting = false;
                }
            }
        }
Пример #4
0
		private static void EventSink_Disconnected( DisconnectedEventArgs e )
		{
			Mobile from = e.Mobile;
			
			if(from is PlayerMobile)
			{
				Map map = from.Map;

				if ( map == null )
					return;

				IPooledEnumerable eable = map.GetMobilesInRange( from.Location, 10 );
				List<Mobile> pets = new List<Mobile>();
				
				foreach ( Mobile m in eable )
				{
					if ( m is BaseCreature )
					{
						BaseCreature bc = (BaseCreature)m;
						
						if(bc != null && bc.Controlled && bc.ControlMaster == from )
						{
							pets.Add(m);
						}
					}
				}
				eable.Free();
				
				for(int i=0;i<pets.Count;i++)
				{
					Mobile pet = pets[i];
					pet.Internalize();
					pet.CantWalk = false;
				}
			}
		}
Пример #5
0
        private static void EventSink_Disconnected(DisconnectedEventArgs e)
        {
            Account acc = e.Mobile.Account as Account;

            if (acc == null)
            {
                return;
            }

            if (acc.m_YoungTimer != null)
            {
                acc.m_YoungTimer.Stop();
                acc.m_YoungTimer = null;
            }

            PlayerMobile m = e.Mobile as PlayerMobile;

            if (m == null)
            {
                return;
            }

            acc.m_TotalGameTime += DateTime.Now - m.SessionStart;
        }
Пример #6
0
        void Netcom_ClientDisconnected(object sender, DisconnectedEventArgs e)
        {
            if (InvokeRequired)
            {
                if (!instance.MonoRuntime || IsHandleCreated)
                {
                    BeginInvoke(new MethodInvoker(() => Netcom_ClientDisconnected(sender, e)));
                }
                return;
            }

            if (UploadThread != null && UploadThread.IsAlive)
            {
                try
                {
                    UploadThread.Abort();
                }
                catch { }
                UploadThread = null;
                Running      = false;
            }

            UpdateButtons();
        }
Пример #7
0
        /// <summary>
        /// Announce reason for disconnect.
        /// </summary>
        /// <param name="reason"></param>
        /// <param name="message"></param>
        private void Network_Disconnected(object sender, DisconnectedEventArgs e)
        {
            switch (e.Reason)
            {
            case NetworkManager.DisconnectType.ClientInitiated:
                Talker.Say("You are disconnected.");
                break;

            case NetworkManager.DisconnectType.SimShutdown:
                Talker.Say("The region you were in has been shut down.  You are disconnected.",
                           Talk.BeepType.Bad);
                break;

            case NetworkManager.DisconnectType.NetworkTimeout:
                Talker.Say("You have been disconnected by a network timeout.",
                           Talk.BeepType.Bad);
                break;

            case NetworkManager.DisconnectType.ServerInitiated:
                Talker.Say("The server has disconnected you.  " + e.Message,
                           Talk.BeepType.Bad);
                break;
            }
        }
Пример #8
0
 private void OnDisconnectMessageReceived(object sender, DisconnectedEventArgs args)
 {
     _logger.LogWarn(args.DisconnectMessage.Reason ?? "Disconnect");
 }
Пример #9
0
 void Netcom_ClientDisconnected(object sender, DisconnectedEventArgs e)
 {
     ParcelsDownloaded.Set();
 }
Пример #10
0
 private void OnDisconnected(object sender, DisconnectedEventArgs e)
 {
     Invoke ((Action)Close);
 }
Пример #11
0
 private void RccOnDisconnected(object sender, DisconnectedEventArgs disconnectedEventArgs)
 {
     this.WriteLine("Disconnected!");
     this.connected = false;
     this.UpdateUiStatus();
 }
Пример #12
0
 protected virtual void OnPlayerDisc(DisconnectedEventArgs e)
 {
 }
Пример #13
0
 internal void InvokeOnDisconnected(DisconnectedEventArgs args)
 {
     OnDisconnected(args);
 }
 private static void EventSink_Disconnected(DisconnectedEventArgs args)
 {
     Mobile player = args.Mobile;
     HideChatFrom(player);
 }
Пример #15
0
        private static void EventSink_Disconnected(DisconnectedEventArgs e)
        {
            Mobile m = e.Mobile;

            if (m == null)
                return;

            TournamentStone stone = GetPlayerStone(m);

            if (stone != null && IsInTournament(m))
                new DisconnectTimer(stone, m).Start();
        }
Пример #16
0
 private void Network_OnDisconnected(object sender, DisconnectedEventArgs e)
 {
     if (!this.IsHandleCreated) return;
         
     SetText(btnLogin, "Login");
 }
Пример #17
0
 private void OnDisconnected(DisconnectedEventArgs e)
 {
     EventHandler<DisconnectedEventArgs> handler = Disconnected;
     if (handler != null) handler(this, e);
 }
Пример #18
0
 /// <summary>
 /// 释放
 /// </summary>
 public void Dispose()
 {
     if (_clientSocket.Connected)
     {
         _clientSocket.Shutdown(SocketShutdown.Both);
         _clientSocket.Close();
         _clientSocket = null;
     }
     DisconnectedEventArgs disconnectedEventArgs = new DisconnectedEventArgs();
     OnDisconnected(disconnectedEventArgs);
 }
 private void OnDisconnected(object sender, DisconnectedEventArgs e)
 {
     var client = (ServerClient) sender;
     ClientDisconnected(client, e.Error);
     Console.WriteLine("Cleaning up client");
     client.Reset();
     _availableClientPool.Enqueue(client);
 }
Пример #20
0
 private void OnDisconnected(IGFClient client, DisconnectedEventArgs e)
 {
     OnDisconnected(e.Message ?? e.Exception?.ToString());
 }
Пример #21
0
 private void OnDisconnected(object sender, DisconnectedEventArgs e)
 {
     Invoke((Action)Close);
 }
Пример #22
0
        private static void EventSink_Disconnected(DisconnectedEventArgs e)
        {
            Mobile from = e.Mobile;

            PlayerMobile pm = e.Mobile as PlayerMobile;

            if (pm != null)
            {
                pm.m_GameTime += (DateTime.Now - pm.m_SessionStart);
                pm.m_SpeechLog = null;
                pm.LastOnline = DateTime.Now;
            }

            DisguiseTimers.StopTimer(from);
        }
Пример #23
0
 private void GameClient_Disconnected(object sender, DisconnectedEventArgs e)
 {
     //MessageBox.Show("GameClient_Disconnected");
 }
 private void HoloOASIS_OnDisconnected(object sender, DisconnectedEventArgs e)
 {
 }
Пример #25
0
        private void Network_OnDisconnected(object sender, DisconnectedEventArgs e)
        {
            if (!this.IsHandleCreated) return;

            this.BeginInvoke((MethodInvoker)delegate
            {
                btnLogin.Text = "Login";
            });
        }
Пример #26
0
        static void rconClient_Disconnected(object sender, DisconnectedEventArgs e)
        {
            // Disable the timer that runs the playerlist
            aTimer.Enabled = false;
            aTimer.Dispose();

            // Stop the webservice
            Webservice.Stop();

            Log.Info("Disconnected - Message: " + e.Message);
        }
Пример #27
0
		private static void EventSink_Disconnected( DisconnectedEventArgs e )
		{
			Mobile from = e.Mobile;
			DesignContext context = DesignContext.Find( from );

			if ( context != null )
			{
				/* Client disconnected
				 *  - Remove design context
				 *  - Eject all from house
				 *  - Restore relocated entities
				 */

				// Remove design context
				DesignContext.Remove( from );

				// Eject all from house
				from.RevealingAction();

				foreach ( Item item in context.Foundation.GetItems() )
					item.Location = context.Foundation.BanLocation;

				foreach ( Mobile mobile in context.Foundation.GetMobiles() )
					mobile.Location = context.Foundation.BanLocation;

				// Restore relocated entities
				context.Foundation.RestoreRelocatedEntities();
			}

			PlayerMobile pm = e.Mobile as PlayerMobile;

			if ( pm != null )
			{
				pm.m_GameTime += (DateTime.Now - pm.m_SessionStart);

				if ( pm.m_Quest != null )
					pm.m_Quest.StopTimer();

				pm.m_SpeechLog = null;
				pm.LastOnline = DateTime.Now;
			}

			DisguiseTimers.StopTimer( from );
		}
Пример #28
0
 private void ClientDisconnected(PanelLibrary so)
 {
     if (so.WorkSocket != null)
     {
         StringBuilder sb = new StringBuilder();
         sb.AppendFormat("Client disconnected from port {0}", so.WorkSocket.Handle);
         DisconnectedEventArgs e = new DisconnectedEventArgs();
         e.ClientSocket = so.WorkSocket;
         e.Message = sb.ToString();
         Events.DoDisconnect(this, e);
         try
         {
             so.WorkSocket.Shutdown(SocketShutdown.Both);
             so.WorkSocket.Close();
         }
         catch (StackOverflowException){ }
         catch (ObjectDisposedException)
         {
             Events.DoLog(this, e.ToString());
             if (e.ClientSocket != null)
             {
                 _panelLibrary.WorkSocket = e.ClientSocket;
                 ClientDisconnected(_panelLibrary);
                 _clientSockets.Remove(e.ClientSocket);
             }
         }
     }
 }
Пример #29
0
 private void Server_Disconnected(object sender, DisconnectedEventArgs e)
 {
     _serverIsConnected = false;
 }
Пример #30
0
		static void EventSink_Disconnected( DisconnectedEventArgs e )
		{
			Mobile from = e.Mobile;

			if ( from == null )
				return;

			if ( from is PlayerMobile )
			{
				PlayerMobile pm = (PlayerMobile)from;

				PokerGame game = pm.PokerGame;

				if ( game != null )
				{
					PokerPlayer player = game.GetPlayer( from );

					if ( player != null )
						game.RemovePlayer( player );
				}
			}
		}
Пример #31
0
 /// <summary>
 /// 未连接服务器
 /// </summary>
 /// <param name="sender">发送者</param>
 /// <param name="args">未连接服务器参数</param>
 private void Disconnected(object sender, DisconnectedEventArgs args)
 {
     //用户状态改为离线
     instance.State = AccountState.Offline;
 }
Пример #32
0
 protected virtual void OnDisconnectedEvent(DisconnectedEventArgs e)
 {
     if (DisconnectedEvent != null) DisconnectedEvent(this, e);
 }
Пример #33
0
        protected override void OnDisconnected(DisconnectedEventArgs e)
        {
            var tcs = Interlocked.Exchange (ref this.connectCompletion, null);
            if (tcs != null)
                tcs.TrySetResult (new ClientConnectionResult (e.Result, null));

            if (this.activityTimer != null)
            {
                this.activityTimer.Dispose();
                this.activityTimer = null;
            }

            base.OnDisconnected(e);
        }
Пример #34
0
        void Disconnected( object sender, DisconnectedEventArgs e )
        {
            ConnectedUniverse = EUniverse.Invalid;

            heartBeatFunc.Stop();

            OnClientDisconnected( e.UserInitiated );
        }
Пример #35
0
        private async Task ReceivePacketsAsync()
        {
            bool isClosed = false;
            int  length;
            DisconnectedEventArgs disconnectArgs = null;

            while (_receiver != null && _receiver.IsConnected && !isClosed)
            {
                // receive a single packet
                try
                {
                    // read the header
                    int headerOffset = 0;
                    while (headerOffset < TransportConstants.MaxHeaderLength)
                    {
                        length = await _receiver.ReceiveAsync(_receiveHeaderBuffer, headerOffset, TransportConstants.MaxHeaderLength - headerOffset).ConfigureAwait(false);

                        if (length == 0)
                        {
                            throw new TransportDisconnectedException("Stream closed while reading header bytes");
                        }

                        headerOffset += length;
                    }

                    // deserialize the bytes into a header
                    var header = HeaderSerializer.Deserialize(_receiveHeaderBuffer, 0, TransportConstants.MaxHeaderLength);

                    // read the payload
                    var contentStream = _getStream(header);

                    var buffer = PayloadTypes.IsStream(header) ?
                                 new byte[header.PayloadLength] :
                                 _receiveContentBuffer;

                    int offset = 0;

                    if (header.PayloadLength > 0)
                    {
                        do
                        {
                            // read in chunks
                            int count = Math.Min(header.PayloadLength - offset, TransportConstants.MaxPayloadLength);

                            // read the content
                            length = await _receiver.ReceiveAsync(buffer, offset, count).ConfigureAwait(false);

                            if (length == 0)
                            {
                                throw new TransportDisconnectedException("Stream closed while reading payload bytes");
                            }

                            if (contentStream != null)
                            {
                                // write chunks to the contentStream if it's not a stream type
                                if (!PayloadTypes.IsStream(header))
                                {
                                    await contentStream.WriteAsync(buffer, offset, length).ConfigureAwait(false);
                                }
                            }

                            offset += length;
                        }while (offset < header.PayloadLength);

                        // give the full payload buffer to the contentStream if it's a stream
                        if (contentStream != null && PayloadTypes.IsStream(header))
                        {
                            ((PayloadStream)contentStream).GiveBuffer(buffer, length);
                        }
                    }

                    _receiveAction(header, contentStream, offset);
                }
                catch (TransportDisconnectedException de)
                {
                    isClosed       = true;
                    disconnectArgs = new DisconnectedEventArgs()
                    {
                        Reason = de.Reason,
                    };
                }
                catch (Exception e)
                {
                    isClosed       = true;
                    disconnectArgs = new DisconnectedEventArgs()
                    {
                        Reason = e.Message,
                    };
                }
            }

            Disconnect(disconnectArgs);
        }
Пример #36
0
 private void OnDisconnect(object source, DisconnectedEventArgs args)
 {
     _disconnected = true;
     _disconnectEvent.Set();
 }
Пример #37
0
 // Handler for the Disconnected event on the Browser object.
 private void HandleDisconnected(object sender, DisconnectedEventArgs e)
 {
     Console.WriteLine("Disconnected.");
 }
 private static void EventSink_Disconnected(DisconnectedEventArgs e)
 {
     Mobile m = e.Mobile;
     if (m.Region == SecretRoom && m.AccessLevel == AccessLevel.Player)
         m.Kill();
 }
Пример #39
0
 void Network_OnDisconnected(object sender, DisconnectedEventArgs e)
 {
     LogText("Disconnected" + (!String.IsNullOrEmpty(e.Message) ? ": " + e.Message : "."), Color.Black);
 }
Пример #40
0
 public void InvokeDisconnected( DisconnectedEventArgs e )
 {
     if ( Disconnected != null )
         Disconnected( e );
 }
 private void OnClientDisconnected(object sender, DisconnectedEventArgs args)
 {
     Debugger.Log(1, null, $"{nameof(SimpleServer)}: Client with Id {args.ClientId} has disconnected. Exception: {args.Error.Message}\n");
     ClientDisconnected?.Invoke(this, args);
 }
Пример #42
0
		private static void EventSink_Disconnected(DisconnectedEventArgs e)
		{
			Mobile from = e.Mobile;

			if (from == null)
			{
				return;
			}

			if (!(from is PlayerMobile))
			{
				return;
			}

			var pm = (PlayerMobile)from;

			PokerGame game = pm.PokerGame;

			if (game == null)
			{
				return;
			}

			PokerPlayer player = game.GetPlayer(from);

			if (player != null)
			{
			    Timer.DelayCall(TimeSpan.FromMinutes(1), () =>
			    {
			        if (!player.IsOnline())
			        {
			            player.RequestLeave = true;
			        }
			    });
			}
		}
 private void OnDisconnected(object sender, DisconnectedEventArgs e)
 {
 }
Пример #44
0
 /// <summary>
 /// Stops this instance.
 /// </summary>
 public void Stop()
 {
     StringBuilder sb = new StringBuilder();
     Events.Sending -= Events_Sending;
     if (_serialPort != null)
     {
         string port = _serialPort.PortName;
         _serialPort.Close();
         _serialPort.DataReceived -= _serialPort_DataReceived;
         _serialPort = null;
         DisconnectedEventArgs e = new DisconnectedEventArgs();
         sb.Length = 0;
         sb.AppendFormat("Connection Dropped on port {0}", e.Port);
         e.Message = sb.ToString();
         e.Port = port;
         Events.DoDisconnect(this, e);
     }
 }
Пример #45
0
        private static void EventSink_Disconnected( DisconnectedEventArgs e )
        {
            Account acc = e.Mobile.Account as Account;

            if ( acc == null )
                return;

            if ( acc.m_YoungTimer != null )
            {
                acc.m_YoungTimer.Stop();
                acc.m_YoungTimer = null;
            }

            PlayerMobile m = e.Mobile as PlayerMobile;
            if ( m == null )
                return;

            acc.m_TotalGameTime += DateTime.Now - m.SessionStart;
        }
Пример #46
0
 /// <summary>
 ///     Triggers the <see cref="Disconnected"/> event asynchronously.
 /// </summary>
 /// <param name="eventArgs">the event arguments</param>
 /// <returns>a task that represents the asynchronously operation.</returns>
 protected virtual Task OnDisconnectedAsync(DisconnectedEventArgs eventArgs)
 => Disconnected.InvokeAsync(this, eventArgs);
Пример #47
0
 /// <summary>
 ///     Called when we disconnect from the server.
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 void Client_Disconnected(object sender, DisconnectedEventArgs e)
 {
     //If we disconnect then we need to destroy everything!
     characterManager.RemoveAllCharacters();
     blockWorld.RemoveAllBlocks();
 }
Пример #48
0
 protected override void OnDisconnected(DisconnectedEventArgs e)
 {
     base.OnDisconnected(e);
 }
Пример #49
0
 private static void EventSink_Disconnected(DisconnectedEventArgs e)
 {
     ChatUser.RemoveChatUser(e.Mobile);
 }
Пример #50
0
        void Disconnected( object sender, DisconnectedEventArgs e )
        {
            if ( !e.UserInitiated )
            {
                Servers.TryMark( connection.CurrentEndPoint, ServerQuality.Bad );
            }

            SessionID = null;
            SteamID = null;

            ConnectedUniverse = EUniverse.Invalid;

            heartBeatFunc.Stop();

            OnClientDisconnected( userInitiated: e.UserInitiated || ExpectDisconnection );
        }
Пример #51
0
 void Network_OnDisconnected(object sender, DisconnectedEventArgs e)
 {
     InitializeClient(!ShuttingDown);
 }
Пример #52
0
 void Netcom_Disconnected(object sender, DisconnectedEventArgs e)
 {
     RefreshControls();
 }
 private void OnDisconnected(ConnectableBase sender, DisconnectedEventArgs e)
 {
 }
Пример #54
0
 private void Network_OnDisconnected(object sender, DisconnectedEventArgs e)
 {
     CleanupTimer();
 }
 private static void HoloNETClient_OnDisconnected(object sender, DisconnectedEventArgs e)
 {
     Console.WriteLine(string.Concat("Disconnected from ", e.EndPoint, ". Resason: ", e.Reason));
     Console.WriteLine("");
 }
Пример #56
0
 private void netcom_ClientDisconnected(object sender, DisconnectedEventArgs e)
 {
     RefreshControls();
 }
        private static void EventSink_Disconnected(DisconnectedEventArgs args)
        {
            Mobile player = args.Mobile;

            HideChatFrom(player);
        }
Пример #58
0
 /// <summary>
 /// Admin port disconnected from the IQFeed server.
 /// </summary>
 private void AdminPortOnDisconnectedEvent(object sender, DisconnectedEventArgs disconnectedEventArgs)
 {
     _isConnected = false;
     Log.Error("IQFeed.AdminPortOnDisconnectedEvent(): ADMIN PORT DISCONNECTED!");
 }
Пример #59
0
 /// <summary>
 /// Admin port disconnected from the IQFeed server.
 /// </summary>
 private void AdminPortOnDisconnectedEvent(object sender, DisconnectedEventArgs disconnectedEventArgs)
 {
     _isConnected = false;
     Log.Error("IQFeed.AdminPortOnDisconnectedEvent(): ADMIN PORT DISCONNECTED!");
 }
Пример #60
0
 public void Disconnect(DisconnectedEventArgs e = null)
 {
     throw new NotImplementedException();
 }