public void OnPlayerDisconnected(object sender, PlayerDisconnectedEventArgs args) { lock ( _lock ) { //try to _tracker.RemovePlayer(args.Player); } }
protected virtual void InvokeOnPlayerDisconnected(PlayerDisconnectedEventArgs e) { if (onPlayerDisconnected != null) { onPlayerDisconnected.Invoke(this, e); } }
private void OnPlayerDisconnected(object sender, PlayerDisconnectedEventArgs playerDisconnectedEventArgs) { if (IsExpired) { return; } Player player = playerDisconnectedEventArgs.Player; if (!playerDisconnectedEventArgs.IsFake) { if (player == TargetPlayer) { RaiseExpiredEvent(ExpirationReasonType.TargetPlayerLeft); SendExpirationMessage(false, true, "they left the server."); return; } if (player == RequestingPlayer) { RaiseExpiredEvent(ExpirationReasonType.RequestingPlayerLeft); SendExpirationMessage(true, false, "they left the server."); } } }
public static void PlayerDisconnected(this Multiplayer multiplayer, Farmer farmer) { PlayerDisconnectedEventArgs args = new PlayerDisconnectedEventArgs { Player = farmer }; OnPlayerDisconnected(null, args); }
public static void PlayerDisconnected(object sender, PlayerDisconnectedEventArgs e) { try { if (e.Player.World != null) { if (e.Player.World.IsLoaded) { Map map = e.Player.World.Map; if (e.Player.orangePortal.Count > 0) { int i = 0; foreach (Vector3I block in e.Player.orangePortal) { map.QueueUpdate(new BlockUpdate(null, block, e.Player.orangeOld[i])); i++; } e.Player.orangeOld.Clear(); e.Player.orangePortal.Clear(); } if (e.Player.bluePortal.Count > 0) { int i = 0; foreach (Vector3I block in e.Player.bluePortal) { map.QueueUpdate(new BlockUpdate(null, block, e.Player.blueOld[i])); i++; } e.Player.blueOld.Clear(); e.Player.bluePortal.Clear(); } } else { if (e.Player.bluePortal.Count > 0) { e.Player.World.Map.Blocks[e.Player.World.Map.Index(e.Player.bluePortal[0])] = (byte)e.Player.blueOld[0]; e.Player.World.Map.Blocks[e.Player.World.Map.Index(e.Player.bluePortal[1])] = (byte)e.Player.blueOld[1]; } if (e.Player.orangePortal.Count > 0) { e.Player.WorldMap.Blocks[e.Player.WorldMap.Index(e.Player.orangePortal[0])] = (byte)e.Player.orangeOld[0]; e.Player.WorldMap.Blocks[e.Player.WorldMap.Index(e.Player.orangePortal[1])] = (byte)e.Player.orangeOld[1]; } } } } catch (Exception ex) { Logger.Log(LogType.SeriousError, "GunPortalDisconnected: " + ex); } }
//TODO: Not in use, remove if not needed public static void PlayerDisconnected(this Multiplayer multiplayer, IncomingMessage msg) { PlayerDisconnectedEventArgs args = new PlayerDisconnectedEventArgs { Player = msg.SourceFarmer }; ModEntry.ModMonitor.Log("PlayerDisconnected(this Multiplayer multiplayer, IncomingMessage msg)"); OnPlayerDisconnected(null, args); }
internal static void PlayerDisconnectedHandler(object sender, PlayerDisconnectedEventArgs e) { if (e.Player.HasFullyConnected && ConfigKey.IRCBotAnnounceServerJoins.Enabled() && (e.IsFake || !e.Player.Info.IsHidden)) { string message = String.Format("{0}&S* {1}&S left the server ({2})", Color.IRCBold, e.Player.ClassyName, e.LeaveReason); SendAction(message); } }
internal static void PlayerDisconnectedHandler(object sender, PlayerDisconnectedEventArgs e) { if (e.Player.Session.IsReady && ConfigKey.IRCBotAnnounceServerJoins.GetBool() && !e.Player.IsHidden) { string message = String.Format("{0}&S* {1}&S left the server ({2})", Color.IRCBold, e.Player.GetClassyName(), e.LeaveReason); SendAction(message); } }
private void MultiplayerExtension_OnPlayerDisconnected(object sender, PlayerDisconnectedEventArgs e) { #if DEBUG ModEntry.ModLogger.LogTrace(); #endif if (SynchronizedPlayerTextureData.ContainsKey(e.Player.UniqueMultiplayerID)) { UpdateTotalEmojis(TotalNumberEmojis - SynchronizedPlayerTextureData[e.Player.UniqueMultiplayerID].Count); SynchronizedPlayerTextureData.Remove(e.Player.UniqueMultiplayerID); } CurrentTexture = MergeTextures(VanillaTexture, SynchronizedPlayerTextureData.Values); // Replace with the new texture modHelper.Reflection.GetField <Texture2D>(Game1.chatBox.emojiMenu, "emojiTexture").SetValue(CurrentTexture); ChatBox.emojiTexture = CurrentTexture; //Game1.chatBox.emojiMenu.receiveScrollWheelAction(1); //Game1.chatBox.emojiMenu.receiveScrollWheelAction(-1); // Update client textures Multiplayer multiplayer = modHelper.Reflection.GetField <Multiplayer>(typeof(Game1), "multiplayer").GetValue(); multiplayer.BroadcastEmojiTexture(CurrentTexture, TotalNumberEmojis); }
/// <summary> /// Dispatches the <see cref="PlayerDisconnected"/> event asynchronously. /// </summary> /// <param name="eventArgs">the event arguments passed with the event</param> /// <returns>a task that represents the asynchronous operation</returns> protected virtual Task OnPlayerDisconnectedAsync(PlayerDisconnectedEventArgs eventArgs) => PlayerDisconnected.InvokeAsync(this, eventArgs);
/// <summary> /// Notifies a player disconnect asynchronously. /// </summary> /// <param name="eventArgs">the event arguments passed with the event</param> /// <returns>a task that represents the asynchronously operation.</returns> protected internal override Task NotifyDisconnectAsync(PlayerDisconnectedEventArgs eventArgs) => OnPlayerDisconnectedAsync(eventArgs);
/// <summary> /// Notifies a player disconnect asynchronously. /// </summary> /// <param name="eventArgs">the event arguments passed with the event</param> /// <returns>a task that represents the asynchronously operation.</returns> protected internal virtual Task NotifyDisconnectAsync(PlayerDisconnectedEventArgs eventArgs) => Task.CompletedTask;
public static void OnPlayerDisconnected(object sender, PlayerDisconnectedEventArgs e) { trapinfo.Remove(e.Player); }
public override void OnDisconnected(PlayerDisconnectedEventArgs e) { DisposeVehicle(); base.OnDisconnected(e); }