Fixed AsyncWorldEdit plugin exception

This commit is contained in:
isokissa3 2018-11-30 20:08:43 +02:00
parent e87f92fbe3
commit 56e6dc83a0
8 changed files with 34 additions and 16 deletions

View file

@ -3,7 +3,7 @@
<parent>
<groupId>net.goldtreeservers</groupId>
<artifactId>worldguardextraflags</artifactId>
<version>4.1.1</version>
<version>4.1.2-DEV</version>
</parent>
<groupId>net.goldtreeservers.worldguardextraflags</groupId>

View file

@ -3,7 +3,7 @@
<parent>
<groupId>net.goldtreeservers</groupId>
<artifactId>worldguardextraflags</artifactId>
<version>4.1.1</version>
<version>4.1.2-DEV</version>
</parent>
<groupId>net.goldtreeservers.worldguardextraflags</groupId>

View file

@ -3,7 +3,7 @@
<parent>
<groupId>net.goldtreeservers</groupId>
<artifactId>worldguardextraflags</artifactId>
<version>4.1.1</version>
<version>4.1.2-DEV</version>
</parent>
<groupId>net.goldtreeservers.worldguardextraflags</groupId>

View file

@ -3,7 +3,7 @@
<parent>
<groupId>net.goldtreeservers</groupId>
<artifactId>worldguardextraflags</artifactId>
<version>4.1.1</version>
<version>4.1.2-DEV</version>
</parent>
<groupId>net.goldtreeservers.worldguardextraflags</groupId>

View file

@ -19,25 +19,31 @@ import net.goldtreeservers.worldguardextraflags.wg.WorldGuardUtils;
public class WorldEditFlagHandler extends AbstractDelegateExtent
{
protected final World world;
protected final org.bukkit.World world;
protected final org.bukkit.entity.Player player;
protected WorldEditFlagHandler(World world, Extent extent, Player player)
{
super(extent);
this.world = world;
if (world instanceof BukkitWorld)
{
this.world = ((BukkitWorld)world).getWorld();
}
else
{
this.world = Bukkit.getWorld(world.getName());
}
this.player = Bukkit.getPlayer(player.getUniqueId());
}
@Override
public boolean setBlock(Vector location, BaseBlock block) throws WorldEditException
{
org.bukkit.World world = ((BukkitWorld)this.world).getWorld();
ApplicableRegionSet regions = WorldGuardPlugin.inst().getRegionContainer().get(world).getApplicableRegions(location);
ApplicableRegionSet regions = WorldGuardPlugin.inst().getRegionContainer().get(this.world).getApplicableRegions(location);
State state = WorldGuardUtils.queryState(this.player, world, regions.getRegions(), Flags.WORLDEDIT);
State state = WorldGuardUtils.queryState(this.player, this.world, regions.getRegions(), Flags.WORLDEDIT);
if (state != State.DENY)
{
return super.setBlock(location, block);

View file

@ -3,7 +3,7 @@
<parent>
<groupId>net.goldtreeservers</groupId>
<artifactId>worldguardextraflags</artifactId>
<version>4.1.1</version>
<version>4.1.2-DEV</version>
</parent>
<groupId>net.goldtreeservers.worldguardextraflags</groupId>

View file

@ -19,23 +19,35 @@ import net.goldtreeservers.worldguardextraflags.wg.WorldGuardUtils;
public class WorldEditFlagHandler extends AbstractDelegateExtent
{
protected final World world;
protected final World weWorld;
protected final org.bukkit.World world;
protected final org.bukkit.entity.Player player;
public WorldEditFlagHandler(World world, Extent extent, Player player)
{
super(extent);
this.weWorld = world;
this.world = world;
if (world instanceof BukkitWorld)
{
this.world = ((BukkitWorld)world).getWorld();
}
else
{
this.world = Bukkit.getWorld(world.getName());
}
this.player = Bukkit.getPlayer(player.getUniqueId());
}
@Override
public boolean setBlock(BlockVector3 location, BlockStateHolder block) throws WorldEditException
{
ApplicableRegionSet regions = WorldGuard.getInstance().getPlatform().getRegionContainer().get(this.world).getApplicableRegions(location);
ApplicableRegionSet regions = WorldGuard.getInstance().getPlatform().getRegionContainer().get(this.weWorld).getApplicableRegions(location);
State state = WorldGuardUtils.queryState(this.player, ((BukkitWorld)this.world).getWorld(), regions.getRegions(), Flags.WORLDEDIT);
State state = WorldGuardUtils.queryState(this.player, this.world, regions.getRegions(), Flags.WORLDEDIT);
if (state != State.DENY)
{
return super.setBlock(location, block);

View file

@ -4,7 +4,7 @@
<groupId>net.goldtreeservers</groupId>
<artifactId>worldguardextraflags</artifactId>
<name>WorldGuardExtraFlags</name>
<version>4.1.1</version>
<version>4.1.2-DEV</version>
<packaging>pom</packaging>