From 90be8f97631c6398454c3b1435dd70d33d24901f Mon Sep 17 00:00:00 2001 From: ChimpGamer Date: Thu, 26 Dec 2024 13:22:21 +0100 Subject: [PATCH 1/9] Added allowed-block-drops and blocked-block-drops flag. --- .../WorldGuardExtraFlagsPlugin.java | 2 ++ .../listeners/BlockListener.java | 18 ++++++++++++++++++ .../worldguardextraflags/flags/Flags.java | 3 +++ 3 files changed, 23 insertions(+) diff --git a/Spigot/src/main/java/net/goldtreeservers/worldguardextraflags/WorldGuardExtraFlagsPlugin.java b/Spigot/src/main/java/net/goldtreeservers/worldguardextraflags/WorldGuardExtraFlagsPlugin.java index 5e6e611f..21f699b2 100644 --- a/Spigot/src/main/java/net/goldtreeservers/worldguardextraflags/WorldGuardExtraFlagsPlugin.java +++ b/Spigot/src/main/java/net/goldtreeservers/worldguardextraflags/WorldGuardExtraFlagsPlugin.java @@ -86,6 +86,8 @@ public void onLoad() flagRegistry.register(Flags.CHUNK_UNLOAD); flagRegistry.register(Flags.ITEM_DURABILITY); flagRegistry.register(Flags.JOIN_LOCATION); + flagRegistry.register(Flags.ALLOWED_BLOCK_DROPS); + flagRegistry.register(Flags.BLOCKED_BLOCK_DROPS); } catch (Exception e) { diff --git a/Spigot/src/main/java/net/goldtreeservers/worldguardextraflags/listeners/BlockListener.java b/Spigot/src/main/java/net/goldtreeservers/worldguardextraflags/listeners/BlockListener.java index 97c9db73..998c29bd 100644 --- a/Spigot/src/main/java/net/goldtreeservers/worldguardextraflags/listeners/BlockListener.java +++ b/Spigot/src/main/java/net/goldtreeservers/worldguardextraflags/listeners/BlockListener.java @@ -12,6 +12,7 @@ import org.bukkit.entity.Player; import org.bukkit.event.EventHandler; import org.bukkit.event.Listener; +import org.bukkit.event.block.BlockDropItemEvent; import org.bukkit.event.block.EntityBlockFormEvent; import com.sk89q.worldguard.protection.flags.StateFlag.State; @@ -19,6 +20,8 @@ import lombok.RequiredArgsConstructor; import net.goldtreeservers.worldguardextraflags.flags.Flags; +import java.util.Set; + @RequiredArgsConstructor public class BlockListener implements Listener { @@ -54,4 +57,19 @@ public void onEntityBlockFormEvent(EntityBlockFormEvent event) } } } + + @EventHandler(ignoreCancelled = true) + public void onBlockDropItem(BlockDropItemEvent event) { + LocalPlayer localPlayer = worldGuardPlugin.wrapPlayer(event.getPlayer()); + Location location = BukkitAdapter.adapt(event.getBlock().getLocation()); + if (this.sessionManager.hasBypass(localPlayer, (World) location.getExtent())) { + return; + } + + Set allowedDrops = regionContainer.createQuery().queryValue(location, localPlayer, Flags.ALLOWED_BLOCK_DROPS); + if (!event.getItems().removeIf(item -> allowedDrops != null && !allowedDrops.contains(item.getItemStack().getType()))) { + Set blockedDrops = regionContainer.createQuery().queryValue(location, localPlayer, Flags.BLOCKED_BLOCK_DROPS); + event.getItems().removeIf(item -> blockedDrops != null && blockedDrops.contains(item.getItemStack().getType())); + } + } } diff --git a/WG/src/main/java/net/goldtreeservers/worldguardextraflags/flags/Flags.java b/WG/src/main/java/net/goldtreeservers/worldguardextraflags/flags/Flags.java index 55d33237..cab07125 100644 --- a/WG/src/main/java/net/goldtreeservers/worldguardextraflags/flags/Flags.java +++ b/WG/src/main/java/net/goldtreeservers/worldguardextraflags/flags/Flags.java @@ -61,4 +61,7 @@ public final class Flags public final static StateFlag ITEM_DURABILITY = new StateFlag("item-durability", true); public final static LocationFlag JOIN_LOCATION = new LocationFlag("join-location"); + + public final static SetFlag ALLOWED_BLOCK_DROPS = new SetFlag<>("allowed-block-drops", new MaterialFlag(null)); + public final static SetFlag BLOCKED_BLOCK_DROPS = new SetFlag<>("blocked-block-drops", new MaterialFlag(null)); } From 51d963e2472867b15411f893277b9b624fa9d319 Mon Sep 17 00:00:00 2001 From: ChimpGamer Date: Thu, 26 Dec 2024 13:24:18 +0100 Subject: [PATCH 2/9] Removed unused imports --- .../net/goldtreeservers/worldguardextraflags/flags/Flags.java | 2 -- 1 file changed, 2 deletions(-) diff --git a/WG/src/main/java/net/goldtreeservers/worldguardextraflags/flags/Flags.java b/WG/src/main/java/net/goldtreeservers/worldguardextraflags/flags/Flags.java index cab07125..7339de50 100644 --- a/WG/src/main/java/net/goldtreeservers/worldguardextraflags/flags/Flags.java +++ b/WG/src/main/java/net/goldtreeservers/worldguardextraflags/flags/Flags.java @@ -6,7 +6,6 @@ import org.bukkit.potion.PotionEffectType; import com.sk89q.worldguard.protection.flags.BooleanFlag; -import com.sk89q.worldguard.protection.flags.CommandStringFlag; import com.sk89q.worldguard.protection.flags.DoubleFlag; import com.sk89q.worldguard.protection.flags.LocationFlag; import com.sk89q.worldguard.protection.flags.SetFlag; @@ -14,7 +13,6 @@ import com.sk89q.worldguard.protection.flags.StringFlag; import net.goldtreeservers.worldguardextraflags.flags.data.SoundData; -import net.goldtreeservers.worldguardextraflags.wg.WorldGuardUtils; public final class Flags { From 884dd027c6c8433492df992cd96ab33990ad5625 Mon Sep 17 00:00:00 2001 From: ChimpGamer Date: Thu, 26 Dec 2024 13:24:23 +0100 Subject: [PATCH 3/9] Replaced statement lambda with expression lambda --- .../worldguardextraflags/WorldGuardExtraFlagsPlugin.java | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/Spigot/src/main/java/net/goldtreeservers/worldguardextraflags/WorldGuardExtraFlagsPlugin.java b/Spigot/src/main/java/net/goldtreeservers/worldguardextraflags/WorldGuardExtraFlagsPlugin.java index 21f699b2..a27ed5d6 100644 --- a/Spigot/src/main/java/net/goldtreeservers/worldguardextraflags/WorldGuardExtraFlagsPlugin.java +++ b/Spigot/src/main/java/net/goldtreeservers/worldguardextraflags/WorldGuardExtraFlagsPlugin.java @@ -203,9 +203,7 @@ private void setupMetrics() Map, Boolean> valueMap = WorldGuardExtraFlagsPlugin.FLAGS.stream().collect(Collectors.toMap(v -> v, v -> false)); WorldGuard.getInstance().getPlatform().getRegionContainer().getLoaded().forEach(m -> - { - m.getRegions().values().forEach(r -> r.getFlags().keySet().forEach(f -> valueMap.computeIfPresent(f, (k, v) -> true))); - }); + m.getRegions().values().forEach(r -> r.getFlags().keySet().forEach(f -> valueMap.computeIfPresent(f, (k, v) -> true)))); return valueMap.entrySet().stream().collect(Collectors.toMap(v -> v.getKey().getName(), v -> v.getValue() ? 1 : 0)); })); From 91fb4d932c7dfcf121edcfa2a7b3c7b7a461d658 Mon Sep 17 00:00:00 2001 From: ChimpGamer Date: Wed, 5 Mar 2025 20:49:00 +0100 Subject: [PATCH 4/9] Added allow-block-place, deny-block-place, allow-block-break and deny-block-break flags. --- .../listeners/BlockListener.java | 62 +++++++++++++++++++ .../worldguardextraflags/flags/Flags.java | 5 ++ 2 files changed, 67 insertions(+) diff --git a/Spigot/src/main/java/net/goldtreeservers/worldguardextraflags/listeners/BlockListener.java b/Spigot/src/main/java/net/goldtreeservers/worldguardextraflags/listeners/BlockListener.java index 998c29bd..8fbc4575 100644 --- a/Spigot/src/main/java/net/goldtreeservers/worldguardextraflags/listeners/BlockListener.java +++ b/Spigot/src/main/java/net/goldtreeservers/worldguardextraflags/listeners/BlockListener.java @@ -5,12 +5,18 @@ import com.sk89q.worldedit.world.World; import com.sk89q.worldguard.LocalPlayer; import com.sk89q.worldguard.bukkit.WorldGuardPlugin; +import com.sk89q.worldguard.bukkit.event.block.BreakBlockEvent; +import com.sk89q.worldguard.bukkit.event.block.PlaceBlockEvent; +import com.sk89q.worldguard.protection.ApplicableRegionSet; import com.sk89q.worldguard.protection.regions.RegionContainer; import com.sk89q.worldguard.session.SessionManager; import org.bukkit.Material; +import org.bukkit.block.Block; import org.bukkit.block.BlockState; import org.bukkit.entity.Player; +import org.bukkit.event.Event; import org.bukkit.event.EventHandler; +import org.bukkit.event.EventPriority; import org.bukkit.event.Listener; import org.bukkit.event.block.BlockDropItemEvent; import org.bukkit.event.block.EntityBlockFormEvent; @@ -72,4 +78,60 @@ public void onBlockDropItem(BlockDropItemEvent event) { event.getItems().removeIf(item -> blockedDrops != null && blockedDrops.contains(item.getItemStack().getType())); } } + + @EventHandler(priority = EventPriority.LOWEST) + public void onBlockPlaceEvent(PlaceBlockEvent event) { + Event.Result originalResult = event.getResult(); + Object cause = event.getCause().getRootCause(); + if (cause instanceof Player player) { + for (Block block : event.getBlocks()) { + Material type = block.getType(); + if (type.isAir()) { + type = event.getEffectiveMaterial(); + } + + LocalPlayer localPlayer = worldGuardPlugin.wrapPlayer(player); + Location location = BukkitAdapter.adapt(block.getLocation()); + + Set state = regionContainer.createQuery().queryValue(location, localPlayer, Flags.ALLOW_BLOCK_PLACE); + if (state != null && state.contains(type)) { + event.setResult(Event.Result.ALLOW); + } else { + Set state2 = regionContainer.createQuery().queryValue(location, localPlayer, Flags.DENY_BLOCK_PLACE); + if (state2 != null && state2.contains(type)) { + event.setResult(Event.Result.DENY); + } else { + event.setResult(originalResult); + } + return; + } + } + } + } + + @EventHandler(priority = EventPriority.LOWEST) + public void onBlockBreakEvent(BreakBlockEvent event) { + Event.Result originalResult = event.getResult(); + Object cause = event.getCause().getRootCause(); + + if (cause instanceof Player player) { + LocalPlayer localPlayer = worldGuardPlugin.wrapPlayer(player); + for (Block block : event.getBlocks()) { + Location location = BukkitAdapter.adapt(block.getLocation()); + + Set state = regionContainer.createQuery().queryValue(location, localPlayer, Flags.ALLOW_BLOCK_BREAK); + if (state != null && state.contains(block.getType())) { + event.setResult(Event.Result.ALLOW); + } else { + Set state2 = regionContainer.createQuery().queryValue(location, localPlayer, Flags.DENY_BLOCK_BREAK); + if (state2 != null && state2.contains(block.getType())) { + event.setResult(Event.Result.DENY); + } else { + event.setResult(originalResult); + } + return; + } + } + } + } } diff --git a/WG/src/main/java/net/goldtreeservers/worldguardextraflags/flags/Flags.java b/WG/src/main/java/net/goldtreeservers/worldguardextraflags/flags/Flags.java index 7339de50..e153e66f 100644 --- a/WG/src/main/java/net/goldtreeservers/worldguardextraflags/flags/Flags.java +++ b/WG/src/main/java/net/goldtreeservers/worldguardextraflags/flags/Flags.java @@ -62,4 +62,9 @@ public final class Flags public final static SetFlag ALLOWED_BLOCK_DROPS = new SetFlag<>("allowed-block-drops", new MaterialFlag(null)); public final static SetFlag BLOCKED_BLOCK_DROPS = new SetFlag<>("blocked-block-drops", new MaterialFlag(null)); + + public final static SetFlag ALLOW_BLOCK_PLACE = new SetFlag("allow-block-place", new BlockMaterialFlag(null)); + public final static SetFlag DENY_BLOCK_PLACE = new SetFlag("deny-block-place", new BlockMaterialFlag(null)); + public final static SetFlag ALLOW_BLOCK_BREAK = new SetFlag("allow-block-break", new BlockMaterialFlag(null)); + public final static SetFlag DENY_BLOCK_BREAK = new SetFlag("deny-block-break", new BlockMaterialFlag(null)); } From 7f1a2bf5a2341f5627d1b9511fbbc1335e114f80 Mon Sep 17 00:00:00 2001 From: ChimpGamer Date: Wed, 5 Mar 2025 21:02:56 +0100 Subject: [PATCH 5/9] Some code cleanup --- .../listeners/BlockListener.java | 1 - .../listeners/EntityListener.java | 47 +++++++------------ .../EntityPotionEffectEventListener.java | 3 -- .../listeners/PlayerListener.java | 1 - .../listeners/WorldListener.java | 2 - .../we/handlers/WorldEditFlagHandler.java | 1 - .../flags/helpers/ForcedStateFlag.java | 21 ++++----- .../flags/helpers/PotionEffectFlag.java | 2 +- .../wg/WorldGuardUtils.java | 9 +--- .../handlers/BlockedEffectsFlagHandler.java | 22 ++++----- .../handlers/CommandOnEntryFlagHandler.java | 6 +-- .../wg/handlers/CommandOnExitFlagHandler.java | 4 +- .../ConsoleCommandOnEntryFlagHandler.java | 4 +- .../ConsoleCommandOnExitFlagHandler.java | 2 +- .../wg/handlers/FlyFlagHandler.java | 2 +- .../wg/handlers/FlySpeedFlagHandler.java | 2 +- .../wg/handlers/GiveEffectsFlagHandler.java | 12 ++--- .../wg/handlers/GlideFlagHandler.java | 8 ++-- .../wg/handlers/GodmodeFlagHandler.java | 6 +-- .../wg/handlers/PlaySoundsFlagHandler.java | 8 ++-- .../handlers/TeleportOnEntryFlagHandler.java | 2 +- .../handlers/TeleportOnExitFlagHandler.java | 2 +- .../wg/handlers/WalkSpeedFlagHandler.java | 2 +- 23 files changed, 64 insertions(+), 105 deletions(-) diff --git a/Spigot/src/main/java/net/goldtreeservers/worldguardextraflags/listeners/BlockListener.java b/Spigot/src/main/java/net/goldtreeservers/worldguardextraflags/listeners/BlockListener.java index 8fbc4575..1c740104 100644 --- a/Spigot/src/main/java/net/goldtreeservers/worldguardextraflags/listeners/BlockListener.java +++ b/Spigot/src/main/java/net/goldtreeservers/worldguardextraflags/listeners/BlockListener.java @@ -7,7 +7,6 @@ import com.sk89q.worldguard.bukkit.WorldGuardPlugin; import com.sk89q.worldguard.bukkit.event.block.BreakBlockEvent; import com.sk89q.worldguard.bukkit.event.block.PlaceBlockEvent; -import com.sk89q.worldguard.protection.ApplicableRegionSet; import com.sk89q.worldguard.protection.regions.RegionContainer; import com.sk89q.worldguard.session.SessionManager; import org.bukkit.Material; diff --git a/Spigot/src/main/java/net/goldtreeservers/worldguardextraflags/listeners/EntityListener.java b/Spigot/src/main/java/net/goldtreeservers/worldguardextraflags/listeners/EntityListener.java index 04df148d..5f07384f 100644 --- a/Spigot/src/main/java/net/goldtreeservers/worldguardextraflags/listeners/EntityListener.java +++ b/Spigot/src/main/java/net/goldtreeservers/worldguardextraflags/listeners/EntityListener.java @@ -2,12 +2,10 @@ import com.sk89q.worldedit.bukkit.BukkitAdapter; import com.sk89q.worldguard.LocalPlayer; -import com.sk89q.worldguard.WorldGuard; import com.sk89q.worldguard.bukkit.WorldGuardPlugin; import com.sk89q.worldguard.protection.regions.RegionContainer; import com.sk89q.worldguard.session.SessionManager; import net.goldtreeservers.worldguardextraflags.flags.helpers.ForcedStateFlag; -import org.bukkit.block.Block; import org.bukkit.block.BlockState; import org.bukkit.entity.Entity; import org.bukkit.entity.Player; @@ -16,12 +14,9 @@ import org.bukkit.event.entity.EntityToggleGlideEvent; import org.bukkit.event.world.PortalCreateEvent; -import com.sk89q.worldguard.protection.ApplicableRegionSet; import com.sk89q.worldguard.protection.flags.StateFlag.State; -import lombok.Getter; import lombok.RequiredArgsConstructor; -import net.goldtreeservers.worldguardextraflags.WorldGuardExtraFlagsPlugin; import net.goldtreeservers.worldguardextraflags.flags.Flags; @RequiredArgsConstructor @@ -71,36 +66,26 @@ public void onEntityToggleGlideEvent(EntityToggleGlideEvent event) } ForcedStateFlag.ForcedState state = this.regionContainer.createQuery().queryValue(localPlayer.getLocation(), localPlayer, Flags.GLIDE); - switch(state) - { - case ALLOW: - break; - case DENY: - { - if (!event.isGliding()) - { - return; - } - - event.setCancelled(true); + switch (state) { + case DENY -> { + if (!event.isGliding()) { + return; + } - //Prevent the player from being allowed to glide by spamming space - player.teleport(player.getLocation()); + event.setCancelled(true); - break; - } - case FORCE: - { - if (event.isGliding()) - { - return; - } + //Prevent the player from being allowed to glide by spamming space + player.teleport(player.getLocation()); - event.setCancelled(true); + } + case FORCE -> { + if (event.isGliding()) { + return; + } - break; - } - } + event.setCancelled(true); + } + } } } } diff --git a/Spigot/src/main/java/net/goldtreeservers/worldguardextraflags/listeners/EntityPotionEffectEventListener.java b/Spigot/src/main/java/net/goldtreeservers/worldguardextraflags/listeners/EntityPotionEffectEventListener.java index 26cb877f..4e25d3cc 100644 --- a/Spigot/src/main/java/net/goldtreeservers/worldguardextraflags/listeners/EntityPotionEffectEventListener.java +++ b/Spigot/src/main/java/net/goldtreeservers/worldguardextraflags/listeners/EntityPotionEffectEventListener.java @@ -2,7 +2,6 @@ import com.sk89q.worldguard.bukkit.WorldGuardPlugin; import com.sk89q.worldguard.session.SessionManager; -import org.bukkit.entity.Entity; import org.bukkit.entity.Player; import org.bukkit.event.EventHandler; import org.bukkit.event.Listener; @@ -10,9 +9,7 @@ import com.sk89q.worldguard.session.Session; -import lombok.Getter; import lombok.RequiredArgsConstructor; -import net.goldtreeservers.worldguardextraflags.WorldGuardExtraFlagsPlugin; import net.goldtreeservers.worldguardextraflags.wg.handlers.GiveEffectsFlagHandler; @RequiredArgsConstructor diff --git a/Spigot/src/main/java/net/goldtreeservers/worldguardextraflags/listeners/PlayerListener.java b/Spigot/src/main/java/net/goldtreeservers/worldguardextraflags/listeners/PlayerListener.java index d721e4f8..47dbec24 100644 --- a/Spigot/src/main/java/net/goldtreeservers/worldguardextraflags/listeners/PlayerListener.java +++ b/Spigot/src/main/java/net/goldtreeservers/worldguardextraflags/listeners/PlayerListener.java @@ -23,7 +23,6 @@ import org.bukkit.inventory.meta.ItemMeta; import org.bukkit.inventory.meta.PotionMeta; import org.bukkit.potion.PotionEffect; -import org.bukkit.potion.PotionEffectType; import org.bukkit.scheduler.BukkitRunnable; import org.spigotmc.event.player.PlayerSpawnLocationEvent; diff --git a/Spigot/src/main/java/net/goldtreeservers/worldguardextraflags/listeners/WorldListener.java b/Spigot/src/main/java/net/goldtreeservers/worldguardextraflags/listeners/WorldListener.java index 1081ba25..74bc4ece 100644 --- a/Spigot/src/main/java/net/goldtreeservers/worldguardextraflags/listeners/WorldListener.java +++ b/Spigot/src/main/java/net/goldtreeservers/worldguardextraflags/listeners/WorldListener.java @@ -2,7 +2,6 @@ import com.sk89q.worldedit.bukkit.BukkitAdapter; import com.sk89q.worldedit.math.BlockVector3; -import com.sk89q.worldguard.WorldGuard; import com.sk89q.worldguard.protection.flags.StateFlag; import com.sk89q.worldguard.protection.managers.RegionManager; import com.sk89q.worldguard.protection.regions.ProtectedCuboidRegion; @@ -17,7 +16,6 @@ import org.bukkit.event.world.ChunkUnloadEvent; import org.bukkit.event.world.WorldLoadEvent; -import lombok.Getter; import lombok.RequiredArgsConstructor; import net.goldtreeservers.worldguardextraflags.WorldGuardExtraFlagsPlugin; diff --git a/Spigot/src/main/java/net/goldtreeservers/worldguardextraflags/we/handlers/WorldEditFlagHandler.java b/Spigot/src/main/java/net/goldtreeservers/worldguardextraflags/we/handlers/WorldEditFlagHandler.java index 7c8462fd..da7a092e 100644 --- a/Spigot/src/main/java/net/goldtreeservers/worldguardextraflags/we/handlers/WorldEditFlagHandler.java +++ b/Spigot/src/main/java/net/goldtreeservers/worldguardextraflags/we/handlers/WorldEditFlagHandler.java @@ -12,7 +12,6 @@ import com.sk89q.worldguard.protection.flags.StateFlag.State; import com.sk89q.worldguard.protection.managers.RegionManager; -import com.sk89q.worldguard.protection.regions.RegionContainer; import net.goldtreeservers.worldguardextraflags.flags.Flags; public class WorldEditFlagHandler extends AbstractDelegateExtent diff --git a/WG/src/main/java/net/goldtreeservers/worldguardextraflags/flags/helpers/ForcedStateFlag.java b/WG/src/main/java/net/goldtreeservers/worldguardextraflags/flags/helpers/ForcedStateFlag.java index 90763ea0..eeef2871 100644 --- a/WG/src/main/java/net/goldtreeservers/worldguardextraflags/flags/helpers/ForcedStateFlag.java +++ b/WG/src/main/java/net/goldtreeservers/worldguardextraflags/flags/helpers/ForcedStateFlag.java @@ -10,7 +10,7 @@ public class ForcedStateFlag extends Flag { - public static enum ForcedState + public enum ForcedState { ALLOW, DENY, @@ -97,18 +97,13 @@ else if (input.equalsIgnoreCase("none")) public ForcedState unmarshal(Object o) { String str = o.toString(); - - switch(str) - { - case "ALLOW": - return ForcedState.ALLOW; - case "FORCE": - return ForcedState.FORCE; - case "DENY": - return ForcedState.DENY; - default: - return null; - } + + return switch (str) { + case "ALLOW" -> ForcedState.ALLOW; + case "FORCE" -> ForcedState.FORCE; + case "DENY" -> ForcedState.DENY; + default -> null; + }; } @Override diff --git a/WG/src/main/java/net/goldtreeservers/worldguardextraflags/flags/helpers/PotionEffectFlag.java b/WG/src/main/java/net/goldtreeservers/worldguardextraflags/flags/helpers/PotionEffectFlag.java index 2d097a1f..b1bef975 100644 --- a/WG/src/main/java/net/goldtreeservers/worldguardextraflags/flags/helpers/PotionEffectFlag.java +++ b/WG/src/main/java/net/goldtreeservers/worldguardextraflags/flags/helpers/PotionEffectFlag.java @@ -24,7 +24,7 @@ public PotionEffectFlag(String name) @Override public Object marshal(PotionEffect o) { - return o.getType().getKey().toString() + " " + o.getAmplifier() + " " + o.hasParticles(); + return o.getType().getKey() + " " + o.getAmplifier() + " " + o.hasParticles(); } @Override diff --git a/WG/src/main/java/net/goldtreeservers/worldguardextraflags/wg/WorldGuardUtils.java b/WG/src/main/java/net/goldtreeservers/worldguardextraflags/wg/WorldGuardUtils.java index 19a36df0..de343135 100644 --- a/WG/src/main/java/net/goldtreeservers/worldguardextraflags/wg/WorldGuardUtils.java +++ b/WG/src/main/java/net/goldtreeservers/worldguardextraflags/wg/WorldGuardUtils.java @@ -38,11 +38,6 @@ public void run() } Set set = (Set)result.value(); - if (set.add(location)) - { - return true; - } - - return false; - } + return set.add(location); + } } diff --git a/WG/src/main/java/net/goldtreeservers/worldguardextraflags/wg/handlers/BlockedEffectsFlagHandler.java b/WG/src/main/java/net/goldtreeservers/worldguardextraflags/wg/handlers/BlockedEffectsFlagHandler.java index 59c26c3d..a7aa5bb5 100644 --- a/WG/src/main/java/net/goldtreeservers/worldguardextraflags/wg/handlers/BlockedEffectsFlagHandler.java +++ b/WG/src/main/java/net/goldtreeservers/worldguardextraflags/wg/handlers/BlockedEffectsFlagHandler.java @@ -25,11 +25,11 @@ public class BlockedEffectsFlagHandler extends FlagValueChangeHandler> { - public static final Factory FACTORY() + public static Factory FACTORY() { return new Factory(); } - + public static class Factory extends Handler.Factory { @Override @@ -38,13 +38,13 @@ public BlockedEffectsFlagHandler create(Session session) return new BlockedEffectsFlagHandler(session); } } - - private HashMap removedEffects; - + + private final HashMap removedEffects; + protected BlockedEffectsFlagHandler(Session session) { super(session, Flags.BLOCKED_EFFECTS); - + this.removedEffects = new HashMap<>(); } @@ -73,7 +73,7 @@ public void tick(LocalPlayer player, ApplicableRegionSet set) { this.handleValue(player, player.getWorld(), set.queryValue(player, Flags.BLOCKED_EFFECTS)); } - + private void handleValue(LocalPlayer player, World world, Set value) { Player bukkitPlayer = ((BukkitPlayer) player).getPlayer(); @@ -91,7 +91,7 @@ private void handleValue(LocalPlayer player, World world, Set break; } } - + if (effect != null) { this.removedEffects.put(effect.getType(), new PotionEffectDetails(System.nanoTime() + (long)(effect.getDuration() / 20D * TimeUnit.SECONDS.toNanos(1L)), effect.getAmplifier(), effect.isAmbient(), effect.hasParticles())); @@ -100,12 +100,12 @@ private void handleValue(LocalPlayer player, World world, Set } } } - + Iterator> potionEffects_ = this.removedEffects.entrySet().iterator(); while (potionEffects_.hasNext()) { Entry potionEffect = potionEffects_.next(); - + if (value == null || !value.contains(potionEffect.getKey())) { PotionEffectDetails removedEffect = potionEffect.getValue(); @@ -117,7 +117,7 @@ private void handleValue(LocalPlayer player, World world, Set bukkitPlayer.addPotionEffect(new PotionEffect(potionEffect.getKey(), timeLeft, removedEffect.getAmplifier(), removedEffect.isAmbient(), removedEffect.isParticles()), true); } } - + potionEffects_.remove(); } } diff --git a/WG/src/main/java/net/goldtreeservers/worldguardextraflags/wg/handlers/CommandOnEntryFlagHandler.java b/WG/src/main/java/net/goldtreeservers/worldguardextraflags/wg/handlers/CommandOnEntryFlagHandler.java index 8e056f0f..a08e7c35 100644 --- a/WG/src/main/java/net/goldtreeservers/worldguardextraflags/wg/handlers/CommandOnEntryFlagHandler.java +++ b/WG/src/main/java/net/goldtreeservers/worldguardextraflags/wg/handlers/CommandOnEntryFlagHandler.java @@ -20,7 +20,7 @@ public class CommandOnEntryFlagHandler extends Handler { - public static final Factory FACTORY() + public static Factory FACTORY() { return new Factory(); } @@ -52,7 +52,7 @@ public boolean onCrossBoundary(LocalPlayer player, Location from, Location to, A { for(Set commands_ : commands) { - if (!this.lastCommands.contains(commands_) && commands_.size() > 0) + if (!this.lastCommands.contains(commands_) && !commands_.isEmpty()) { for(String command : commands_) { @@ -64,7 +64,7 @@ public boolean onCrossBoundary(LocalPlayer player, Location from, Location to, A } } - this.lastCommands = new ArrayList(commands); + this.lastCommands = new ArrayList<>(commands); if (!this.lastCommands.isEmpty()) { diff --git a/WG/src/main/java/net/goldtreeservers/worldguardextraflags/wg/handlers/CommandOnExitFlagHandler.java b/WG/src/main/java/net/goldtreeservers/worldguardextraflags/wg/handlers/CommandOnExitFlagHandler.java index b7c8716b..7383bb17 100644 --- a/WG/src/main/java/net/goldtreeservers/worldguardextraflags/wg/handlers/CommandOnExitFlagHandler.java +++ b/WG/src/main/java/net/goldtreeservers/worldguardextraflags/wg/handlers/CommandOnExitFlagHandler.java @@ -19,7 +19,7 @@ public class CommandOnExitFlagHandler extends Handler { - public static final Factory FACTORY() + public static Factory FACTORY() { return new Factory(); } @@ -73,7 +73,7 @@ public boolean onCrossBoundary(LocalPlayer player, Location from, Location to, A { for (Set commands_ : lastCommands) { - if (!commands.contains(commands_) && commands_.size() > 0) + if (!commands.contains(commands_) && !commands_.isEmpty()) { for (String command : commands_) { diff --git a/WG/src/main/java/net/goldtreeservers/worldguardextraflags/wg/handlers/ConsoleCommandOnEntryFlagHandler.java b/WG/src/main/java/net/goldtreeservers/worldguardextraflags/wg/handlers/ConsoleCommandOnEntryFlagHandler.java index 6fd09dcd..21a0adb6 100644 --- a/WG/src/main/java/net/goldtreeservers/worldguardextraflags/wg/handlers/ConsoleCommandOnEntryFlagHandler.java +++ b/WG/src/main/java/net/goldtreeservers/worldguardextraflags/wg/handlers/ConsoleCommandOnEntryFlagHandler.java @@ -19,7 +19,7 @@ public class ConsoleCommandOnEntryFlagHandler extends Handler { - public static final Factory FACTORY() + public static Factory FACTORY() { return new Factory(); } @@ -63,7 +63,7 @@ public boolean onCrossBoundary(LocalPlayer player, Location from, Location to, A } } - this.lastCommands = new ArrayList(commands); + this.lastCommands = new ArrayList<>(commands); if (!this.lastCommands.isEmpty()) { diff --git a/WG/src/main/java/net/goldtreeservers/worldguardextraflags/wg/handlers/ConsoleCommandOnExitFlagHandler.java b/WG/src/main/java/net/goldtreeservers/worldguardextraflags/wg/handlers/ConsoleCommandOnExitFlagHandler.java index ce097627..5a506bab 100644 --- a/WG/src/main/java/net/goldtreeservers/worldguardextraflags/wg/handlers/ConsoleCommandOnExitFlagHandler.java +++ b/WG/src/main/java/net/goldtreeservers/worldguardextraflags/wg/handlers/ConsoleCommandOnExitFlagHandler.java @@ -20,7 +20,7 @@ public class ConsoleCommandOnExitFlagHandler extends Handler { - public static final Factory FACTORY() + public static Factory FACTORY() { return new Factory(); } diff --git a/WG/src/main/java/net/goldtreeservers/worldguardextraflags/wg/handlers/FlyFlagHandler.java b/WG/src/main/java/net/goldtreeservers/worldguardextraflags/wg/handlers/FlyFlagHandler.java index c1203272..961d15e4 100644 --- a/WG/src/main/java/net/goldtreeservers/worldguardextraflags/wg/handlers/FlyFlagHandler.java +++ b/WG/src/main/java/net/goldtreeservers/worldguardextraflags/wg/handlers/FlyFlagHandler.java @@ -19,7 +19,7 @@ public class FlyFlagHandler extends FlagValueChangeHandler { - public static final Factory FACTORY() + public static Factory FACTORY() { return new Factory(); } diff --git a/WG/src/main/java/net/goldtreeservers/worldguardextraflags/wg/handlers/FlySpeedFlagHandler.java b/WG/src/main/java/net/goldtreeservers/worldguardextraflags/wg/handlers/FlySpeedFlagHandler.java index 5e217cb7..a1a17348 100644 --- a/WG/src/main/java/net/goldtreeservers/worldguardextraflags/wg/handlers/FlySpeedFlagHandler.java +++ b/WG/src/main/java/net/goldtreeservers/worldguardextraflags/wg/handlers/FlySpeedFlagHandler.java @@ -9,7 +9,7 @@ public class FlySpeedFlagHandler extends AbstractSpeedFlagHandler { - public static final Factory FACTORY() + public static Factory FACTORY() { return new Factory(); } diff --git a/WG/src/main/java/net/goldtreeservers/worldguardextraflags/wg/handlers/GiveEffectsFlagHandler.java b/WG/src/main/java/net/goldtreeservers/worldguardextraflags/wg/handlers/GiveEffectsFlagHandler.java index ae9f014f..8ebd5cfc 100644 --- a/WG/src/main/java/net/goldtreeservers/worldguardextraflags/wg/handlers/GiveEffectsFlagHandler.java +++ b/WG/src/main/java/net/goldtreeservers/worldguardextraflags/wg/handlers/GiveEffectsFlagHandler.java @@ -9,7 +9,6 @@ import java.util.Set; import java.util.concurrent.TimeUnit; -import com.sk89q.worldedit.bukkit.BukkitAdapter; import com.sk89q.worldedit.bukkit.BukkitPlayer; import com.sk89q.worldedit.util.Location; import com.sk89q.worldedit.world.World; @@ -19,23 +18,20 @@ import com.sk89q.worldguard.session.handler.FlagValueChangeHandler; import com.sk89q.worldguard.session.handler.Handler; import org.bukkit.entity.Player; -import org.bukkit.plugin.Plugin; import org.bukkit.potion.PotionEffect; import org.bukkit.potion.PotionEffectType; import com.sk89q.worldguard.protection.ApplicableRegionSet; -import com.sk89q.worldguard.protection.regions.ProtectedRegion; import com.sk89q.worldguard.session.MoveType; import com.sk89q.worldguard.session.Session; import lombok.Getter; import net.goldtreeservers.worldguardextraflags.flags.Flags; import net.goldtreeservers.worldguardextraflags.flags.data.PotionEffectDetails; -import net.goldtreeservers.worldguardextraflags.wg.WorldGuardUtils; public class GiveEffectsFlagHandler extends FlagValueChangeHandler> { - public static final Factory FACTORY() + public static Factory FACTORY() { return new Factory(); } @@ -49,8 +45,8 @@ public GiveEffectsFlagHandler create(Session session) } } - private Map removedEffects; - private Set givenEffects; + private final Map removedEffects; + private final Set givenEffects; @Getter private boolean supressRemovePotionPacket; @@ -131,7 +127,7 @@ private void handleValue(LocalPlayer player, World world, Set valu { PotionEffectType type = effectTypes.next(); - if (value != null && value.size() > 0) + if (value != null && !value.isEmpty()) { boolean skip = false; for (PotionEffect effect : value) diff --git a/WG/src/main/java/net/goldtreeservers/worldguardextraflags/wg/handlers/GlideFlagHandler.java b/WG/src/main/java/net/goldtreeservers/worldguardextraflags/wg/handlers/GlideFlagHandler.java index 4f080e4a..e5638d74 100644 --- a/WG/src/main/java/net/goldtreeservers/worldguardextraflags/wg/handlers/GlideFlagHandler.java +++ b/WG/src/main/java/net/goldtreeservers/worldguardextraflags/wg/handlers/GlideFlagHandler.java @@ -17,7 +17,7 @@ public class GlideFlagHandler extends FlagValueChangeHandler { - public static final Factory FACTORY() + public static Factory FACTORY() { return new Factory(); } @@ -69,16 +69,16 @@ private void handleValue(LocalPlayer player, World world, ForcedState state) return; } - boolean value = (state == ForcedState.FORCE ? true : false); + boolean forceGliding = state == ForcedState.FORCE; - if (bukkitPlayer.isGliding() != value) + if (bukkitPlayer.isGliding() != forceGliding) { if (this.originalGlide == null) { this.originalGlide = bukkitPlayer.isGliding(); } - bukkitPlayer.setGliding(value); + bukkitPlayer.setGliding(forceGliding); } } else diff --git a/WG/src/main/java/net/goldtreeservers/worldguardextraflags/wg/handlers/GodmodeFlagHandler.java b/WG/src/main/java/net/goldtreeservers/worldguardextraflags/wg/handlers/GodmodeFlagHandler.java index a5a46884..7702590f 100644 --- a/WG/src/main/java/net/goldtreeservers/worldguardextraflags/wg/handlers/GodmodeFlagHandler.java +++ b/WG/src/main/java/net/goldtreeservers/worldguardextraflags/wg/handlers/GodmodeFlagHandler.java @@ -1,13 +1,9 @@ package net.goldtreeservers.worldguardextraflags.wg.handlers; -import com.sk89q.worldedit.bukkit.BukkitPlayer; import com.sk89q.worldedit.util.Location; import com.sk89q.worldguard.LocalPlayer; import com.sk89q.worldguard.session.handler.FlagValueChangeHandler; import com.sk89q.worldguard.session.handler.Handler; -import org.bukkit.Bukkit; -import org.bukkit.entity.Player; -import org.bukkit.plugin.Plugin; import com.sk89q.worldguard.protection.ApplicableRegionSet; import com.sk89q.worldguard.protection.flags.StateFlag.State; @@ -19,7 +15,7 @@ public class GodmodeFlagHandler extends FlagValueChangeHandler { - public static final Factory FACTORY() + public static Factory FACTORY() { return new Factory(); } diff --git a/WG/src/main/java/net/goldtreeservers/worldguardextraflags/wg/handlers/PlaySoundsFlagHandler.java b/WG/src/main/java/net/goldtreeservers/worldguardextraflags/wg/handlers/PlaySoundsFlagHandler.java index 80fa69b5..69dd5768 100644 --- a/WG/src/main/java/net/goldtreeservers/worldguardextraflags/wg/handlers/PlaySoundsFlagHandler.java +++ b/WG/src/main/java/net/goldtreeservers/worldguardextraflags/wg/handlers/PlaySoundsFlagHandler.java @@ -24,7 +24,7 @@ public class PlaySoundsFlagHandler extends FlagValueChangeHandler> { - public static final Factory FACTORY(Plugin plugin) + public static Factory FACTORY(Plugin plugin) { return new Factory(plugin); } @@ -46,7 +46,7 @@ public PlaySoundsFlagHandler create(Session session) } private final Plugin plugin; - private Map runnables; + private final Map runnables; protected PlaySoundsFlagHandler(Plugin plugin, Session session) { @@ -87,7 +87,7 @@ private void handleValue(LocalPlayer player, Set value) { Player bukkitPlayer = ((BukkitPlayer) player).getPlayer(); - if (value != null && value.size() > 0) + if (value != null && !value.isEmpty()) { for(SoundData sound : value) { @@ -122,7 +122,7 @@ public void cancel() { Entry runnable = runnables.next(); - if (value != null && value.size() > 0) + if (value != null && !value.isEmpty()) { boolean skip = false; for(SoundData sound : value) diff --git a/WG/src/main/java/net/goldtreeservers/worldguardextraflags/wg/handlers/TeleportOnEntryFlagHandler.java b/WG/src/main/java/net/goldtreeservers/worldguardextraflags/wg/handlers/TeleportOnEntryFlagHandler.java index 49519dfe..d176a65b 100644 --- a/WG/src/main/java/net/goldtreeservers/worldguardextraflags/wg/handlers/TeleportOnEntryFlagHandler.java +++ b/WG/src/main/java/net/goldtreeservers/worldguardextraflags/wg/handlers/TeleportOnEntryFlagHandler.java @@ -17,7 +17,7 @@ public class TeleportOnEntryFlagHandler extends FlagValueChangeHandler { - public static final Factory FACTORY(Plugin plugin) + public static Factory FACTORY(Plugin plugin) { return new Factory(plugin); } diff --git a/WG/src/main/java/net/goldtreeservers/worldguardextraflags/wg/handlers/TeleportOnExitFlagHandler.java b/WG/src/main/java/net/goldtreeservers/worldguardextraflags/wg/handlers/TeleportOnExitFlagHandler.java index bab8abe9..d77de109 100644 --- a/WG/src/main/java/net/goldtreeservers/worldguardextraflags/wg/handlers/TeleportOnExitFlagHandler.java +++ b/WG/src/main/java/net/goldtreeservers/worldguardextraflags/wg/handlers/TeleportOnExitFlagHandler.java @@ -17,7 +17,7 @@ public class TeleportOnExitFlagHandler extends FlagValueChangeHandler { - public static final Factory FACTORY(Plugin plugin) + public static Factory FACTORY(Plugin plugin) { return new Factory(plugin); } diff --git a/WG/src/main/java/net/goldtreeservers/worldguardextraflags/wg/handlers/WalkSpeedFlagHandler.java b/WG/src/main/java/net/goldtreeservers/worldguardextraflags/wg/handlers/WalkSpeedFlagHandler.java index 67d74625..b6a41fe4 100644 --- a/WG/src/main/java/net/goldtreeservers/worldguardextraflags/wg/handlers/WalkSpeedFlagHandler.java +++ b/WG/src/main/java/net/goldtreeservers/worldguardextraflags/wg/handlers/WalkSpeedFlagHandler.java @@ -9,7 +9,7 @@ public class WalkSpeedFlagHandler extends AbstractSpeedFlagHandler { - public static final Factory FACTORY() + public static Factory FACTORY() { return new Factory(); } From 83507c28c0aff3db8333559ae0d52bf2a54b27e5 Mon Sep 17 00:00:00 2001 From: ChimpGamer Date: Sun, 16 Mar 2025 15:26:54 +0100 Subject: [PATCH 6/9] Forgot to actually register the allow-block-place, deny-block-place, allow-block-break and deny-block-break flags. --- .../worldguardextraflags/WorldGuardExtraFlagsPlugin.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/Spigot/src/main/java/net/goldtreeservers/worldguardextraflags/WorldGuardExtraFlagsPlugin.java b/Spigot/src/main/java/net/goldtreeservers/worldguardextraflags/WorldGuardExtraFlagsPlugin.java index a27ed5d6..e3d431eb 100644 --- a/Spigot/src/main/java/net/goldtreeservers/worldguardextraflags/WorldGuardExtraFlagsPlugin.java +++ b/Spigot/src/main/java/net/goldtreeservers/worldguardextraflags/WorldGuardExtraFlagsPlugin.java @@ -88,6 +88,10 @@ public void onLoad() flagRegistry.register(Flags.JOIN_LOCATION); flagRegistry.register(Flags.ALLOWED_BLOCK_DROPS); flagRegistry.register(Flags.BLOCKED_BLOCK_DROPS); + flagRegistry.register(Flags.ALLOW_BLOCK_PLACE); + flagRegistry.register(Flags.DENY_BLOCK_PLACE); + flagRegistry.register(Flags.ALLOW_BLOCK_BREAK); + flagRegistry.register(Flags.DENY_BLOCK_BREAK); } catch (Exception e) { From 1002872a411cfc486e1c66d5089c029c41ad22c8 Mon Sep 17 00:00:00 2001 From: ChimpGamer Date: Sun, 16 Mar 2025 15:27:49 +0100 Subject: [PATCH 7/9] Code cleanup --- .../listeners/BlockListener.java | 2 +- .../worldguardextraflags/flags/Flags.java | 22 +++++++++---------- 2 files changed, 12 insertions(+), 12 deletions(-) diff --git a/Spigot/src/main/java/net/goldtreeservers/worldguardextraflags/listeners/BlockListener.java b/Spigot/src/main/java/net/goldtreeservers/worldguardextraflags/listeners/BlockListener.java index 1c740104..4af2bd39 100644 --- a/Spigot/src/main/java/net/goldtreeservers/worldguardextraflags/listeners/BlockListener.java +++ b/Spigot/src/main/java/net/goldtreeservers/worldguardextraflags/listeners/BlockListener.java @@ -83,13 +83,13 @@ public void onBlockPlaceEvent(PlaceBlockEvent event) { Event.Result originalResult = event.getResult(); Object cause = event.getCause().getRootCause(); if (cause instanceof Player player) { + LocalPlayer localPlayer = worldGuardPlugin.wrapPlayer(player); for (Block block : event.getBlocks()) { Material type = block.getType(); if (type.isAir()) { type = event.getEffectiveMaterial(); } - LocalPlayer localPlayer = worldGuardPlugin.wrapPlayer(player); Location location = BukkitAdapter.adapt(block.getLocation()); Set state = regionContainer.createQuery().queryValue(location, localPlayer, Flags.ALLOW_BLOCK_PLACE); diff --git a/WG/src/main/java/net/goldtreeservers/worldguardextraflags/flags/Flags.java b/WG/src/main/java/net/goldtreeservers/worldguardextraflags/flags/Flags.java index e153e66f..9a06c05d 100644 --- a/WG/src/main/java/net/goldtreeservers/worldguardextraflags/flags/Flags.java +++ b/WG/src/main/java/net/goldtreeservers/worldguardextraflags/flags/Flags.java @@ -19,11 +19,11 @@ public final class Flags public final static LocationFlag TELEPORT_ON_ENTRY = new LocationFlag("teleport-on-entry"); public final static LocationFlag TELEPORT_ON_EXIT = new LocationFlag("teleport-on-exit"); - public final static SetFlag COMMAND_ON_ENTRY = new CustomSetFlag("command-on-entry", new CommandStringCaseSensitiveFlag(null)); - public final static SetFlag COMMAND_ON_EXIT = new CustomSetFlag("command-on-exit", new CommandStringCaseSensitiveFlag(null)); + public final static SetFlag COMMAND_ON_ENTRY = new CustomSetFlag<>("command-on-entry", new CommandStringCaseSensitiveFlag(null)); + public final static SetFlag COMMAND_ON_EXIT = new CustomSetFlag<>("command-on-exit", new CommandStringCaseSensitiveFlag(null)); - public final static SetFlag CONSOLE_COMMAND_ON_ENTRY = new CustomSetFlag("console-command-on-entry", new CommandStringCaseSensitiveFlag(null)); - public final static SetFlag CONSOLE_COMMAND_ON_EXIT = new CustomSetFlag("console-command-on-exit", new CommandStringCaseSensitiveFlag(null)); + public final static SetFlag CONSOLE_COMMAND_ON_ENTRY = new CustomSetFlag<>("console-command-on-entry", new CommandStringCaseSensitiveFlag(null)); + public final static SetFlag CONSOLE_COMMAND_ON_EXIT = new CustomSetFlag<>("console-command-on-exit", new CommandStringCaseSensitiveFlag(null)); public final static DoubleFlag WALK_SPEED = new DoubleFlag("walk-speed"); public final static DoubleFlag FLY_SPEED = new DoubleFlag("fly-speed"); @@ -34,7 +34,7 @@ public final class Flags public final static StringFlag CHAT_PREFIX = new StringFlag("chat-prefix"); public final static StringFlag CHAT_SUFFIX = new StringFlag("chat-suffix"); - public final static SetFlag BLOCKED_EFFECTS = new SetFlag("blocked-effects", new PotionEffectTypeFlag(null)); + public final static SetFlag BLOCKED_EFFECTS = new SetFlag<>("blocked-effects", new PotionEffectTypeFlag(null)); public final static StateFlag GODMODE = new StateFlag("godmode", false); @@ -42,11 +42,11 @@ public final class Flags public final static StateFlag WORLDEDIT = new StateFlag("worldedit", true); - public final static SetFlag GIVE_EFFECTS = new SetFlag("give-effects", new PotionEffectFlag(null)); + public final static SetFlag GIVE_EFFECTS = new SetFlag<>("give-effects", new PotionEffectFlag(null)); public final static StateFlag FLY = new StateFlag("fly", false); - public final static SetFlag PLAY_SOUNDS = new SetFlag("play-sounds", new SoundDataFlag(null)); + public final static SetFlag PLAY_SOUNDS = new SetFlag<>("play-sounds", new SoundDataFlag(null)); public final static StateFlag FROSTWALKER = new StateFlag("frostwalker", true); @@ -63,8 +63,8 @@ public final class Flags public final static SetFlag ALLOWED_BLOCK_DROPS = new SetFlag<>("allowed-block-drops", new MaterialFlag(null)); public final static SetFlag BLOCKED_BLOCK_DROPS = new SetFlag<>("blocked-block-drops", new MaterialFlag(null)); - public final static SetFlag ALLOW_BLOCK_PLACE = new SetFlag("allow-block-place", new BlockMaterialFlag(null)); - public final static SetFlag DENY_BLOCK_PLACE = new SetFlag("deny-block-place", new BlockMaterialFlag(null)); - public final static SetFlag ALLOW_BLOCK_BREAK = new SetFlag("allow-block-break", new BlockMaterialFlag(null)); - public final static SetFlag DENY_BLOCK_BREAK = new SetFlag("deny-block-break", new BlockMaterialFlag(null)); + public final static SetFlag ALLOW_BLOCK_PLACE = new SetFlag<>("allow-block-place", new BlockMaterialFlag(null)); + public final static SetFlag DENY_BLOCK_PLACE = new SetFlag<>("deny-block-place", new BlockMaterialFlag(null)); + public final static SetFlag ALLOW_BLOCK_BREAK = new SetFlag<>("allow-block-break", new BlockMaterialFlag(null)); + public final static SetFlag DENY_BLOCK_BREAK = new SetFlag<>("deny-block-break", new BlockMaterialFlag(null)); } From 57e842118c8e779cea5b5efd05fc5024ca7bc0d2 Mon Sep 17 00:00:00 2001 From: ChimpGamer <19960733+ChimpGamer@users.noreply.github.com> Date: Tue, 23 Dec 2025 11:07:17 +0100 Subject: [PATCH 8/9] Bump ProtocolLib version to 5.3.0 to fix compiling --- Spigot/pom.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Spigot/pom.xml b/Spigot/pom.xml index 71e32f58..c968452c 100644 --- a/Spigot/pom.xml +++ b/Spigot/pom.xml @@ -59,7 +59,7 @@ dmulloy2-repo - https://repo.dmulloy2.net/nexus/repository/public/ + https://repo.dmulloy2.net/repository/public/ CodeMC @@ -108,7 +108,7 @@ com.comphenix.protocol ProtocolLib - 4.5.0 + 5.3.0 provided From 0be58d8fd5aba0087b39b71bed3cf0b7f4648648 Mon Sep 17 00:00:00 2001 From: ChimpGamer <19960733+ChimpGamer@users.noreply.github.com> Date: Tue, 23 Dec 2025 11:09:39 +0100 Subject: [PATCH 9/9] Changed jar name to include version --- Spigot/pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Spigot/pom.xml b/Spigot/pom.xml index c968452c..cdf4c7d7 100644 --- a/Spigot/pom.xml +++ b/Spigot/pom.xml @@ -12,7 +12,7 @@ Spigot - WorldGuardExtraFlags + WorldGuardExtraFlags-v${project.version} org.apache.maven.plugins