Compare commits

..

8 Commits

Author SHA1 Message Date
6e668cd862 docs 2024-03-07 18:38:03 +01:00
b51eec279f Prevent loading faraway chunks 2024-03-07 18:34:52 +01:00
1dfa3b4e66 [commit-watch] Revert 8f236a56a6 due to failing status checks
This reverts commit 8f236a56a6.
2024-02-18 10:52:52 +01:00
8f236a56a6 Update dependency org.ajoberstar.grgit to v5 2024-02-18 10:51:39 +01:00
e51121960d Back to snapshot for development
Signed-off-by: Alexander Brandes <mc.cache@web.de>
2024-02-18 09:54:06 +01:00
cc011de032 Release 7.3.5
Signed-off-by: Alexander Brandes <mc.cache@web.de>
2024-02-18 09:53:12 +01:00
28298ffdd6 return false if PLACE_VEHICLE and missing flag (#4345)
fix: return false if PLACE_VEHICLE and missing flag
2024-02-18 05:05:25 +01:00
499d3c39bc Remove static print out of legacy schematic URL (#4341)
Signed-off-by: Alexander Brandes <mc.cache@web.de>
2024-02-16 20:23:12 +01:00
6 changed files with 23 additions and 2 deletions

View File

@ -32,6 +32,7 @@ import com.plotsquared.core.plot.PlotWeather;
import com.plotsquared.core.plot.world.PlotAreaManager;
import com.plotsquared.core.util.EventDispatcher;
import com.plotsquared.core.util.MathMan;
import com.plotsquared.core.util.WorldUtil;
import com.sk89q.worldedit.bukkit.BukkitAdapter;
import com.sk89q.worldedit.extension.platform.Actor;
import com.sk89q.worldedit.world.item.ItemType;
@ -120,6 +121,9 @@ public class BukkitPlayer extends PlotPlayer<Player> {
@Override
public boolean canTeleport(final @NonNull Location location) {
if (!WorldUtil.isValidLocation(location)) {
return false;
}
final org.bukkit.Location to = BukkitUtil.adapt(location);
final org.bukkit.Location from = player.getLocation();
PlayerTeleportEvent event = new PlayerTeleportEvent(player, from, to);
@ -221,7 +225,7 @@ public class BukkitPlayer extends PlotPlayer<Player> {
@Override
public void teleport(final @NonNull Location location, final @NonNull TeleportCause cause) {
if (Math.abs(location.getX()) >= 30000000 || Math.abs(location.getZ()) >= 30000000) {
if (!WorldUtil.isValidLocation(location)) {
return;
}
final org.bukkit.Location bukkitLocation =

View File

@ -268,6 +268,7 @@ public class MainCommand extends Command {
tp = true;
} else {
player.sendMessage(TranslatableCaption.of("border.denied"));
return CompletableFuture.completedFuture(false);
}
// Trim command
args = Arrays.copyOfRange(args, 1, args.length);

View File

@ -2574,6 +2574,12 @@ public class Plot {
*/
public void teleportPlayer(final PlotPlayer<?> player, TeleportCause cause, Consumer<Boolean> resultConsumer) {
Plot plot = this.getBasePlot(false);
if (!WorldUtil.isValidLocation(plot.getBottomAbs())) {
// prevent from teleporting into unsafe regions
player.sendMessage(TranslatableCaption.of("border.denied"));
resultConsumer.accept(false);
return;
}
PlayerTeleportToPlotEvent event = this.eventDispatcher.callTeleport(player, player.getLocation(), plot, cause);
if (event.getEventResult() == Result.DENY) {

View File

@ -551,6 +551,7 @@ public class EventDispatcher {
)
);
}
return false;
}
default -> {
}

View File

@ -62,6 +62,15 @@ import java.util.zip.ZipOutputStream;
public abstract class WorldUtil {
/**
* {@return whether the given location is valid in the world}
* @param location the location to check
* @since TODO
*/
public static boolean isValidLocation(Location location) {
return Math.abs(location.getX()) < 30000000 && Math.abs(location.getZ()) < 30000000;
}
/**
* Set the biome in a region
*

View File

@ -22,7 +22,7 @@ plugins {
}
group = "com.intellectualsites.plotsquared"
version = "7.3.5-SNAPSHOT"
version = "7.3.6-SNAPSHOT"
if (!File("$rootDir/.git").exists()) {
logger.lifecycle("""