internal void InvokeServerLeave(int who) { LeaveEventArgs args = new LeaveEventArgs { Who = who }; this.ServerLeave.Invoke(args); }
private void onPlayerLeave(TerrariaApi.Server.LeaveEventArgs e) { lock (players) for (int i = 0; i < players.Count; i++) { if (players[i].index == e.Who) { players.RemoveAt(i); break; } } }
private void OnLeave(LeaveEventArgs args) { int id = -1; if (indexid.ContainsKey(args.Who)) id = indexid[args.Who]; else return; if (id != -1 && players.ContainsKey(id)) { players[id].Leave(); players[id].pastGreet = false; players[id].hasGreeted = false; indexid.Remove(args.Who); } }
public void OnLeave(LeaveEventArgs e) { Spying[e.Who] = false; InStaffChat[e.Who] = false; }
public void OnLeave(LeaveEventArgs args) { Playerlist[args.Who] = null; }
internal void OnLeave(LeaveEventArgs args) { lock (C3Mod.C3Players) { for (int i = 0; i < C3Mod.C3Players.Count; i++) { if (C3Mod.C3Players[i].Index == args.Who) { C3Mod.C3Players.RemoveAt(i); break; } } } }
/// <summary>OnLeave - Called when a player leaves the server.</summary> /// <param name="args">args - The LeaveEventArgs object.</param> private void OnLeave(LeaveEventArgs args) { var tsplr = Players[args.Who]; Players[args.Who] = null; if (tsplr != null && tsplr.ReceivedInfo) { if (!tsplr.SilentKickInProgress && tsplr.State >= 3) Utils.Broadcast(tsplr.Name + " has left.", Color.Yellow); Log.Info("{0} disconnected.", tsplr.Name); if (tsplr.IsLoggedIn && !tsplr.IgnoreActionsForClearingTrashCan && Main.ServerSideCharacter && (!tsplr.Dead || tsplr.TPlayer.difficulty != 2)) { tsplr.PlayerData.CopyCharacter(tsplr); CharacterDB.InsertPlayerData(tsplr); } if (Config.RememberLeavePos && !tsplr.LoginHarassed) { RememberedPos.InsertLeavePos(tsplr.Name, tsplr.IP, (int)(tsplr.X / 16), (int)(tsplr.Y / 16)); } if (tsplr.tempGroupTimer != null) { tsplr.tempGroupTimer.Stop(); } } // Fire the OnPlayerLogout hook too, if the player was logged in and they have a TSPlayer object. if (tsplr != null && tsplr.IsLoggedIn) { Hooks.PlayerHooks.OnPlayerLogout(tsplr); } // The last player will leave after this hook is executed. if (Utils.ActivePlayers() == 1) { if (Config.SaveWorldOnLastPlayerExit) SaveManager.Instance.SaveWorld(); SetConsoleTitle(true); } }
void OnLeave(LeaveEventArgs e) { string name = Main.player[e.Who].name; ClanMember member = ClanManager.getClanMember(name); if (member == null) return; else member.Index = -1; ClanManager.PendingInvites[e.Who].Timeout = 0; }
private static void OnLeave(LeaveEventArgs plr) { try { var player = GetPlayerByIndex(plr.Who); if (player != null) { if (player.UserID != -1) { AdminToolsMain.db.QueryReader("UPDATE PlayerData SET Nicknames=@1, IPs=@2, LastSeen=@3 WHERE UserID=@0", player.UserID, JsonConvert.SerializeObject(player.Nicknames, Formatting.None), JsonConvert.SerializeObject(player.IP, Formatting.None), DateTime.Now.Ticks); } lock (PlayerList) { PlayerList.Remove(player); } } } catch (Exception ex) { TShock.Log.ConsoleError(ex.ToString()); } }
/// <summary> /// ServerLeave Event /// Automatically executes the "save" command when /// the last player has left the server. /// </summary> /// <param name="args">LeaveEvent Parameters. Has a "who" parameter which corresponds /// to the leaving player's index</param> private void OnPlayerLeaveServer(LeaveEventArgs args) { // Get the currrent player count int playerCount = TShock.Utils.ActivePlayers(); // is this the last player and is able to save? if (playerCount <= 1 && canSave == true) { TShock.Utils.SaveWorld(); lastSaved = DateTime.Now; canSave = false; } }
private void OnLeave(LeaveEventArgs args) { throw new NotImplementedException(); }
private void OnLeave(LeaveEventArgs args) { if (storage.ContainsKey(args.Who)) { storage.Remove(args.Who); } }
private void OnLeave(LeaveEventArgs e) { if (TShock.Players[e.Who] != null && ChatPlayers[e.Who] != null) { UpdateList(e.Who, false); } }
void OnLeave(LeaveEventArgs e) { ClanManager.UnLoadMember(TShock.Players[e.Who]); }
///<summary> /// This event happens every time a player leaves the server. ///</summary> ///<param name="args">Containing event data.</param> private void OnLeave(LeaveEventArgs args) { if (this.myPlayersData.ContainsKey(TShock.Players[args.Who].Index)) { this.myPlayersData.Remove(TShock.Players[args.Who].Index); } }
private void OnLeave(LeaveEventArgs args) { if (TShock.Utils.ActivePlayers() == 1) { foreach (var pair in bossList) { if (pair.Value > 0 && pair.Value < Main.maxNPCs) { TSPlayer.Server.StrikeNPC(pair.Value, 9999, 1f, 1); } } bossList.Clear(); bossCounts.Clear(); Timers.Stop(); TShock.Log.ConsoleInfo("[AutoBoss+] Timer Disabled: No players are online"); } }
void OnLeave(LeaveEventArgs e) { Spams[e.Who] = 0.0; Times[e.Who] = DateTime.Now; }
void OnLeave(LeaveEventArgs e) { Infos[e.Who] = new PlayerInfo(); }
void OnLeave(LeaveEventArgs e) { Action[e.Who] = SignAction.NONE; SignNum[e.Who] = false; }
public void OnLeave(LeaveEventArgs args) { var plr = TShock.Players[args.Who]; if (plr == null) return; if (hasAnnounced.Keys.Contains(args.Who)) hasAnnounced.Remove(args.Who); if (!plr.IsLoggedIn) return; if (permas.ContainsKey(plr.User.ID)) permas.Remove(plr.User.ID); }
public void OnLeave(LeaveEventArgs e) { lock (EBPlayers) { for (int i = 0; i < EBPlayers.Count; i++) { if (EBPlayers[i].Index == e.Who) { EBPlayers.RemoveAt(i); break; } } } }
public void OnLeave(LeaveEventArgs e) { try { if (PlayerList[e.Who] != null) PlayerList[e.Who].StopUpdating(); PlayerList[e.Who] = null; } catch (Exception ex) { Log.ConsoleError(ex.ToString()); if (e.Who >= 0) PlayerList[e.Who] = null; } }
private static void OnLeave(LeaveEventArgs args) { //if (ScPlayers[args.Who] != null && ScPlayers[args.Who].Cooldowns.Count > 0) // OfflineCooldowns.Add(TShock.Players[args.Who].Name, ScPlayers[args.Who].Cooldowns); ScPlayers[args.Who] = null; }
void OnLeave(LeaveEventArgs args) { RPlayers[args.Who] = null; }
private void OnLeave(LeaveEventArgs args) { lock (Players) { Players.RemoveAll(p => p.Index == args.Who); } }
void OnLeave(LeaveEventArgs e) { TSPlayer tsplr = TShock.Players[e.Who]; if (!IrcClient.IsConnected) Connect(); else if (tsplr != null && tsplr.ReceivedInfo && tsplr.State >= 3 && !tsplr.SilentKickInProgress) { if (!String.IsNullOrEmpty(Config.ServerLeaveMessageFormat)) SendMessage(Config.Channel, String.Format(Config.ServerLeaveMessageFormat, tsplr.Name)); if (!String.IsNullOrEmpty(Config.ServerLeaveAdminMessageFormat)) SendMessage(Config.AdminChannel, String.Format(Config.ServerLeaveAdminMessageFormat, tsplr.Name, tsplr.IP)); } }
public void OnLeave(LeaveEventArgs args) { if (scPlayers[args.Who] != null && scPlayers[args.Who].Cooldowns.Count > 0) OfflineCooldowns.Add(TShock.Players[args.Who].Name, scPlayers[args.Who].Cooldowns); scPlayers[args.Who] = null; }
public void OnLeave(LeaveEventArgs e) { TSPlayer ts = TShock.Players[e.Who]; int i = FrozenPlayers.FindIndex(f => f.Index == e.Who); if (i >= 0) { if (!IpNames.ContainsKey(ts.IP)) IpNames.Add(ts.IP, ts.Name); FrozenPlayers.RemoveAt(i); } }
private void OnLeave(LeaveEventArgs args) { lock (players) { players[args.Who] = null; } }
private void OnLeave(LeaveEventArgs args) { var player = Utils.GetPlayers(args.Who); Players.RemoveAll(pl => pl.Index == args.Who); }
void OnLeave(LeaveEventArgs e) { Build[e.Who] = false; }