diff --git a/TShockAPI/DB/ItemManager.cs b/TShockAPI/DB/ItemManager.cs index 5c631242..a43a40bb 100644 --- a/TShockAPI/DB/ItemManager.cs +++ b/TShockAPI/DB/ItemManager.cs @@ -200,6 +200,10 @@ namespace TShockAPI.DB { if (ply == null) return false; + + if (ply.Group.HasPermission(Permissions.usebanneditem)) + return true; + var cur = ply.Group; var traversed = new List(); while (cur != null) diff --git a/TShockAPI/GetDataHandlers.cs b/TShockAPI/GetDataHandlers.cs index b17a43f9..be6ece45 100755 --- a/TShockAPI/GetDataHandlers.cs +++ b/TShockAPI/GetDataHandlers.cs @@ -2235,8 +2235,7 @@ namespace TShockAPI if ((control & 32) == 32) { - if (!args.Player.Group.HasPermission(Permissions.usebanneditem) && - TShock.Itembans.ItemIsBanned(args.TPlayer.inventory[item].name, args.Player)) + if (TShock.Itembans.ItemIsBanned(args.TPlayer.inventory[item].name, args.Player)) { control -= 32; args.Player.Disable("Using banned item"); @@ -2583,8 +2582,7 @@ namespace TShockAPI return true; } - if(type == 1 && (!args.Player.Group.HasPermission(Permissions.usebanneditem) && - TShock.Itembans.ItemIsBanned("Lava Bucket", args.Player))) + if(type == 1 && TShock.Itembans.ItemIsBanned("Lava Bucket", args.Player)) { args.Player.SendErrorMessage("You do not have permission to perform this action."); args.Player.Disable("Using banned lava bucket without permissions"); @@ -2600,8 +2598,7 @@ namespace TShockAPI return true; } - if (type == 0 && (!args.Player.Group.HasPermission(Permissions.usebanneditem) && - TShock.Itembans.ItemIsBanned("Water Bucket", args.Player))) + if (type == 0 && TShock.Itembans.ItemIsBanned("Water Bucket", args.Player)) { args.Player.SendErrorMessage("You do not have permission to perform this action."); args.Player.Disable("Using banned water bucket without permissions"); @@ -2617,8 +2614,7 @@ namespace TShockAPI return true; } - if (type == 2 && (!args.Player.Group.HasPermission(Permissions.usebanneditem) && - TShock.Itembans.ItemIsBanned("Honey Bucket", args.Player))) + if (type == 2 && TShock.Itembans.ItemIsBanned("Honey Bucket", args.Player)) { args.Player.SendErrorMessage("You do not have permission to perform this action."); args.Player.Disable("Using banned honey bucket without permissions"); @@ -3135,8 +3131,7 @@ namespace TShockAPI if (buff == 10) { - if (!args.Player.Group.HasPermission(Permissions.usebanneditem) && - TShock.Itembans.ItemIsBanned("Invisibility Potion", args.Player)) + if (TShock.Itembans.ItemIsBanned("Invisibility Potion", args.Player)) buff = 0; else if (TShock.Config.DisableInvisPvP && args.TPlayer.hostile) buff = 0; diff --git a/TShockAPI/TShock.cs b/TShockAPI/TShock.cs index 82ea1ee6..8017e291 100755 --- a/TShockAPI/TShock.cs +++ b/TShockAPI/TShock.cs @@ -756,7 +756,7 @@ namespace TShockAPI check = "none"; foreach (Item item in player.TPlayer.armor) { - if (!player.Group.HasPermission(Permissions.usebanneditem) && Itembans.ItemIsBanned(item.name, player)) + if (Itembans.ItemIsBanned(item.name, player)) { player.SetBuff(30, 120); //Bleeding player.SetBuff(36, 120); //Broken Armor @@ -768,8 +768,7 @@ namespace TShockAPI { player.Disable("check ignores failed in SecondUpdate()", false); } - else if (!player.Group.HasPermission(Permissions.usebanneditem) && - Itembans.ItemIsBanned(player.TPlayer.inventory[player.TPlayer.selectedItem].name, player)) + else if (Itembans.ItemIsBanned(player.TPlayer.inventory[player.TPlayer.selectedItem].name, player)) { player.SetBuff(23, 120); //Cursed } @@ -1407,14 +1406,13 @@ namespace TShockAPI return true; } - if (type == 17 && !player.Group.HasPermission(Permissions.usebanneditem) && Itembans.ItemIsBanned("Dirt Rod", player)) + if (type == 17 && Itembans.ItemIsBanned("Dirt Rod", player)) //Dirt Rod Projectile { return true; } - if ((type == 42 || type == 65 || type == 68) && !player.Group.HasPermission(Permissions.usebanneditem) && - Itembans.ItemIsBanned("Sandgun", player)) //Sandgun Projectiles + if ((type == 42 || type == 65 || type == 68) && Itembans.ItemIsBanned("Sandgun", player)) //Sandgun Projectiles { return true; } @@ -1422,7 +1420,7 @@ namespace TShockAPI Projectile proj = new Projectile(); proj.SetDefaults(type); - if (!player.Group.HasPermission(Permissions.usebanneditem) && Itembans.ItemIsBanned(proj.name, player)) + if (Itembans.ItemIsBanned(proj.name, player)) { return true; }