3
0
Mirror von https://github.com/IntellectualSites/FastAsyncWorldEdit.git synchronisiert 2024-12-27 03:12:37 +01:00

fix: correctly process chunks when using worldguard region blacklists (#2789)

- fixes #2399
Dieser Commit ist enthalten in:
Jordan 2024-06-21 08:49:09 +02:00 committet von GitHub
Ursprung 705df34c12
Commit 4fe9c6bd74
Es konnte kein GPG-Schlüssel zu dieser Signatur gefunden werden
GPG-Schlüssel-ID: B5690EEEBB952194
3 geänderte Dateien mit 6 neuen und 2 gelöschten Zeilen

Datei anzeigen

@ -1,5 +1,6 @@
package com.fastasyncworldedit.bukkit.regions; package com.fastasyncworldedit.bukkit.regions;
import com.fastasyncworldedit.core.configuration.Settings;
import com.fastasyncworldedit.core.regions.FaweMask; import com.fastasyncworldedit.core.regions.FaweMask;
import com.fastasyncworldedit.core.regions.RegionWrapper; import com.fastasyncworldedit.core.regions.RegionWrapper;
import com.sk89q.worldedit.bukkit.BukkitAdapter; import com.sk89q.worldedit.bukkit.BukkitAdapter;
@ -158,6 +159,9 @@ public class WorldGuardFeature extends BukkitMaskManager implements Listener {
@Override @Override
public FaweMask getMask(com.sk89q.worldedit.entity.Player wePlayer, MaskType type, boolean isWhitelist) { public FaweMask getMask(com.sk89q.worldedit.entity.Player wePlayer, MaskType type, boolean isWhitelist) {
if (isWhitelist && Settings.settings().REGION_RESTRICTIONS_OPTIONS.WORLDGUARD_REGION_BLACKLIST) {
return new FaweMask(RegionWrapper.GLOBAL());
}
final Player player = BukkitAdapter.adapt(wePlayer); final Player player = BukkitAdapter.adapt(wePlayer);
final LocalPlayer localplayer = this.worldguard.wrapPlayer(player); final LocalPlayer localplayer = this.worldguard.wrapPlayer(player);
final Location location = player.getLocation(); final Location location = player.getLocation();

Datei anzeigen

@ -482,7 +482,7 @@ public interface Region extends Iterable<BlockVector3>, Cloneable, IBatchProcess
} }
return set; return set;
} else { } else {
return null; return set;
} }
} }

Datei anzeigen

@ -205,7 +205,7 @@ public class RegionIntersection extends AbstractRegion {
BlockVector3 regMin = region.getMinimumPoint(); BlockVector3 regMin = region.getMinimumPoint();
BlockVector3 regMax = region.getMaximumPoint(); BlockVector3 regMax = region.getMaximumPoint();
if (tx >= regMin.x() && bx <= regMax.x() && tz >= regMin.z() && bz <= regMax.z()) { if (tx >= regMin.x() && bx <= regMax.x() && tz >= regMin.z() && bz <= regMax.z()) {
return region.processSet(chunk, get, set, true); set = region.processSet(chunk, get, set, true);
} }
} }
return set; // default return set as no "blacklist" regions contained the chunk return set; // default return set as no "blacklist" regions contained the chunk