diff --git a/TShockAPI/Commands.cs b/TShockAPI/Commands.cs index b98da283..44539bfe 100755 --- a/TShockAPI/Commands.cs +++ b/TShockAPI/Commands.cs @@ -870,25 +870,14 @@ namespace TShockAPI var ban = TShock.Bans.GetBanByName(plStr); if (ban != null) { - if (TShock.Bans.RemoveBan(ban.IP)) - args.Player.SendMessage(string.Format("Unbanned {0} ({1})!", ban.Name, ban.IP), Color.Red); - else - args.Player.SendMessage(string.Format("Failed to unban {0} ({1})!", ban.Name, ban.IP), Color.Red); - } - else if (!TShock.Config.EnableBanOnUsernames) - { - ban = TShock.Bans.GetBanByIp(plStr); - - if (ban == null) - args.Player.SendMessage(string.Format("Failed to unban {0}, not found.", args.Parameters[0]), Color.Red); - else if (TShock.Bans.RemoveBan(ban.IP)) + if (TShock.Bans.RemoveBan(ban.IP, true)) args.Player.SendMessage(string.Format("Unbanned {0} ({1})!", ban.Name, ban.IP), Color.Red); else args.Player.SendMessage(string.Format("Failed to unban {0} ({1})!", ban.Name, ban.IP), Color.Red); } else { - args.Player.SendMessage("Invalid player!", Color.Red); + args.Player.SendMessage(string.Format("No bans for player {0} exist", plStr), Color.Red); } } @@ -947,8 +936,8 @@ namespace TShockAPI return; } - string plStr = args.Parameters[0]; - var ban = TShock.Bans.GetBanByIp(plStr); + var ip = args.Parameters[0]; + var ban = TShock.Bans.GetBanByIp(ip); if (ban != null) { if (TShock.Bans.RemoveBan(ban.IP)) @@ -958,7 +947,7 @@ namespace TShockAPI } else { - args.Player.SendMessage("Invalid player!", Color.Red); + args.Player.SendMessage(string.Format("No bans for ip {0} exist", ip), Color.Red); } } diff --git a/TShockAPI/TShock.cs b/TShockAPI/TShock.cs index 63f86190..c46c3ab5 100755 --- a/TShockAPI/TShock.cs +++ b/TShockAPI/TShock.cs @@ -388,11 +388,11 @@ namespace TShockAPI Console.WriteLine("Startup parameter overrode REST port."); } - if ((parms[i].ToLower() == "-maxplayers")||(parms[i].ToLower() == "-players")) - { - Config.MaxSlots = Convert.ToInt32(parms[++i]); - Console.WriteLine("Startup parameter overrode maximum player slot configuration value."); - } + if ((parms[i].ToLower() == "-maxplayers")||(parms[i].ToLower() == "-players")) + { + Config.MaxSlots = Convert.ToInt32(parms[++i]); + Console.WriteLine("Startup parameter overrode maximum player slot configuration value."); + } } } @@ -659,10 +659,18 @@ namespace TShockAPI return; } - var nameban = Bans.GetBanByName(player.Name); Ban ban = null; - if (nameban != null && Config.EnableBanOnUsernames) - ban = nameban; + if (Config.EnableBanOnUsernames) + { + var newban = Bans.GetBanByName(player.Name); + if (null != newban) + ban = newban; + } + + if (Config.EnableIPBans && null == ban) + { + ban = Bans.GetBanByIp(player.IP); + } if (ban != null) {