diff --git a/api/pom.xml b/api/pom.xml
index 92d2062..1930f1a 100644
--- a/api/pom.xml
+++ b/api/pom.xml
@@ -7,7 +7,7 @@
org.codemc.worldguardwrapper
worldguardwrapper-parent
- 1.1.6-SNAPSHOT
+ 1.1.7-SNAPSHOT
worldguardwrapper-api
diff --git a/implementation/legacy/pom.xml b/implementation/legacy/pom.xml
index cdb8dd7..ecfb0c3 100644
--- a/implementation/legacy/pom.xml
+++ b/implementation/legacy/pom.xml
@@ -7,7 +7,7 @@
org.codemc.worldguardwrapper
worldguardwrapper-implementation
- 1.1.6-SNAPSHOT
+ 1.1.7-SNAPSHOT
worldguardwrapper-implementation-legacy
@@ -28,7 +28,7 @@
${project.groupId}
worldguardwrapper-api
- 1.1.6-SNAPSHOT
+ 1.1.7-SNAPSHOT
provided
diff --git a/implementation/pom.xml b/implementation/pom.xml
index 509b48e..ba2e6d6 100644
--- a/implementation/pom.xml
+++ b/implementation/pom.xml
@@ -7,7 +7,7 @@
org.codemc.worldguardwrapper
worldguardwrapper-parent
- 1.1.6-SNAPSHOT
+ 1.1.7-SNAPSHOT
worldguardwrapper-implementation
@@ -17,9 +17,6 @@
legacy
v6
v7
-
WorldGuardWrapper-Implementation
diff --git a/implementation/v6/pom.xml b/implementation/v6/pom.xml
index 0ee5342..c442c6d 100644
--- a/implementation/v6/pom.xml
+++ b/implementation/v6/pom.xml
@@ -7,7 +7,7 @@
org.codemc.worldguardwrapper
worldguardwrapper-implementation
- 1.1.6-SNAPSHOT
+ 1.1.7-SNAPSHOT
worldguardwrapper-implementation-v6
@@ -28,7 +28,7 @@
${project.groupId}
worldguardwrapper-api
- 1.1.6-SNAPSHOT
+ 1.1.7-SNAPSHOT
provided
diff --git a/implementation/v7/pom.xml b/implementation/v7/pom.xml
index 394442e..2a02f51 100644
--- a/implementation/v7/pom.xml
+++ b/implementation/v7/pom.xml
@@ -7,7 +7,7 @@
org.codemc.worldguardwrapper
worldguardwrapper-implementation
- 1.1.6-SNAPSHOT
+ 1.1.7-SNAPSHOT
worldguardwrapper-implementation-v7
@@ -16,8 +16,8 @@
- sk89q-repo
- http://maven.sk89q.com/repo/
+ enginehub-repo
+ https://maven.enginehub.org/repo/
always
@@ -28,13 +28,13 @@
${project.groupId}
worldguardwrapper-api
- 1.1.6-SNAPSHOT
+ 1.1.7-SNAPSHOT
provided
com.sk89q.worldguard
- worldguard-legacy
- 7.0.0-SNAPSHOT
+ worldguard-bukkit
+ 7.0.3-SNAPSHOT
provided
diff --git a/implementation/v7fawe/pom.xml b/implementation/v7fawe/pom.xml
deleted file mode 100644
index 1c8a0e8..0000000
--- a/implementation/v7fawe/pom.xml
+++ /dev/null
@@ -1,66 +0,0 @@
-
-
- 4.0.0
-
-
- org.codemc.worldguardwrapper
- worldguardwrapper-implementation
- 1.1.4-SNAPSHOT
-
-
- worldguardwrapper-implementation-v7-fawe
-
- WorldGuardWrapper-Implementation-V7-FAWE
-
-
-
- fawe-repo
- http://ci.athion.net/job/FAWE-1.13/ws/mvn/
-
- always
-
-
-
- worldguard-repo
- http://ci.athion.net/job/FAWE-WorldGuard-1.13/ws/mvn/
-
- always
-
-
-
-
-
-
- ${project.groupId}
- worldguardwrapper-api
- 1.1.4-SNAPSHOT
- provided
-
-
- com.boydti
- fawe-api
- latest
- provided
-
-
- com.boydti
- fawe-bukkit
- latest
- provided
-
-
- com.sk89q
- worldguard-core
- latest
- provided
-
-
- com.sk89q
- worldguard-legacy
- latest
- provided
-
-
-
diff --git a/implementation/v7fawe/src/main/java/org/codemc/worldguardwrapper/implementation/v7fawe/WorldGuardImplementation.java b/implementation/v7fawe/src/main/java/org/codemc/worldguardwrapper/implementation/v7fawe/WorldGuardImplementation.java
deleted file mode 100644
index 278d35c..0000000
--- a/implementation/v7fawe/src/main/java/org/codemc/worldguardwrapper/implementation/v7fawe/WorldGuardImplementation.java
+++ /dev/null
@@ -1,196 +0,0 @@
-package org.codemc.worldguardwrapper.implementation.v7fawe;
-
-import com.sk89q.worldedit.BlockVector;
-import com.sk89q.worldedit.BlockVector2D;
-import com.sk89q.worldedit.bukkit.BukkitAdapter;
-import com.sk89q.worldedit.bukkit.BukkitWorld;
-import com.sk89q.worldguard.LocalPlayer;
-import com.sk89q.worldguard.WorldGuard;
-import com.sk89q.worldguard.bukkit.WorldGuardPlugin;
-import com.sk89q.worldguard.protection.ApplicableRegionSet;
-import com.sk89q.worldguard.protection.flags.*;
-import com.sk89q.worldguard.protection.flags.registry.FlagConflictException;
-import com.sk89q.worldguard.protection.flags.registry.FlagRegistry;
-import com.sk89q.worldguard.protection.managers.RegionManager;
-import com.sk89q.worldguard.protection.regions.ProtectedCuboidRegion;
-import com.sk89q.worldguard.protection.regions.ProtectedPolygonalRegion;
-import com.sk89q.worldguard.protection.regions.ProtectedRegion;
-import lombok.NoArgsConstructor;
-import lombok.NonNull;
-import org.bukkit.Location;
-import org.bukkit.World;
-import org.bukkit.entity.Player;
-import org.bukkit.plugin.java.JavaPlugin;
-import org.bukkit.util.Vector;
-import org.codemc.worldguardwrapper.flag.IWrappedFlag;
-import org.codemc.worldguardwrapper.flag.WrappedState;
-import org.codemc.worldguardwrapper.implementation.IWorldGuardImplementation;
-import org.codemc.worldguardwrapper.implementation.v7fawe.flag.AbstractWrappedFlag;
-import org.codemc.worldguardwrapper.implementation.v7fawe.region.WrappedRegion;
-import org.codemc.worldguardwrapper.implementation.v7fawe.utility.WorldGuardFlagUtilities;
-import org.codemc.worldguardwrapper.region.IWrappedRegion;
-
-import java.util.*;
-import java.util.stream.Collectors;
-
-@NoArgsConstructor
-public class WorldGuardImplementation implements IWorldGuardImplementation {
-
- private final WorldGuard core = WorldGuard.getInstance();
- private final FlagRegistry flagRegistry = core.getFlagRegistry();
- private final WorldGuardPlugin plugin = WorldGuardPlugin.inst();
-
- public static BlockVector asBlockVector(@NonNull Location location) {
- return new BlockVector(BukkitAdapter.asVector(location));
- }
-
- private Optional wrapPlayer(Player player) {
- return Optional.ofNullable(player).map(bukkitPlayer -> plugin.wrapPlayer(player));
- }
-
- private Optional getWorldManager(@NonNull World world) {
- return Optional.ofNullable(core.getPlatform().getRegionContainer().get(BukkitAdapter.adapt(world)));
- }
-
- private Optional getApplicableRegions(@NonNull Location location) {
- return getWorldManager(location.getWorld()).map(manager -> manager.getApplicableRegions(asBlockVector(location)));
- }
-
- private Optional getApplicableRegions(@NonNull Location minimum, @NonNull Location maximum) {
- return getWorldManager(minimum.getWorld()).map(manager -> manager.getApplicableRegions(
- new ProtectedCuboidRegion("temp", asBlockVector(minimum), asBlockVector(maximum))));
- }
-
- private Optional queryValue(Player player, @NonNull Location location, @NonNull Flag flag) {
- return getApplicableRegions(location).map(applicableRegions -> applicableRegions.queryValue(wrapPlayer(player)
- .orElse(null), flag));
- }
-
- @Override
- public JavaPlugin getWorldGuardPlugin() {
- return WorldGuardPlugin.inst();
- }
-
- @Override
- public int getApiVersion() {
- return 7;
- }
-
- @Override
- public Optional> getFlag(String name, Class type) {
- return Optional.ofNullable(flagRegistry.get(name))
- .map(flag -> WorldGuardFlagUtilities.wrap(flag, type));
- }
-
- @Override
- public Optional queryFlag(Player player, Location location, IWrappedFlag flag) {
- AbstractWrappedFlag wrappedFlag = (AbstractWrappedFlag) flag;
- return queryValue(player, location, wrappedFlag.getHandle()).flatMap(value -> wrappedFlag.fromWGValue(value));
- }
-
- @SuppressWarnings("unchecked")
- @Override
- public Optional> registerFlag(String name, Class type, T defaultValue) {
- final Flag> flag;
- if (type.equals(WrappedState.class)) {
- flag = new StateFlag(name, defaultValue == WrappedState.ALLOW);
- } else if (type.equals(Boolean.class) || type.equals(boolean.class)) {
- flag = new BooleanFlag(name);
- } else if (type.equals(Double.class) || type.equals(double.class)) {
- flag = new DoubleFlag(name);
- } else if (type.equals(Enum.class)) {
- flag = new EnumFlag(name, type);
- } else if (type.equals(Integer.class) || type.equals(int.class)) {
- flag = new IntegerFlag(name);
- } else if (type.equals(Location.class)) {
- flag = new LocationFlag(name);
- } else if (type.equals(String.class)) {
- flag = new StringFlag(name, (String) defaultValue);
- } else if (type.equals(Vector.class)) {
- flag = new VectorFlag(name);
- } else {
- throw new IllegalArgumentException("Unsupported flag type " + type.getName());
- }
- try {
- flagRegistry.register(flag);
- return Optional.of(WorldGuardFlagUtilities.wrap(flag, type));
- } catch (FlagConflictException ignored) {
- }
- return Optional.empty();
- }
-
- @Override
- public Optional getRegion(World world, String id) {
- return getWorldManager(world)
- .map(regionManager -> regionManager.getRegion(id))
- .map(region -> new WrappedRegion(world, region));
- }
-
- @Override
- public Map getRegions(World world) {
- RegionManager regionManager = core.getPlatform().getRegionContainer().get(new BukkitWorld(world));
- if (regionManager == null) {
- return Collections.emptyMap();
- }
-
- Map regions = regionManager.getRegions();
- Map map = new HashMap<>();
- regions.forEach((name, region) -> map.put(name, new WrappedRegion(world, region)));
- return map;
- }
-
- @Override
- public Set getRegions(Location location) {
- ApplicableRegionSet regionSet = getApplicableRegions(location).orElse(null);
- if (regionSet == null) {
- return Collections.emptySet();
- }
-
- return regionSet.getRegions().stream()
- .map(region -> new WrappedRegion(location.getWorld(), region))
- .collect(Collectors.toSet());
- }
-
- @Override
- public Set getRegions(Location minimum, Location maximum) {
- ApplicableRegionSet regionSet = getApplicableRegions(minimum, maximum).orElse(null);
- if (regionSet == null) {
- return Collections.emptySet();
- }
-
- return regionSet.getRegions().stream()
- .map(region -> new WrappedRegion(minimum.getWorld(), region))
- .collect(Collectors.toSet());
- }
-
- @Override
- public Optional addRegion(String id, List points, int minY, int maxY) {
- ProtectedRegion region;
- World world = points.get(0).getWorld();
- if (points.size() == 2) {
- region = new ProtectedCuboidRegion(id, asBlockVector(points.get(0)),
- asBlockVector(points.get(1)));
- } else {
- List vectorPoints = points.stream()
- .map(location -> asBlockVector(location).toBlockVector2D())
- .collect(Collectors.toList());
-
- region = new ProtectedPolygonalRegion(id, vectorPoints, minY, maxY);
- }
-
- Optional manager = getWorldManager(world);
- if (manager.isPresent()) {
- manager.get().addRegion(region);
- return Optional.of(new WrappedRegion(world, region));
- } else {
- return Optional.empty();
- }
- }
-
- @Override
- public Optional> removeRegion(World world, String id) {
- Optional> set = getWorldManager(world).map(manager -> manager.removeRegion(id));
- return set.map(protectedRegions -> protectedRegions.stream()
- .map(region -> new WrappedRegion(world, region)).collect(Collectors.toSet()));
- }
-}
diff --git a/implementation/v7fawe/src/main/java/org/codemc/worldguardwrapper/implementation/v7fawe/event/EventListener.java b/implementation/v7fawe/src/main/java/org/codemc/worldguardwrapper/implementation/v7fawe/event/EventListener.java
deleted file mode 100644
index 71f52b2..0000000
--- a/implementation/v7fawe/src/main/java/org/codemc/worldguardwrapper/implementation/v7fawe/event/EventListener.java
+++ /dev/null
@@ -1,100 +0,0 @@
-package org.codemc.worldguardwrapper.implementation.v7fawe.event;
-
-import com.sk89q.worldguard.bukkit.event.block.UseBlockEvent;
-import com.sk89q.worldguard.bukkit.event.entity.DamageEntityEvent;
-import com.sk89q.worldguard.bukkit.event.entity.UseEntityEvent;
-import com.sk89q.worldguard.bukkit.protection.events.DisallowedPVPEvent;
-import lombok.NoArgsConstructor;
-import org.bukkit.Bukkit;
-import org.bukkit.entity.Player;
-import org.bukkit.event.Event.Result;
-import org.bukkit.event.EventHandler;
-import org.bukkit.event.EventPriority;
-import org.bukkit.event.Listener;
-import org.codemc.worldguardwrapper.event.*;
-
-@NoArgsConstructor
-public class EventListener implements Listener {
-
- @EventHandler(priority = EventPriority.LOW)
- public void onUseBlock(UseBlockEvent worldGuardEvent) {
- Player player = worldGuardEvent.getCause().getFirstPlayer();
- if (player == null) {
- // Only forward player events for now
- return;
- }
-
- AbstractWrappedEvent event = new WrappedUseBlockEvent(
- worldGuardEvent.getOriginalEvent(),
- player, worldGuardEvent.getWorld(),
- worldGuardEvent.getBlocks(),
- worldGuardEvent.getEffectiveMaterial());
- Bukkit.getServer().getPluginManager().callEvent(event);
-
- if (event.getResult() != Result.DEFAULT) {
- // DEFAULT = Result probably has not been touched by the handler,
- // so don't touch the original result either.
- worldGuardEvent.setResult(event.getResult());
- }
- }
-
- @EventHandler(priority = EventPriority.LOW)
- public void onUseEntity(UseEntityEvent worldGuardEvent) {
- Player player = worldGuardEvent.getCause().getFirstPlayer();
- if (player == null) {
- // Only forward player events for now
- return;
- }
-
- AbstractWrappedEvent event = new WrappedUseEntityEvent(
- worldGuardEvent.getOriginalEvent(),
- player,
- worldGuardEvent.getTarget(),
- worldGuardEvent.getEntity());
- Bukkit.getServer().getPluginManager().callEvent(event);
-
- if (event.getResult() != Result.DEFAULT) {
- // DEFAULT = Result probably has not been touched by the handler,
- // so don't touch the original result either.
- worldGuardEvent.setResult(event.getResult());
- }
- }
-
- @EventHandler(priority = EventPriority.LOW)
- public void onDamageEntity(DamageEntityEvent worldGuardEvent) {
- Player player = worldGuardEvent.getCause().getFirstPlayer();
- if (player == null) {
- // Only forward player events for now
- return;
- }
-
- AbstractWrappedEvent event = new WrappedDamageEntityEvent(
- worldGuardEvent.getOriginalEvent(),
- player,
- worldGuardEvent.getTarget(),
- worldGuardEvent.getEntity());
- Bukkit.getServer().getPluginManager().callEvent(event);
-
- if (event.getResult() != Result.DEFAULT) {
- // DEFAULT = Result probably has not been touched by the handler,
- // so don't touch the original result either.
- worldGuardEvent.setResult(event.getResult());
- }
- }
-
- @EventHandler(priority = EventPriority.LOW)
- public void onDisallowedPVP(DisallowedPVPEvent worldGuardEvent) {
- AbstractWrappedEvent event = new WrappedDisallowedPVPEvent(
- worldGuardEvent.getAttacker(),
- worldGuardEvent.getDefender(),
- worldGuardEvent.getCause());
- Bukkit.getServer().getPluginManager().callEvent(event);
-
- if (event.getResult() != Result.DEFAULT) {
- // DEFAULT = Result probably has not been touched by the handler,
- // so don't touch the original result either.
- worldGuardEvent.setCancelled(event.getResult() == Result.DENY);
- }
- }
-
-}
diff --git a/implementation/v7fawe/src/main/java/org/codemc/worldguardwrapper/implementation/v7fawe/flag/AbstractWrappedFlag.java b/implementation/v7fawe/src/main/java/org/codemc/worldguardwrapper/implementation/v7fawe/flag/AbstractWrappedFlag.java
deleted file mode 100644
index 7b819c4..0000000
--- a/implementation/v7fawe/src/main/java/org/codemc/worldguardwrapper/implementation/v7fawe/flag/AbstractWrappedFlag.java
+++ /dev/null
@@ -1,30 +0,0 @@
-package org.codemc.worldguardwrapper.implementation.v7fawe.flag;
-
-import com.sk89q.worldguard.protection.flags.Flag;
-import lombok.AllArgsConstructor;
-import lombok.Getter;
-import org.codemc.worldguardwrapper.flag.IWrappedFlag;
-
-import java.util.Optional;
-
-@AllArgsConstructor
-@Getter
-public abstract class AbstractWrappedFlag implements IWrappedFlag {
-
- private final Flag> handle;
-
- @Override
- public String getName() {
- return handle.getName();
- }
-
- public abstract Optional fromWGValue(Object value);
-
- public abstract Optional