private void ProcessUnban(IPlayer player, JObject clan) { foreach (var member in clan["members"]) { var target = covalence.Players.FindPlayerById(Convert.ToString(member)); if (type == 1) { EnhancedBanSystem.Call("TryUnBan", player.Name, new string[1] { target.Id }); } else { var exists = ServerUsers.Get(ulong.Parse(target.Id)); if (exists != null && exists.group != ServerUsers.UserGroup.Banned) { SendMessage(player, GetLang("AlreadyUnbanned", player.Id, target.Name)); return; } ServerUsers.Remove(ulong.Parse(target.Id)); ServerUsers.Save(); server.Broadcast(GetLang("PlayerUnbanned", null, target.Name)); } } if (AnnounceToServer) { server.Broadcast(GetLang("UnbanMessage", null, clan["tag"])); } }
public void Unban(string id) { if (this.IsBanned(id)) { ServerUsers.Remove(UInt64.Parse(id)); ServerUsers.Save(); } }
public void Unban(ulong id) { if (!this.IsBanned(id)) { return; } ServerUsers.Remove(id); ServerUsers.Save(); }
/// <summary> /// Unbans the player /// </summary> public void Unban(BasePlayer player) { if (!IsBanned(player)) { return; } ServerUsers.Remove(player.userID); ServerUsers.Save(); }
/// <summary> /// Unbans the player /// </summary> /// <param name="id"></param> public void Unban(string id) { if (!IsBanned(id)) { return; } ServerUsers.Remove(ulong.Parse(id)); ServerUsers.Save(); }
/// <summary> /// Unbans the user /// </summary> public void Unban() { // Check not banned if (!IsBanned) { return; } // Set to unbanned ServerUsers.Remove(steamId); ServerUsers.Save(); }
/// <summary> /// Unbans the user /// </summary> /// <param name="id"></param> public void Unban(string id) { // Check if unbanned already if (!IsBanned(id)) { return; } // Set to unbanned ServerUsers.Remove(ulong.Parse(id)); ServerUsers.Save(); }
/// <summary> /// Unbans the player /// </summary> public void Unban(BasePlayer player) { // Check if unbanned already if (!IsBanned(player)) { return; } // Set to unbanned ServerUsers.Remove(player.userID); ServerUsers.Save(); }
public static void Set(ulong uid, ServerUsers.UserGroup group, string username, string notes) { ServerUsers.Remove(uid); ServerUsers.User user = new ServerUsers.User() { steamid = uid, group = group, username = username, notes = notes }; Interface.CallHook("IOnServerUsersSet", (object)uid, (object)group, (object)username, (object)notes); ServerUsers.users.Add(uid, user); }
void ClearLocalBans(ConsoleSystem.Arg arg) { if (!arg.IsAdmin) { return; } LoadingServerUsers = true; foreach (var ban in ServerUsers.GetAll(ServerUsers.UserGroup.Banned).ToList()) { ServerUsers.Remove(ban.steamid); } LoadingServerUsers = false; Puts($"Cleared Server Bans"); }
public static void unban(ConsoleSystem.Arg arg) { ulong num = arg.GetUInt64(0, (ulong)0); if (num < 70000000000000000L) { arg.ReplyWith(string.Concat("This doesn't appear to be a 64bit steamid: ", num)); return; } ServerUsers.User user = ServerUsers.Get(num); if (user == null || user.@group != ServerUsers.UserGroup.Banned) { arg.ReplyWith(string.Concat("User ", num, " isn't banned")); return; } ServerUsers.Remove(num); arg.ReplyWith(string.Concat("Unbanned User: ", num)); }
public static void unban(Arg arg) { ulong uInt = arg.GetUInt64(0, 0uL); if (uInt < 70000000000000000L) { arg.ReplyWith($"This doesn't appear to be a 64bit steamid: {uInt}"); return; } ServerUsers.User user = ServerUsers.Get(uInt); if (user == null || user.group != ServerUsers.UserGroup.Banned) { arg.ReplyWith($"User {uInt} isn't banned"); return; } ServerUsers.Remove(uInt); arg.ReplyWith("Unbanned User: " + uInt); }
public static void removeowner(Arg arg) { ulong uInt = arg.GetUInt64(0, 0uL); if (uInt < 70000000000000000L) { arg.ReplyWith("This doesn't appear to be a 64bit steamid: " + uInt); return; } ServerUsers.User user = ServerUsers.Get(uInt); if (user == null || user.group != ServerUsers.UserGroup.Owner) { arg.ReplyWith("User " + uInt + " isn't an owner"); return; } ServerUsers.Remove(uInt); arg.ReplyWith("Removed Owner: " + uInt); }
public static void unban(ConsoleSystem.Arg arg) { ulong uint64 = arg.GetUInt64(0, 0UL); if (uint64 < 70000000000000000UL) { arg.ReplyWith("This doesn't appear to be a 64bit steamid: " + (object)uint64); } else { ServerUsers.User user = ServerUsers.Get(uint64); if (user == null || user.group != ServerUsers.UserGroup.Banned) { arg.ReplyWith("User " + (object)uint64 + " isn't banned"); } else { ServerUsers.Remove(uint64); arg.ReplyWith("Unbanned User: " + (object)uint64); } } }
private void PullBansFromServer() { var query = string.Format(MySqlConstants.SELECT_ALL_BANS, Settings.Instance.DatabaseName, Settings.Instance.TableName); PerformDatabaseQuery(query, (responseRows) => { if (responseRows == null) { return; } HashSet <ulong> localBans = new HashSet <ulong>(ServerUsers.GetAll(ServerUsers.UserGroup.Banned).Select(x => x.steamid)); Settings.Instance.databaseBans.Clear(); if (responseRows.Any()) { //Add all database bans to local file foreach (var row in responseRows) { var playerID = row["steamid"].ToString(); if (string.IsNullOrEmpty(playerID)) { continue; } ulong steamID; if (!ulong.TryParse(playerID, out steamID)) { return; } var username = row["name"].ToString(); var reason = row["reason"].ToString(); Settings.Instance.databaseBans.Add(steamID, new PlayerBan(steamID, reason)); if (!UsernameValid(steamID, username)) { UnnamedBans.Add(new PlayerBan(steamID, reason)); } if (localBans.Remove(steamID)) //No need to reban people { continue; } ServerUsers.Set(steamID, ServerUsers.UserGroup.Banned, playerID, reason); BasePlayer player = BasePlayer.FindByID(steamID); if (player != null) { player.Kick("Bans share across servers :)"); } } //Dont want to delete local ban list accidently foreach (var player in localBans) //Unban users who aren't found on the database { ServerUsers.Remove(player); } if (UnnamedBans.Count > 0) { timer.In(10f, UpdateDatabaseUsernames); } Puts($"Updated ban list - {responseRows.Count} bans pulled from database"); Settings.Save(); } }); }