mirror of
https://github.com/exituser/Brewery.git
synced 2026-09-17 08:59:01 +00:00
Added Barrel Check for GamemodeInventories
This commit is contained in:
@@ -409,6 +409,7 @@ recipes:
|
|||||||
useWorldGuard: true
|
useWorldGuard: true
|
||||||
useLWC: true
|
useLWC: true
|
||||||
useGriefPrevention: true
|
useGriefPrevention: true
|
||||||
|
useGMInventories: true
|
||||||
|
|
||||||
# Änderungen an Fassinventaren mit LogBlock aufzeichen [true]
|
# Änderungen an Fassinventaren mit LogBlock aufzeichen [true]
|
||||||
useLogBlock: true
|
useLogBlock: true
|
||||||
|
|||||||
@@ -411,6 +411,7 @@ recipes:
|
|||||||
useWorldGuard: true
|
useWorldGuard: true
|
||||||
useLWC: true
|
useLWC: true
|
||||||
useGriefPrevention: true
|
useGriefPrevention: true
|
||||||
|
useGMInventories: true
|
||||||
|
|
||||||
# Enable the Logging of Barrel Inventories to LogBlock [true]
|
# Enable the Logging of Barrel Inventories to LogBlock [true]
|
||||||
useLogBlock: true
|
useLogBlock: true
|
||||||
|
|||||||
@@ -119,7 +119,6 @@ public class Barrel implements InventoryHolder {
|
|||||||
// Listened to by WGBarrel7, WGBarrelNew, WGBarrelOld, GriefPreventionBarrel (IntegrationListener)
|
// Listened to by WGBarrel7, WGBarrelNew, WGBarrelOld, GriefPreventionBarrel (IntegrationListener)
|
||||||
P.p.getServer().getPluginManager().callEvent(accessEvent);
|
P.p.getServer().getPluginManager().callEvent(accessEvent);
|
||||||
if (accessEvent.isCancelled()) {
|
if (accessEvent.isCancelled()) {
|
||||||
P.p.msg(player, P.p.languageReader.get("Error_NoBarrelAccess"));
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -48,6 +48,7 @@ public class BConfig {
|
|||||||
public static boolean useGP; //GriefPrevention
|
public static boolean useGP; //GriefPrevention
|
||||||
public static boolean hasVault; // Vault
|
public static boolean hasVault; // Vault
|
||||||
public static boolean useCitadel; // CivCraft/DevotedMC Citadel
|
public static boolean useCitadel; // CivCraft/DevotedMC Citadel
|
||||||
|
public static boolean useGMInventories; // GamemodeInventories
|
||||||
public static Boolean hasSlimefun = null; // Slimefun ; Null if not checked
|
public static Boolean hasSlimefun = null; // Slimefun ; Null if not checked
|
||||||
public static Boolean hasMMOItems = null; // MMOItems ; Null if not checked
|
public static Boolean hasMMOItems = null; // MMOItems ; Null if not checked
|
||||||
|
|
||||||
@@ -194,6 +195,7 @@ public class BConfig {
|
|||||||
useLWC = config.getBoolean("useLWC", true) && plMan.isPluginEnabled("LWC");
|
useLWC = config.getBoolean("useLWC", true) && plMan.isPluginEnabled("LWC");
|
||||||
useGP = config.getBoolean("useGriefPrevention", true) && plMan.isPluginEnabled("GriefPrevention");
|
useGP = config.getBoolean("useGriefPrevention", true) && plMan.isPluginEnabled("GriefPrevention");
|
||||||
useLB = config.getBoolean("useLogBlock", false) && plMan.isPluginEnabled("LogBlock");
|
useLB = config.getBoolean("useLogBlock", false) && plMan.isPluginEnabled("LogBlock");
|
||||||
|
useGMInventories = config.getBoolean("useGMInventories", false);
|
||||||
useCitadel = config.getBoolean("useCitadel", false) && plMan.isPluginEnabled("Citadel");
|
useCitadel = config.getBoolean("useCitadel", false) && plMan.isPluginEnabled("Citadel");
|
||||||
// The item util has been removed in Vault 1.7+
|
// The item util has been removed in Vault 1.7+
|
||||||
hasVault = plMan.isPluginEnabled("Vault")
|
hasVault = plMan.isPluginEnabled("Vault")
|
||||||
|
|||||||
@@ -15,6 +15,7 @@ import com.dre.brewery.recipe.RecipeItem;
|
|||||||
import com.dre.brewery.utility.LegacyUtil;
|
import com.dre.brewery.utility.LegacyUtil;
|
||||||
import net.Indyuce.mmoitems.MMOItems;
|
import net.Indyuce.mmoitems.MMOItems;
|
||||||
import net.Indyuce.mmoitems.api.item.NBTItem;
|
import net.Indyuce.mmoitems.api.item.NBTItem;
|
||||||
|
import org.bukkit.GameMode;
|
||||||
import org.bukkit.Material;
|
import org.bukkit.Material;
|
||||||
import org.bukkit.block.Block;
|
import org.bukkit.block.Block;
|
||||||
import org.bukkit.entity.Player;
|
import org.bukkit.entity.Player;
|
||||||
@@ -37,6 +38,7 @@ public class IntegrationListener implements Listener {
|
|||||||
try {
|
try {
|
||||||
if (!BConfig.wg.checkAccess(event.getPlayer(), event.getSpigot(), plugin)) {
|
if (!BConfig.wg.checkAccess(event.getPlayer(), event.getSpigot(), plugin)) {
|
||||||
event.setCancelled(true);
|
event.setCancelled(true);
|
||||||
|
P.p.msg(event.getPlayer(), P.p.languageReader.get("Error_NoBarrelAccess"));
|
||||||
}
|
}
|
||||||
} catch (Throwable e) {
|
} catch (Throwable e) {
|
||||||
event.setCancelled(true);
|
event.setCancelled(true);
|
||||||
@@ -58,10 +60,37 @@ public class IntegrationListener implements Listener {
|
|||||||
|
|
||||||
@EventHandler(priority = EventPriority.LOW, ignoreCancelled = true)
|
@EventHandler(priority = EventPriority.LOW, ignoreCancelled = true)
|
||||||
public void onBarrelAccess(BarrelAccessEvent event) {
|
public void onBarrelAccess(BarrelAccessEvent event) {
|
||||||
|
if (BConfig.useGMInventories) {
|
||||||
|
Plugin pl = P.p.getServer().getPluginManager().getPlugin("GameModeInventories");
|
||||||
|
if (pl != null && pl.isEnabled()) {
|
||||||
|
try {
|
||||||
|
if (pl.getConfig().getBoolean("restrict_creative")) {
|
||||||
|
Player player = event.getPlayer();
|
||||||
|
if (player.getGameMode() == GameMode.CREATIVE) {
|
||||||
|
if (!pl.getConfig().getBoolean("bypass.inventories") || (!player.hasPermission("gamemodeinventories.bypass") && !player.isOp())) {
|
||||||
|
event.setCancelled(true);
|
||||||
|
if (!pl.getConfig().getBoolean("dont_spam_chat")) {
|
||||||
|
P.p.msg(event.getPlayer(), P.p.languageReader.get("Error_NoBarrelAccess"));
|
||||||
|
}
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} catch (Throwable e) {
|
||||||
|
P.p.errorLog("Failed to Check GameModeInventories for Barrel Open Permissions!");
|
||||||
|
P.p.errorLog("Players will be able to open Barrel with GameMode Creative");
|
||||||
|
e.printStackTrace();
|
||||||
|
BConfig.useGMInventories = false;
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
BConfig.useGMInventories = false;
|
||||||
|
}
|
||||||
|
}
|
||||||
if (BConfig.useGP) {
|
if (BConfig.useGP) {
|
||||||
if (P.p.getServer().getPluginManager().isPluginEnabled("GriefPrevention")) {
|
if (P.p.getServer().getPluginManager().isPluginEnabled("GriefPrevention")) {
|
||||||
try {
|
try {
|
||||||
if (!GriefPreventionBarrel.checkAccess(event)) {
|
if (!GriefPreventionBarrel.checkAccess(event)) {
|
||||||
|
P.p.msg(event.getPlayer(), P.p.languageReader.get("Error_NoBarrelAccess"));
|
||||||
event.setCancelled(true);
|
event.setCancelled(true);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@@ -94,9 +123,11 @@ public class IntegrationListener implements Listener {
|
|||||||
Player player = event.getPlayer();
|
Player player = event.getPlayer();
|
||||||
try {
|
try {
|
||||||
if (!LWCBarrel.checkAccess(player, sign, plugin)) {
|
if (!LWCBarrel.checkAccess(player, sign, plugin)) {
|
||||||
|
P.p.msg(event.getPlayer(), P.p.languageReader.get("Error_NoBarrelAccess"));
|
||||||
event.setCancelled(true);
|
event.setCancelled(true);
|
||||||
}
|
}
|
||||||
} catch (Throwable e) {
|
} catch (Throwable e) {
|
||||||
|
event.setCancelled(true);
|
||||||
P.p.errorLog("Failed to Check LWC for Barrel Open Permissions!");
|
P.p.errorLog("Failed to Check LWC for Barrel Open Permissions!");
|
||||||
P.p.errorLog("Brewery was tested with version 4.5.0 of LWC!");
|
P.p.errorLog("Brewery was tested with version 4.5.0 of LWC!");
|
||||||
P.p.errorLog("Disable the LWC support in the config and do /brew reload");
|
P.p.errorLog("Disable the LWC support in the config and do /brew reload");
|
||||||
@@ -105,7 +136,7 @@ public class IntegrationListener implements Listener {
|
|||||||
P.p.msg(player, "&cLWC check Error, Brewery was tested with up to v4.5.0 of LWC");
|
P.p.msg(player, "&cLWC check Error, Brewery was tested with up to v4.5.0 of LWC");
|
||||||
P.p.msg(player, "&cSet &7useLWC: false &cin the config and /brew reload");
|
P.p.msg(player, "&cSet &7useLWC: false &cin the config and /brew reload");
|
||||||
} else {
|
} else {
|
||||||
P.p.msg(player, "&cError breaking Barrel, please report to an Admin!");
|
P.p.msg(player, "&cError opening Barrel, please report to an Admin!");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -134,7 +165,7 @@ public class IntegrationListener implements Listener {
|
|||||||
P.p.msg(player, "&cLWC check Error, Brewery was tested with up to v4.5.0 of LWC");
|
P.p.msg(player, "&cLWC check Error, Brewery was tested with up to v4.5.0 of LWC");
|
||||||
P.p.msg(player, "&cSet &7useLWC: false &cin the config and /brew reload");
|
P.p.msg(player, "&cSet &7useLWC: false &cin the config and /brew reload");
|
||||||
} else {
|
} else {
|
||||||
P.p.msg(player, "&cError opening Barrel, please report to an Admin!");
|
P.p.msg(player, "&cError breaking Barrel, please report to an Admin!");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
|
|||||||
Reference in New Issue
Block a user