Fix getSelection for polygonal regions

This commit is contained in:
Eric 2019-05-31 12:03:42 +02:00
parent abcc32bea0
commit b62cd8fe12
4 changed files with 20 additions and 20 deletions

View File

@ -2,6 +2,7 @@ package org.codemc.worldguardwrapper.implementation.legacy.region;
import com.sk89q.worldedit.BlockVector;
import com.sk89q.worldguard.protection.flags.Flag;
import com.sk89q.worldguard.protection.regions.ProtectedPolygonalRegion;
import com.sk89q.worldguard.protection.regions.ProtectedRegion;
import lombok.AllArgsConstructor;
import lombok.Getter;
@ -30,9 +31,8 @@ public class WrappedRegion implements IWrappedRegion {
@Override
public ISelection getSelection() {
if (handle instanceof IPolygonalSelection) {
if (handle instanceof ProtectedPolygonalRegion) {
return new IPolygonalSelection() {
@Override
public Set<Location> getPoints() {
return handle.getPoints().stream()
@ -43,17 +43,17 @@ public class WrappedRegion implements IWrappedRegion {
@Override
public int getMinimumY() {
return ((IPolygonalSelection) handle).getMinimumY();
return handle.getMinimumPoint().getBlockY();
}
@Override
public int getMaximumY() {
return ((IPolygonalSelection) handle).getMaximumY();
return handle.getMaximumPoint().getBlockY();
}
};
}
return new ICuboidSelection() {
return new ICuboidSelection() {
@Override
public Location getMinimumPoint() {
return WorldGuardVectorUtilities.fromBlockVector(world, handle.getMinimumPoint());

View File

@ -2,6 +2,7 @@ package org.codemc.worldguardwrapper.implementation.v6.region;
import com.sk89q.worldedit.BlockVector;
import com.sk89q.worldguard.protection.flags.Flag;
import com.sk89q.worldguard.protection.regions.ProtectedPolygonalRegion;
import com.sk89q.worldguard.protection.regions.ProtectedRegion;
import lombok.AllArgsConstructor;
import lombok.Getter;
@ -30,9 +31,8 @@ public class WrappedRegion implements IWrappedRegion {
@Override
public ISelection getSelection() {
if (handle instanceof IPolygonalSelection) {
if (handle instanceof ProtectedPolygonalRegion) {
return new IPolygonalSelection() {
@Override
public Set<Location> getPoints() {
return handle.getPoints().stream()
@ -43,17 +43,17 @@ public class WrappedRegion implements IWrappedRegion {
@Override
public int getMinimumY() {
return ((IPolygonalSelection) handle).getMinimumY();
return handle.getMinimumPoint().getBlockY();
}
@Override
public int getMaximumY() {
return ((IPolygonalSelection) handle).getMaximumY();
return handle.getMaximumPoint().getBlockY();
}
};
}
return new ICuboidSelection() {
return new ICuboidSelection() {
@Override
public Location getMinimumPoint() {
return WorldGuardVectorUtilities.fromBlockVector(world, handle.getMinimumPoint());

View File

@ -3,6 +3,7 @@ package org.codemc.worldguardwrapper.implementation.v7.region;
import com.sk89q.worldedit.bukkit.BukkitAdapter;
import com.sk89q.worldedit.math.BlockVector2;
import com.sk89q.worldguard.protection.flags.Flag;
import com.sk89q.worldguard.protection.regions.ProtectedPolygonalRegion;
import com.sk89q.worldguard.protection.regions.ProtectedRegion;
import lombok.AllArgsConstructor;
import lombok.Getter;
@ -30,9 +31,8 @@ public class WrappedRegion implements IWrappedRegion {
@Override
public ISelection getSelection() {
if (handle instanceof IPolygonalSelection) {
if (handle instanceof ProtectedPolygonalRegion) {
return new IPolygonalSelection() {
@Override
public Set<Location> getPoints() {
return handle.getPoints().stream()
@ -43,17 +43,17 @@ public class WrappedRegion implements IWrappedRegion {
@Override
public int getMinimumY() {
return ((IPolygonalSelection) handle).getMinimumY();
return handle.getMinimumPoint().getBlockY();
}
@Override
public int getMaximumY() {
return ((IPolygonalSelection) handle).getMaximumY();
return handle.getMaximumPoint().getBlockY();
}
};
}
return new ICuboidSelection() {
return new ICuboidSelection() {
@Override
public Location getMinimumPoint() {
return BukkitAdapter.adapt(world, handle.getMinimumPoint());

View File

@ -2,6 +2,7 @@ package org.codemc.worldguardwrapper.implementation.v7fawe.region;
import com.sk89q.worldedit.bukkit.BukkitAdapter;
import com.sk89q.worldguard.protection.flags.Flag;
import com.sk89q.worldguard.protection.regions.ProtectedPolygonalRegion;
import com.sk89q.worldguard.protection.regions.ProtectedRegion;
import lombok.AllArgsConstructor;
import lombok.Getter;
@ -30,9 +31,8 @@ public class WrappedRegion implements IWrappedRegion {
@Override
public ISelection getSelection() {
if (handle instanceof IPolygonalSelection) {
if (handle instanceof ProtectedPolygonalRegion) {
return new IPolygonalSelection() {
@Override
public Set<Location> getPoints() {
return handle.getPoints().stream()
@ -43,17 +43,17 @@ public class WrappedRegion implements IWrappedRegion {
@Override
public int getMinimumY() {
return ((IPolygonalSelection) handle).getMinimumY();
return handle.getMinimumPoint().getBlockY();
}
@Override
public int getMaximumY() {
return ((IPolygonalSelection) handle).getMaximumY();
return handle.getMaximumPoint().getBlockY();
}
};
}
return new ICuboidSelection() {
return new ICuboidSelection() {
@Override
public Location getMinimumPoint() {
return BukkitAdapter.adapt(world, handle.getMinimumPoint());