mirror of
https://github.com/IntellectualSites/PlotSquared.git
synced 2025-08-25 15:25:34 +02:00
Compare commits
2 Commits
fix/v7/unn
...
fix/v7/com
Author | SHA1 | Date | |
---|---|---|---|
![]() |
534414d240 | ||
![]() |
c7f96e3a78 |
@@ -600,7 +600,7 @@ public class PlayerEventListener implements Listener {
|
|||||||
PlotArea area = location.getPlotArea();
|
PlotArea area = location.getPlotArea();
|
||||||
if (area == null) {
|
if (area == null) {
|
||||||
if (lastPlot != null) {
|
if (lastPlot != null) {
|
||||||
plotListener.plotExit(pp, lastPlot, null, null);
|
plotListener.plotExit(pp, lastPlot);
|
||||||
lastPlotAccess.remove();
|
lastPlotAccess.remove();
|
||||||
}
|
}
|
||||||
try (final MetaDataAccess<Location> lastLocationAccess =
|
try (final MetaDataAccess<Location> lastLocationAccess =
|
||||||
@@ -753,7 +753,7 @@ public class PlayerEventListener implements Listener {
|
|||||||
if (now == null) {
|
if (now == null) {
|
||||||
try (final MetaDataAccess<Boolean> kickAccess =
|
try (final MetaDataAccess<Boolean> kickAccess =
|
||||||
pp.accessTemporaryMetaData(PlayerMetaDataKeys.TEMPORARY_KICK)) {
|
pp.accessTemporaryMetaData(PlayerMetaDataKeys.TEMPORARY_KICK)) {
|
||||||
if (lastPlot != null && !plotListener.plotExit(pp, lastPlot, now, area) && this.tmpTeleport && !kickAccess.get().orElse(
|
if (lastPlot != null && !plotListener.plotExit(pp, lastPlot) && this.tmpTeleport && !kickAccess.get().orElse(
|
||||||
false)) {
|
false)) {
|
||||||
pp.sendMessage(
|
pp.sendMessage(
|
||||||
TranslatableCaption.of("permission.no_permission_event"),
|
TranslatableCaption.of("permission.no_permission_event"),
|
||||||
@@ -847,7 +847,7 @@ public class PlayerEventListener implements Listener {
|
|||||||
if (plot == null) {
|
if (plot == null) {
|
||||||
try (final MetaDataAccess<Boolean> kickAccess =
|
try (final MetaDataAccess<Boolean> kickAccess =
|
||||||
pp.accessTemporaryMetaData(PlayerMetaDataKeys.TEMPORARY_KICK)) {
|
pp.accessTemporaryMetaData(PlayerMetaDataKeys.TEMPORARY_KICK)) {
|
||||||
if (lastPlot != null && !plotListener.plotExit(pp, lastPlot, null, area) && this.tmpTeleport && !kickAccess.get().orElse(
|
if (lastPlot != null && !plotListener.plotExit(pp, lastPlot) && this.tmpTeleport && !kickAccess.get().orElse(
|
||||||
false)) {
|
false)) {
|
||||||
pp.sendMessage(
|
pp.sendMessage(
|
||||||
TranslatableCaption.of("permission.no_permission_event"),
|
TranslatableCaption.of("permission.no_permission_event"),
|
||||||
|
@@ -21,7 +21,6 @@ package com.plotsquared.core.command;
|
|||||||
import com.plotsquared.core.PlotSquared;
|
import com.plotsquared.core.PlotSquared;
|
||||||
import com.plotsquared.core.configuration.Settings;
|
import com.plotsquared.core.configuration.Settings;
|
||||||
import com.plotsquared.core.configuration.caption.TranslatableCaption;
|
import com.plotsquared.core.configuration.caption.TranslatableCaption;
|
||||||
import com.plotsquared.core.location.Location;
|
|
||||||
import com.plotsquared.core.permissions.Permission;
|
import com.plotsquared.core.permissions.Permission;
|
||||||
import com.plotsquared.core.player.PlotPlayer;
|
import com.plotsquared.core.player.PlotPlayer;
|
||||||
import com.plotsquared.core.plot.Plot;
|
import com.plotsquared.core.plot.Plot;
|
||||||
@@ -58,8 +57,7 @@ public class Alias extends SubCommand {
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
Location location = player.getLocation();
|
Plot plot = player.getCurrentPlot();
|
||||||
Plot plot = location.getPlotAbs();
|
|
||||||
if (plot == null) {
|
if (plot == null) {
|
||||||
player.sendMessage(TranslatableCaption.of("errors.not_in_plot"));
|
player.sendMessage(TranslatableCaption.of("errors.not_in_plot"));
|
||||||
return false;
|
return false;
|
||||||
|
@@ -20,6 +20,7 @@ package com.plotsquared.core.command;
|
|||||||
|
|
||||||
import com.google.inject.Inject;
|
import com.google.inject.Inject;
|
||||||
import com.plotsquared.core.PlotSquared;
|
import com.plotsquared.core.PlotSquared;
|
||||||
|
import com.plotsquared.core.configuration.Settings;
|
||||||
import com.plotsquared.core.configuration.caption.TranslatableCaption;
|
import com.plotsquared.core.configuration.caption.TranslatableCaption;
|
||||||
import com.plotsquared.core.events.PlayerBuyPlotEvent;
|
import com.plotsquared.core.events.PlayerBuyPlotEvent;
|
||||||
import com.plotsquared.core.events.Result;
|
import com.plotsquared.core.events.Result;
|
||||||
@@ -84,8 +85,9 @@ public class Buy extends Command {
|
|||||||
checkTrue(plot.hasOwner(), TranslatableCaption.of("info.plot_unowned"));
|
checkTrue(plot.hasOwner(), TranslatableCaption.of("info.plot_unowned"));
|
||||||
checkTrue(!plot.isOwner(player.getUUID()), TranslatableCaption.of("economy.cannot_buy_own"));
|
checkTrue(!plot.isOwner(player.getUUID()), TranslatableCaption.of("economy.cannot_buy_own"));
|
||||||
Set<Plot> plots = plot.getConnectedPlots();
|
Set<Plot> plots = plot.getConnectedPlots();
|
||||||
|
int plotCount = Settings.Limit.GLOBAL ? player.getPlotCount() : player.getPlotCount(plot.getWorldName());
|
||||||
checkTrue(
|
checkTrue(
|
||||||
player.getPlotCount() + plots.size() <= player.getAllowedPlots(),
|
plotCount + plots.size() <= player.getAllowedPlots(),
|
||||||
TranslatableCaption.of("permission.cant_claim_more_plots"),
|
TranslatableCaption.of("permission.cant_claim_more_plots"),
|
||||||
TagResolver.resolver("amount", Tag.inserting(Component.text(player.getAllowedPlots())))
|
TagResolver.resolver("amount", Tag.inserting(Component.text(player.getAllowedPlots())))
|
||||||
);
|
);
|
||||||
|
@@ -26,7 +26,6 @@ import com.plotsquared.core.events.PlayerClaimPlotEvent;
|
|||||||
import com.plotsquared.core.events.PlotMergeEvent;
|
import com.plotsquared.core.events.PlotMergeEvent;
|
||||||
import com.plotsquared.core.events.Result;
|
import com.plotsquared.core.events.Result;
|
||||||
import com.plotsquared.core.location.Direction;
|
import com.plotsquared.core.location.Direction;
|
||||||
import com.plotsquared.core.location.Location;
|
|
||||||
import com.plotsquared.core.permissions.Permission;
|
import com.plotsquared.core.permissions.Permission;
|
||||||
import com.plotsquared.core.player.MetaDataAccess;
|
import com.plotsquared.core.player.MetaDataAccess;
|
||||||
import com.plotsquared.core.player.PlayerMetaDataKeys;
|
import com.plotsquared.core.player.PlayerMetaDataKeys;
|
||||||
@@ -72,8 +71,7 @@ public class Claim extends SubCommand {
|
|||||||
if (args.length >= 1) {
|
if (args.length >= 1) {
|
||||||
schematic = args[0];
|
schematic = args[0];
|
||||||
}
|
}
|
||||||
Location location = player.getLocation();
|
Plot plot = player.getCurrentPlot();
|
||||||
Plot plot = location.getPlotAbs();
|
|
||||||
if (plot == null) {
|
if (plot == null) {
|
||||||
player.sendMessage(TranslatableCaption.of("errors.not_in_plot"));
|
player.sendMessage(TranslatableCaption.of("errors.not_in_plot"));
|
||||||
return false;
|
return false;
|
||||||
@@ -90,7 +88,7 @@ public class Claim extends SubCommand {
|
|||||||
boolean force = event.getEventResult() == Result.FORCE;
|
boolean force = event.getEventResult() == Result.FORCE;
|
||||||
int currentPlots = Settings.Limit.GLOBAL ?
|
int currentPlots = Settings.Limit.GLOBAL ?
|
||||||
player.getPlotCount() :
|
player.getPlotCount() :
|
||||||
player.getPlotCount(location.getWorldName());
|
player.getPlotCount(plot.getWorldName());
|
||||||
|
|
||||||
final PlotArea area = plot.getArea();
|
final PlotArea area = plot.getArea();
|
||||||
|
|
||||||
|
@@ -68,8 +68,8 @@ public class Continue extends SubCommand {
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
int size = plot.getConnectedPlots().size();
|
int size = plot.getConnectedPlots().size();
|
||||||
if (!Settings.Done.COUNTS_TOWARDS_LIMIT && (player.getAllowedPlots()
|
int plotCount = Settings.Limit.GLOBAL ? player.getPlotCount() : player.getPlotCount(plot.getWorldName());
|
||||||
< player.getPlotCount() + size)) {
|
if (!Settings.Done.COUNTS_TOWARDS_LIMIT && (player.getAllowedPlots() < plotCount + size)) {
|
||||||
player.sendMessage(
|
player.sendMessage(
|
||||||
TranslatableCaption.of("permission.cant_claim_more_plots"),
|
TranslatableCaption.of("permission.cant_claim_more_plots"),
|
||||||
TagResolver.resolver("amount", Tag.inserting(Component.text(player.getAllowedPlots())))
|
TagResolver.resolver("amount", Tag.inserting(Component.text(player.getAllowedPlots())))
|
||||||
|
@@ -19,7 +19,6 @@
|
|||||||
package com.plotsquared.core.command;
|
package com.plotsquared.core.command;
|
||||||
|
|
||||||
import com.plotsquared.core.configuration.caption.TranslatableCaption;
|
import com.plotsquared.core.configuration.caption.TranslatableCaption;
|
||||||
import com.plotsquared.core.location.Location;
|
|
||||||
import com.plotsquared.core.permissions.Permission;
|
import com.plotsquared.core.permissions.Permission;
|
||||||
import com.plotsquared.core.player.PlotPlayer;
|
import com.plotsquared.core.player.PlotPlayer;
|
||||||
import com.plotsquared.core.plot.Plot;
|
import com.plotsquared.core.plot.Plot;
|
||||||
@@ -37,8 +36,7 @@ public class Copy extends SubCommand {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean onCommand(final PlotPlayer<?> player, String[] args) {
|
public boolean onCommand(final PlotPlayer<?> player, String[] args) {
|
||||||
Location location = player.getLocation();
|
Plot plot1 = player.getCurrentPlot();
|
||||||
Plot plot1 = location.getPlotAbs();
|
|
||||||
if (plot1 == null) {
|
if (plot1 == null) {
|
||||||
player.sendMessage(TranslatableCaption.of("errors.not_in_plot"));
|
player.sendMessage(TranslatableCaption.of("errors.not_in_plot"));
|
||||||
return false;
|
return false;
|
||||||
|
@@ -22,7 +22,6 @@ import com.google.inject.Inject;
|
|||||||
import com.plotsquared.core.configuration.caption.TranslatableCaption;
|
import com.plotsquared.core.configuration.caption.TranslatableCaption;
|
||||||
import com.plotsquared.core.generator.HybridPlotWorld;
|
import com.plotsquared.core.generator.HybridPlotWorld;
|
||||||
import com.plotsquared.core.generator.HybridUtils;
|
import com.plotsquared.core.generator.HybridUtils;
|
||||||
import com.plotsquared.core.location.Location;
|
|
||||||
import com.plotsquared.core.player.PlotPlayer;
|
import com.plotsquared.core.player.PlotPlayer;
|
||||||
import com.plotsquared.core.plot.Plot;
|
import com.plotsquared.core.plot.Plot;
|
||||||
import net.kyori.adventure.text.Component;
|
import net.kyori.adventure.text.Component;
|
||||||
@@ -47,8 +46,7 @@ public class CreateRoadSchematic extends SubCommand {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean onCommand(PlotPlayer<?> player, String[] args) {
|
public boolean onCommand(PlotPlayer<?> player, String[] args) {
|
||||||
Location location = player.getLocation();
|
Plot plot = player.getCurrentPlot();
|
||||||
Plot plot = location.getPlotAbs();
|
|
||||||
if (plot == null) {
|
if (plot == null) {
|
||||||
player.sendMessage(TranslatableCaption.of("errors.not_in_plot"));
|
player.sendMessage(TranslatableCaption.of("errors.not_in_plot"));
|
||||||
return false;
|
return false;
|
||||||
@@ -57,7 +55,7 @@ public class CreateRoadSchematic extends SubCommand {
|
|||||||
player.sendMessage(TranslatableCaption.of("schematics.schematic_too_large"));
|
player.sendMessage(TranslatableCaption.of("schematics.schematic_too_large"));
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
if (!(location.getPlotArea() instanceof HybridPlotWorld)) {
|
if (!(plot.getArea() instanceof HybridPlotWorld)) {
|
||||||
player.sendMessage(TranslatableCaption.of("errors.not_in_plot_world"));
|
player.sendMessage(TranslatableCaption.of("errors.not_in_plot_world"));
|
||||||
}
|
}
|
||||||
this.hybridUtils.setupRoadSchematic(plot);
|
this.hybridUtils.setupRoadSchematic(plot);
|
||||||
|
@@ -22,7 +22,6 @@ import com.google.inject.Inject;
|
|||||||
import com.plotsquared.core.configuration.caption.TranslatableCaption;
|
import com.plotsquared.core.configuration.caption.TranslatableCaption;
|
||||||
import com.plotsquared.core.generator.HybridPlotManager;
|
import com.plotsquared.core.generator.HybridPlotManager;
|
||||||
import com.plotsquared.core.generator.HybridUtils;
|
import com.plotsquared.core.generator.HybridUtils;
|
||||||
import com.plotsquared.core.location.Location;
|
|
||||||
import com.plotsquared.core.player.PlotPlayer;
|
import com.plotsquared.core.player.PlotPlayer;
|
||||||
import com.plotsquared.core.plot.Plot;
|
import com.plotsquared.core.plot.Plot;
|
||||||
import com.plotsquared.core.plot.PlotArea;
|
import com.plotsquared.core.plot.PlotArea;
|
||||||
@@ -57,8 +56,7 @@ public class DebugRoadRegen extends SubCommand {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean onCommand(PlotPlayer<?> player, String[] args) {
|
public boolean onCommand(PlotPlayer<?> player, String[] args) {
|
||||||
Location location = player.getLocation();
|
Plot plot = player.getCurrentPlot();
|
||||||
Plot plot = location.getPlotAbs();
|
|
||||||
if (args.length < 1) {
|
if (args.length < 1) {
|
||||||
player.sendMessage(
|
player.sendMessage(
|
||||||
TranslatableCaption.of("commandconfig.command_syntax"),
|
TranslatableCaption.of("commandconfig.command_syntax"),
|
||||||
@@ -92,8 +90,7 @@ public class DebugRoadRegen extends SubCommand {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public boolean regenPlot(PlotPlayer<?> player) {
|
public boolean regenPlot(PlotPlayer<?> player) {
|
||||||
Location location = player.getLocation();
|
PlotArea area = player.getCurrentPlot().getArea();
|
||||||
PlotArea area = location.getPlotArea();
|
|
||||||
if (area == null) {
|
if (area == null) {
|
||||||
player.sendMessage(TranslatableCaption.of("errors.not_in_plot_world"));
|
player.sendMessage(TranslatableCaption.of("errors.not_in_plot_world"));
|
||||||
return false;
|
return false;
|
||||||
@@ -148,8 +145,7 @@ public class DebugRoadRegen extends SubCommand {
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
Location location = player.getLocation();
|
PlotArea area = player.getCurrentPlot().getArea();
|
||||||
PlotArea area = location.getPlotArea();
|
|
||||||
if (area == null) {
|
if (area == null) {
|
||||||
player.sendMessage(TranslatableCaption.of("errors.not_in_plot_world"));
|
player.sendMessage(TranslatableCaption.of("errors.not_in_plot_world"));
|
||||||
}
|
}
|
||||||
|
@@ -23,7 +23,6 @@ import com.plotsquared.core.configuration.Settings;
|
|||||||
import com.plotsquared.core.configuration.caption.TranslatableCaption;
|
import com.plotsquared.core.configuration.caption.TranslatableCaption;
|
||||||
import com.plotsquared.core.events.Result;
|
import com.plotsquared.core.events.Result;
|
||||||
import com.plotsquared.core.events.TeleportCause;
|
import com.plotsquared.core.events.TeleportCause;
|
||||||
import com.plotsquared.core.location.Location;
|
|
||||||
import com.plotsquared.core.permissions.Permission;
|
import com.plotsquared.core.permissions.Permission;
|
||||||
import com.plotsquared.core.player.PlotPlayer;
|
import com.plotsquared.core.player.PlotPlayer;
|
||||||
import com.plotsquared.core.plot.Plot;
|
import com.plotsquared.core.plot.Plot;
|
||||||
@@ -61,8 +60,7 @@ public class Delete extends SubCommand {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean onCommand(final PlotPlayer<?> player, String[] args) {
|
public boolean onCommand(final PlotPlayer<?> player, String[] args) {
|
||||||
Location location = player.getLocation();
|
final Plot plot = player.getCurrentPlot();
|
||||||
final Plot plot = location.getPlotAbs();
|
|
||||||
if (plot == null) {
|
if (plot == null) {
|
||||||
player.sendMessage(TranslatableCaption.of("errors.not_in_plot"));
|
player.sendMessage(TranslatableCaption.of("errors.not_in_plot"));
|
||||||
return false;
|
return false;
|
||||||
@@ -92,7 +90,7 @@ public class Delete extends SubCommand {
|
|||||||
final java.util.Set<Plot> plots = plot.getConnectedPlots();
|
final java.util.Set<Plot> plots = plot.getConnectedPlots();
|
||||||
final int currentPlots = Settings.Limit.GLOBAL ?
|
final int currentPlots = Settings.Limit.GLOBAL ?
|
||||||
player.getPlotCount() :
|
player.getPlotCount() :
|
||||||
player.getPlotCount(location.getWorldName());
|
player.getPlotCount(plot.getWorldName());
|
||||||
Runnable run = () -> {
|
Runnable run = () -> {
|
||||||
if (plot.getRunning() > 0) {
|
if (plot.getRunning() > 0) {
|
||||||
player.sendMessage(TranslatableCaption.of("errors.wait_for_timer"));
|
player.sendMessage(TranslatableCaption.of("errors.wait_for_timer"));
|
||||||
|
@@ -70,8 +70,7 @@ public class Deny extends SubCommand {
|
|||||||
@Override
|
@Override
|
||||||
public boolean onCommand(PlotPlayer<?> player, String[] args) {
|
public boolean onCommand(PlotPlayer<?> player, String[] args) {
|
||||||
|
|
||||||
Location location = player.getLocation();
|
final Plot plot = player.getCurrentPlot();
|
||||||
final Plot plot = location.getPlotAbs();
|
|
||||||
if (plot == null) {
|
if (plot == null) {
|
||||||
player.sendMessage(TranslatableCaption.of("errors.not_in_plot"));
|
player.sendMessage(TranslatableCaption.of("errors.not_in_plot"));
|
||||||
return false;
|
return false;
|
||||||
|
@@ -26,7 +26,6 @@ import com.plotsquared.core.events.PlotDoneEvent;
|
|||||||
import com.plotsquared.core.events.PlotFlagAddEvent;
|
import com.plotsquared.core.events.PlotFlagAddEvent;
|
||||||
import com.plotsquared.core.events.Result;
|
import com.plotsquared.core.events.Result;
|
||||||
import com.plotsquared.core.generator.HybridUtils;
|
import com.plotsquared.core.generator.HybridUtils;
|
||||||
import com.plotsquared.core.location.Location;
|
|
||||||
import com.plotsquared.core.permissions.Permission;
|
import com.plotsquared.core.permissions.Permission;
|
||||||
import com.plotsquared.core.player.PlotPlayer;
|
import com.plotsquared.core.player.PlotPlayer;
|
||||||
import com.plotsquared.core.plot.Plot;
|
import com.plotsquared.core.plot.Plot;
|
||||||
@@ -61,8 +60,7 @@ public class Done extends SubCommand {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean onCommand(final PlotPlayer<?> player, String[] args) {
|
public boolean onCommand(final PlotPlayer<?> player, String[] args) {
|
||||||
Location location = player.getLocation();
|
final Plot plot = player.getCurrentPlot();
|
||||||
final Plot plot = location.getPlotAbs();
|
|
||||||
if ((plot == null) || !plot.hasOwner()) {
|
if ((plot == null) || !plot.hasOwner()) {
|
||||||
player.sendMessage(TranslatableCaption.of("errors.not_in_plot"));
|
player.sendMessage(TranslatableCaption.of("errors.not_in_plot"));
|
||||||
return false;
|
return false;
|
||||||
|
@@ -73,7 +73,7 @@ public class Download extends SubCommand {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean onCommand(final PlotPlayer<?> player, String[] args) {
|
public boolean onCommand(final PlotPlayer<?> player, String[] args) {
|
||||||
String world = player.getLocation().getWorldName();
|
String world = player.getCurrentPlot().getWorldName();
|
||||||
if (!this.plotAreaManager.hasPlotArea(world)) {
|
if (!this.plotAreaManager.hasPlotArea(world)) {
|
||||||
player.sendMessage(TranslatableCaption.of("errors.not_in_plot_world"));
|
player.sendMessage(TranslatableCaption.of("errors.not_in_plot_world"));
|
||||||
return false;
|
return false;
|
||||||
|
@@ -27,7 +27,6 @@ import com.plotsquared.core.configuration.caption.TranslatableCaption;
|
|||||||
import com.plotsquared.core.events.PlotFlagAddEvent;
|
import com.plotsquared.core.events.PlotFlagAddEvent;
|
||||||
import com.plotsquared.core.events.PlotFlagRemoveEvent;
|
import com.plotsquared.core.events.PlotFlagRemoveEvent;
|
||||||
import com.plotsquared.core.events.Result;
|
import com.plotsquared.core.events.Result;
|
||||||
import com.plotsquared.core.location.Location;
|
|
||||||
import com.plotsquared.core.permissions.Permission;
|
import com.plotsquared.core.permissions.Permission;
|
||||||
import com.plotsquared.core.player.PlotPlayer;
|
import com.plotsquared.core.player.PlotPlayer;
|
||||||
import com.plotsquared.core.plot.Plot;
|
import com.plotsquared.core.plot.Plot;
|
||||||
@@ -179,8 +178,7 @@ public final class FlagCommand extends Command {
|
|||||||
* @return {@code true} if the player is allowed to modify the flags at their current location
|
* @return {@code true} if the player is allowed to modify the flags at their current location
|
||||||
*/
|
*/
|
||||||
private static boolean checkRequirements(final @NonNull PlotPlayer<?> player) {
|
private static boolean checkRequirements(final @NonNull PlotPlayer<?> player) {
|
||||||
final Location location = player.getLocation();
|
final Plot plot = player.getCurrentPlot();
|
||||||
final Plot plot = location.getPlotAbs();
|
|
||||||
if (plot == null) {
|
if (plot == null) {
|
||||||
player.sendMessage(TranslatableCaption.of("errors.not_in_plot"));
|
player.sendMessage(TranslatableCaption.of("errors.not_in_plot"));
|
||||||
return false;
|
return false;
|
||||||
@@ -344,7 +342,7 @@ public final class FlagCommand extends Command {
|
|||||||
if (plotFlag == null) {
|
if (plotFlag == null) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
Plot plot = player.getLocation().getPlotAbs();
|
Plot plot = player.getCurrentPlot();
|
||||||
PlotFlagAddEvent event = eventDispatcher.callFlagAdd(plotFlag, plot);
|
PlotFlagAddEvent event = eventDispatcher.callFlagAdd(plotFlag, plot);
|
||||||
if (event.getEventResult() == Result.DENY) {
|
if (event.getEventResult() == Result.DENY) {
|
||||||
player.sendMessage(
|
player.sendMessage(
|
||||||
@@ -409,7 +407,7 @@ public final class FlagCommand extends Command {
|
|||||||
if (plotFlag == null) {
|
if (plotFlag == null) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
Plot plot = player.getLocation().getPlotAbs();
|
Plot plot = player.getCurrentPlot();
|
||||||
PlotFlagAddEvent event = eventDispatcher.callFlagAdd(plotFlag, plot);
|
PlotFlagAddEvent event = eventDispatcher.callFlagAdd(plotFlag, plot);
|
||||||
if (event.getEventResult() == Result.DENY) {
|
if (event.getEventResult() == Result.DENY) {
|
||||||
player.sendMessage(
|
player.sendMessage(
|
||||||
@@ -419,7 +417,7 @@ public final class FlagCommand extends Command {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
boolean force = event.getEventResult() == Result.FORCE;
|
boolean force = event.getEventResult() == Result.FORCE;
|
||||||
final PlotFlag localFlag = player.getLocation().getPlotAbs().getFlagContainer()
|
final PlotFlag localFlag = player.getCurrentPlot().getFlagContainer()
|
||||||
.getFlag(event.getFlag().getClass());
|
.getFlag(event.getFlag().getClass());
|
||||||
if (!force) {
|
if (!force) {
|
||||||
for (String entry : args[1].split(",")) {
|
for (String entry : args[1].split(",")) {
|
||||||
@@ -444,7 +442,7 @@ public final class FlagCommand extends Command {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
boolean result =
|
boolean result =
|
||||||
player.getLocation().getPlotAbs().setFlag(localFlag.merge(parsed.getValue()));
|
player.getCurrentPlot().setFlag(localFlag.merge(parsed.getValue()));
|
||||||
if (!result) {
|
if (!result) {
|
||||||
player.sendMessage(TranslatableCaption.of("flag.flag_not_added"));
|
player.sendMessage(TranslatableCaption.of("flag.flag_not_added"));
|
||||||
return;
|
return;
|
||||||
@@ -484,7 +482,7 @@ public final class FlagCommand extends Command {
|
|||||||
if (flag == null) {
|
if (flag == null) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
final Plot plot = player.getLocation().getPlotAbs();
|
final Plot plot = player.getCurrentPlot();
|
||||||
final PlotFlag<?, ?> flagWithOldValue = plot.getFlagContainer().getFlag(flag.getClass());
|
final PlotFlag<?, ?> flagWithOldValue = plot.getFlagContainer().getFlag(flag.getClass());
|
||||||
PlotFlagRemoveEvent event = eventDispatcher.callFlagRemove(flag, plot);
|
PlotFlagRemoveEvent event = eventDispatcher.callFlagRemove(flag, plot);
|
||||||
if (event.getEventResult() == Result.DENY) {
|
if (event.getEventResult() == Result.DENY) {
|
||||||
@@ -687,7 +685,7 @@ public final class FlagCommand extends Command {
|
|||||||
.build()
|
.build()
|
||||||
);
|
);
|
||||||
// Default value
|
// Default value
|
||||||
final String defaultValue = player.getLocation().getPlotArea().getFlagContainer()
|
final String defaultValue = player.getCurrentPlot().getArea().getFlagContainer()
|
||||||
.getFlagErased(plotFlag.getClass()).toString();
|
.getFlagErased(plotFlag.getClass()).toString();
|
||||||
player.sendMessage(
|
player.sendMessage(
|
||||||
TranslatableCaption.of("flag.flag_info_default_value"),
|
TranslatableCaption.of("flag.flag_info_default_value"),
|
||||||
|
@@ -65,8 +65,7 @@ public class Kick extends SubCommand {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean onCommand(PlotPlayer<?> player, String[] args) {
|
public boolean onCommand(PlotPlayer<?> player, String[] args) {
|
||||||
Location location = player.getLocation();
|
Plot plot = player.getCurrentPlot();
|
||||||
Plot plot = location.getPlot();
|
|
||||||
if (plot == null) {
|
if (plot == null) {
|
||||||
player.sendMessage(TranslatableCaption.of("errors.not_in_plot"));
|
player.sendMessage(TranslatableCaption.of("errors.not_in_plot"));
|
||||||
return false;
|
return false;
|
||||||
@@ -124,7 +123,7 @@ public class Kick extends SubCommand {
|
|||||||
);
|
);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
Location spawn = this.worldUtil.getSpawn(location.getWorldName());
|
Location spawn = this.worldUtil.getSpawn(plot.getWorldName());
|
||||||
player2.sendMessage(TranslatableCaption.of("kick.you_got_kicked"));
|
player2.sendMessage(TranslatableCaption.of("kick.you_got_kicked"));
|
||||||
if (plot.equals(spawn.getPlot())) {
|
if (plot.equals(spawn.getPlot())) {
|
||||||
Location newSpawn = this.worldUtil.getSpawn(this.plotAreaManager.getAllWorlds()[0]);
|
Location newSpawn = this.worldUtil.getSpawn(this.plotAreaManager.getAllWorlds()[0]);
|
||||||
@@ -148,8 +147,7 @@ public class Kick extends SubCommand {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Collection<Command> tab(final PlotPlayer<?> player, final String[] args, final boolean space) {
|
public Collection<Command> tab(final PlotPlayer<?> player, final String[] args, final boolean space) {
|
||||||
Location location = player.getLocation();
|
Plot plot = player.getCurrentPlot();
|
||||||
Plot plot = location.getPlotAbs();
|
|
||||||
if (plot == null) {
|
if (plot == null) {
|
||||||
return Collections.emptyList();
|
return Collections.emptyList();
|
||||||
}
|
}
|
||||||
|
@@ -150,8 +150,8 @@ public class ListCmd extends SubCommand {
|
|||||||
page = 0;
|
page = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
String world = player.getLocation().getWorldName();
|
String world = player.getCurrentPlot().getWorldName();
|
||||||
PlotArea area = player.getApplicablePlotArea();
|
PlotArea area = player.getCurrentPlot().getArea();
|
||||||
String arg = args[0].toLowerCase();
|
String arg = args[0].toLowerCase();
|
||||||
final boolean[] sort = new boolean[]{true};
|
final boolean[] sort = new boolean[]{true};
|
||||||
|
|
||||||
|
@@ -68,7 +68,7 @@ public class Load extends SubCommand {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean onCommand(final PlotPlayer<?> player, final String[] args) {
|
public boolean onCommand(final PlotPlayer<?> player, final String[] args) {
|
||||||
final String world = player.getLocation().getWorldName();
|
final String world = player.getCurrentPlot().getWorldName();
|
||||||
if (!this.plotAreaManager.hasPlotArea(world)) {
|
if (!this.plotAreaManager.hasPlotArea(world)) {
|
||||||
player.sendMessage(TranslatableCaption.of("errors.not_in_plot_world"));
|
player.sendMessage(TranslatableCaption.of("errors.not_in_plot_world"));
|
||||||
return false;
|
return false;
|
||||||
|
@@ -20,7 +20,6 @@ package com.plotsquared.core.command;
|
|||||||
|
|
||||||
import com.plotsquared.core.configuration.caption.TranslatableCaption;
|
import com.plotsquared.core.configuration.caption.TranslatableCaption;
|
||||||
import com.plotsquared.core.events.TeleportCause;
|
import com.plotsquared.core.events.TeleportCause;
|
||||||
import com.plotsquared.core.location.Location;
|
|
||||||
import com.plotsquared.core.player.PlotPlayer;
|
import com.plotsquared.core.player.PlotPlayer;
|
||||||
import com.plotsquared.core.plot.Plot;
|
import com.plotsquared.core.plot.Plot;
|
||||||
|
|
||||||
@@ -36,8 +35,7 @@ public class Middle extends SubCommand {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean onCommand(PlotPlayer<?> player, String[] arguments) {
|
public boolean onCommand(PlotPlayer<?> player, String[] arguments) {
|
||||||
Location location = player.getLocation();
|
Plot plot = player.getCurrentPlot();
|
||||||
Plot plot = location.getPlot();
|
|
||||||
if (plot == null) {
|
if (plot == null) {
|
||||||
player.sendMessage(TranslatableCaption.of("errors.not_in_plot"));
|
player.sendMessage(TranslatableCaption.of("errors.not_in_plot"));
|
||||||
return false;
|
return false;
|
||||||
|
@@ -20,7 +20,6 @@ package com.plotsquared.core.command;
|
|||||||
|
|
||||||
import com.google.inject.Inject;
|
import com.google.inject.Inject;
|
||||||
import com.plotsquared.core.configuration.caption.TranslatableCaption;
|
import com.plotsquared.core.configuration.caption.TranslatableCaption;
|
||||||
import com.plotsquared.core.location.Location;
|
|
||||||
import com.plotsquared.core.permissions.Permission;
|
import com.plotsquared.core.permissions.Permission;
|
||||||
import com.plotsquared.core.player.PlotPlayer;
|
import com.plotsquared.core.player.PlotPlayer;
|
||||||
import com.plotsquared.core.plot.Plot;
|
import com.plotsquared.core.plot.Plot;
|
||||||
@@ -55,8 +54,7 @@ public class Move extends SubCommand {
|
|||||||
RunnableVal3<Command, Runnable, Runnable> confirm,
|
RunnableVal3<Command, Runnable, Runnable> confirm,
|
||||||
RunnableVal2<Command, CommandResult> whenDone
|
RunnableVal2<Command, CommandResult> whenDone
|
||||||
) {
|
) {
|
||||||
Location location = player.getLocation();
|
Plot plot1 = player.getCurrentPlot();
|
||||||
Plot plot1 = location.getPlotAbs();
|
|
||||||
if (plot1 == null) {
|
if (plot1 == null) {
|
||||||
player.sendMessage(TranslatableCaption.of("errors.not_in_plot"));
|
player.sendMessage(TranslatableCaption.of("errors.not_in_plot"));
|
||||||
return CompletableFuture.completedFuture(false);
|
return CompletableFuture.completedFuture(false);
|
||||||
|
@@ -23,7 +23,6 @@ import com.plotsquared.core.configuration.caption.TranslatableCaption;
|
|||||||
import com.plotsquared.core.events.PlotFlagAddEvent;
|
import com.plotsquared.core.events.PlotFlagAddEvent;
|
||||||
import com.plotsquared.core.events.PlotFlagRemoveEvent;
|
import com.plotsquared.core.events.PlotFlagRemoveEvent;
|
||||||
import com.plotsquared.core.events.Result;
|
import com.plotsquared.core.events.Result;
|
||||||
import com.plotsquared.core.location.Location;
|
|
||||||
import com.plotsquared.core.permissions.Permission;
|
import com.plotsquared.core.permissions.Permission;
|
||||||
import com.plotsquared.core.player.PlotPlayer;
|
import com.plotsquared.core.player.PlotPlayer;
|
||||||
import com.plotsquared.core.plot.Plot;
|
import com.plotsquared.core.plot.Plot;
|
||||||
@@ -74,8 +73,7 @@ public class Music extends SubCommand {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean onCommand(PlotPlayer<?> player, String[] args) {
|
public boolean onCommand(PlotPlayer<?> player, String[] args) {
|
||||||
Location location = player.getLocation();
|
final Plot plot = player.getCurrentPlot();
|
||||||
final Plot plot = location.getPlotAbs();
|
|
||||||
if (plot == null) {
|
if (plot == null) {
|
||||||
player.sendMessage(TranslatableCaption.of("errors.not_in_plot"));
|
player.sendMessage(TranslatableCaption.of("errors.not_in_plot"));
|
||||||
return false;
|
return false;
|
||||||
|
@@ -21,7 +21,6 @@ package com.plotsquared.core.command;
|
|||||||
import com.google.inject.Inject;
|
import com.google.inject.Inject;
|
||||||
import com.plotsquared.core.configuration.caption.TranslatableCaption;
|
import com.plotsquared.core.configuration.caption.TranslatableCaption;
|
||||||
import com.plotsquared.core.database.DBFunc;
|
import com.plotsquared.core.database.DBFunc;
|
||||||
import com.plotsquared.core.location.Location;
|
|
||||||
import com.plotsquared.core.permissions.Permission;
|
import com.plotsquared.core.permissions.Permission;
|
||||||
import com.plotsquared.core.player.PlotPlayer;
|
import com.plotsquared.core.player.PlotPlayer;
|
||||||
import com.plotsquared.core.plot.Plot;
|
import com.plotsquared.core.plot.Plot;
|
||||||
@@ -56,8 +55,7 @@ public class Remove extends SubCommand {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean onCommand(PlotPlayer<?> player, String[] args) {
|
public boolean onCommand(PlotPlayer<?> player, String[] args) {
|
||||||
Location location = player.getLocation();
|
Plot plot = player.getCurrentPlot();
|
||||||
Plot plot = location.getPlotAbs();
|
|
||||||
if (plot == null) {
|
if (plot == null) {
|
||||||
player.sendMessage(TranslatableCaption.of("errors.not_in_plot"));
|
player.sendMessage(TranslatableCaption.of("errors.not_in_plot"));
|
||||||
return false;
|
return false;
|
||||||
@@ -132,8 +130,7 @@ public class Remove extends SubCommand {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Collection<Command> tab(final PlotPlayer<?> player, final String[] args, final boolean space) {
|
public Collection<Command> tab(final PlotPlayer<?> player, final String[] args, final boolean space) {
|
||||||
Location location = player.getLocation();
|
Plot plot = player.getCurrentPlot();
|
||||||
Plot plot = location.getPlotAbs();
|
|
||||||
if (plot == null) {
|
if (plot == null) {
|
||||||
return Collections.emptyList();
|
return Collections.emptyList();
|
||||||
}
|
}
|
||||||
|
@@ -22,7 +22,6 @@ import com.google.common.collect.Lists;
|
|||||||
import com.google.inject.Inject;
|
import com.google.inject.Inject;
|
||||||
import com.plotsquared.core.configuration.Settings;
|
import com.plotsquared.core.configuration.Settings;
|
||||||
import com.plotsquared.core.configuration.caption.TranslatableCaption;
|
import com.plotsquared.core.configuration.caption.TranslatableCaption;
|
||||||
import com.plotsquared.core.location.Location;
|
|
||||||
import com.plotsquared.core.permissions.Permission;
|
import com.plotsquared.core.permissions.Permission;
|
||||||
import com.plotsquared.core.player.ConsolePlayer;
|
import com.plotsquared.core.player.ConsolePlayer;
|
||||||
import com.plotsquared.core.player.PlotPlayer;
|
import com.plotsquared.core.player.PlotPlayer;
|
||||||
@@ -102,8 +101,7 @@ public class SchematicCmd extends SubCommand {
|
|||||||
);
|
);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
Location loc = player.getLocation();
|
final Plot plot = player.getCurrentPlot();
|
||||||
final Plot plot = loc.getPlotAbs();
|
|
||||||
if (plot == null) {
|
if (plot == null) {
|
||||||
player.sendMessage(TranslatableCaption.of("errors.not_in_plot"));
|
player.sendMessage(TranslatableCaption.of("errors.not_in_plot"));
|
||||||
return false;
|
return false;
|
||||||
@@ -247,8 +245,7 @@ public class SchematicCmd extends SubCommand {
|
|||||||
player.sendMessage(TranslatableCaption.of("error.task_in_process"));
|
player.sendMessage(TranslatableCaption.of("error.task_in_process"));
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
Location location = player.getLocation();
|
Plot plot = player.getCurrentPlot();
|
||||||
Plot plot = location.getPlotAbs();
|
|
||||||
if (plot == null) {
|
if (plot == null) {
|
||||||
player.sendMessage(TranslatableCaption.of("errors.not_in_plot"));
|
player.sendMessage(TranslatableCaption.of("errors.not_in_plot"));
|
||||||
return false;
|
return false;
|
||||||
|
@@ -78,7 +78,7 @@ public class Set extends SubCommand {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean set(PlotPlayer<?> player, final Plot plot, String value) {
|
public boolean set(PlotPlayer<?> player, final Plot plot, String value) {
|
||||||
final PlotArea plotArea = player.getLocation().getPlotArea();
|
final PlotArea plotArea = player.getCurrentPlot().getArea();
|
||||||
if (plotArea == null) {
|
if (plotArea == null) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
@@ -19,7 +19,6 @@
|
|||||||
package com.plotsquared.core.command;
|
package com.plotsquared.core.command;
|
||||||
|
|
||||||
import com.plotsquared.core.configuration.caption.TranslatableCaption;
|
import com.plotsquared.core.configuration.caption.TranslatableCaption;
|
||||||
import com.plotsquared.core.location.Location;
|
|
||||||
import com.plotsquared.core.permissions.Permission;
|
import com.plotsquared.core.permissions.Permission;
|
||||||
import com.plotsquared.core.player.PlotPlayer;
|
import com.plotsquared.core.player.PlotPlayer;
|
||||||
import com.plotsquared.core.plot.Plot;
|
import com.plotsquared.core.plot.Plot;
|
||||||
@@ -32,8 +31,7 @@ public abstract class SetCommand extends SubCommand {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean onCommand(PlotPlayer<?> player, String[] args) {
|
public boolean onCommand(PlotPlayer<?> player, String[] args) {
|
||||||
Location location = player.getLocation();
|
Plot plot = player.getCurrentPlot();
|
||||||
Plot plot = location.getPlotAbs();
|
|
||||||
if (plot == null) {
|
if (plot == null) {
|
||||||
player.sendMessage(TranslatableCaption.of("errors.not_in_plot"));
|
player.sendMessage(TranslatableCaption.of("errors.not_in_plot"));
|
||||||
return false;
|
return false;
|
||||||
|
@@ -19,7 +19,6 @@
|
|||||||
package com.plotsquared.core.command;
|
package com.plotsquared.core.command;
|
||||||
|
|
||||||
import com.plotsquared.core.configuration.caption.TranslatableCaption;
|
import com.plotsquared.core.configuration.caption.TranslatableCaption;
|
||||||
import com.plotsquared.core.location.Location;
|
|
||||||
import com.plotsquared.core.permissions.Permission;
|
import com.plotsquared.core.permissions.Permission;
|
||||||
import com.plotsquared.core.player.PlotPlayer;
|
import com.plotsquared.core.player.PlotPlayer;
|
||||||
import com.plotsquared.core.plot.Plot;
|
import com.plotsquared.core.plot.Plot;
|
||||||
@@ -44,8 +43,7 @@ public class Swap extends SubCommand {
|
|||||||
RunnableVal3<Command, Runnable, Runnable> confirm,
|
RunnableVal3<Command, Runnable, Runnable> confirm,
|
||||||
RunnableVal2<Command, CommandResult> whenDone
|
RunnableVal2<Command, CommandResult> whenDone
|
||||||
) {
|
) {
|
||||||
Location location = player.getLocation();
|
Plot plot1 = player.getCurrentPlot();
|
||||||
Plot plot1 = location.getPlotAbs();
|
|
||||||
if (plot1 == null) {
|
if (plot1 == null) {
|
||||||
player.sendMessage(TranslatableCaption.of("errors.not_in_plot"));
|
player.sendMessage(TranslatableCaption.of("errors.not_in_plot"));
|
||||||
return CompletableFuture.completedFuture(false);
|
return CompletableFuture.completedFuture(false);
|
||||||
@@ -79,8 +77,10 @@ public class Swap extends SubCommand {
|
|||||||
String p1 = plot1.toString();
|
String p1 = plot1.toString();
|
||||||
String p2 = plot2.toString();
|
String p2 = plot2.toString();
|
||||||
|
|
||||||
return plot1.getPlotModificationManager().move(plot2, player, () -> {
|
return plot1.getPlotModificationManager().move(
|
||||||
}, true).thenApply(result -> {
|
plot2, player, () -> {
|
||||||
|
}, true
|
||||||
|
).thenApply(result -> {
|
||||||
if (result) {
|
if (result) {
|
||||||
player.sendMessage(
|
player.sendMessage(
|
||||||
TranslatableCaption.of("swap.swap_success"),
|
TranslatableCaption.of("swap.swap_success"),
|
||||||
|
@@ -22,7 +22,6 @@ import com.google.inject.Inject;
|
|||||||
import com.plotsquared.core.configuration.caption.TranslatableCaption;
|
import com.plotsquared.core.configuration.caption.TranslatableCaption;
|
||||||
import com.plotsquared.core.events.PlotUnlinkEvent;
|
import com.plotsquared.core.events.PlotUnlinkEvent;
|
||||||
import com.plotsquared.core.events.Result;
|
import com.plotsquared.core.events.Result;
|
||||||
import com.plotsquared.core.location.Location;
|
|
||||||
import com.plotsquared.core.permissions.Permission;
|
import com.plotsquared.core.permissions.Permission;
|
||||||
import com.plotsquared.core.player.PlotPlayer;
|
import com.plotsquared.core.player.PlotPlayer;
|
||||||
import com.plotsquared.core.plot.Plot;
|
import com.plotsquared.core.plot.Plot;
|
||||||
@@ -51,8 +50,7 @@ public class Unlink extends SubCommand {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean onCommand(final PlotPlayer<?> player, String[] args) {
|
public boolean onCommand(final PlotPlayer<?> player, String[] args) {
|
||||||
Location location = player.getLocation();
|
final Plot plot = player.getCurrentPlot();
|
||||||
final Plot plot = location.getPlotAbs();
|
|
||||||
if (plot == null) {
|
if (plot == null) {
|
||||||
player.sendMessage(TranslatableCaption.of("errors.not_in_plot"));
|
player.sendMessage(TranslatableCaption.of("errors.not_in_plot"));
|
||||||
return false;
|
return false;
|
||||||
|
@@ -164,7 +164,7 @@ public class PlotListener {
|
|||||||
try (final MetaDataAccess<Plot> lastPlot = player.accessTemporaryMetaData(PlayerMetaDataKeys.TEMPORARY_LAST_PLOT)) {
|
try (final MetaDataAccess<Plot> lastPlot = player.accessTemporaryMetaData(PlayerMetaDataKeys.TEMPORARY_LAST_PLOT)) {
|
||||||
Plot last = lastPlot.get().orElse(null);
|
Plot last = lastPlot.get().orElse(null);
|
||||||
if ((last != null) && !last.getId().equals(plot.getId())) {
|
if ((last != null) && !last.getId().equals(plot.getId())) {
|
||||||
plotExit(player, last, plot, plot.getArea());
|
plotExit(player, last);
|
||||||
}
|
}
|
||||||
if (PlotSquared.platform().expireManager() != null) {
|
if (PlotSquared.platform().expireManager() != null) {
|
||||||
PlotSquared.platform().expireManager().handleEntry(player, plot);
|
PlotSquared.platform().expireManager().handleEntry(player, plot);
|
||||||
@@ -365,12 +365,7 @@ public class PlotListener {
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
public boolean plotExit(
|
public boolean plotExit(final PlotPlayer<?> player, Plot plot) {
|
||||||
final PlotPlayer<?> player,
|
|
||||||
@NonNull Plot plot,
|
|
||||||
@Nullable Plot nextPlot,
|
|
||||||
@Nullable PlotArea nextArea
|
|
||||||
) {
|
|
||||||
try (final MetaDataAccess<Plot> lastPlot = player.accessTemporaryMetaData(PlayerMetaDataKeys.TEMPORARY_LAST_PLOT)) {
|
try (final MetaDataAccess<Plot> lastPlot = player.accessTemporaryMetaData(PlayerMetaDataKeys.TEMPORARY_LAST_PLOT)) {
|
||||||
final Plot previous = lastPlot.remove();
|
final Plot previous = lastPlot.remove();
|
||||||
|
|
||||||
@@ -387,10 +382,8 @@ public class PlotListener {
|
|||||||
if (plot.hasOwner()) {
|
if (plot.hasOwner()) {
|
||||||
PlotArea pw = plot.getArea();
|
PlotArea pw = plot.getArea();
|
||||||
if (pw == null) {
|
if (pw == null) {
|
||||||
if (nextPlot == null || (pw = nextPlot.getArea()) == null) {
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
}
|
|
||||||
try (final MetaDataAccess<Boolean> kickAccess =
|
try (final MetaDataAccess<Boolean> kickAccess =
|
||||||
player.accessTemporaryMetaData(PlayerMetaDataKeys.TEMPORARY_KICK)) {
|
player.accessTemporaryMetaData(PlayerMetaDataKeys.TEMPORARY_KICK)) {
|
||||||
if (plot.getFlag(DenyExitFlag.class) && !player.hasPermission(Permission.PERMISSION_ADMIN_EXIT_DENIED) &&
|
if (plot.getFlag(DenyExitFlag.class) && !player.hasPermission(Permission.PERMISSION_ADMIN_EXIT_DENIED) &&
|
||||||
@@ -447,17 +440,6 @@ public class PlotListener {
|
|||||||
player.setFlight(value.get());
|
player.setFlight(value.get());
|
||||||
metaDataAccess.remove();
|
metaDataAccess.remove();
|
||||||
} else {
|
} else {
|
||||||
FlyFlag.FlyStatus flight = FlyFlag.FlyStatus.DEFAULT;
|
|
||||||
if (nextPlot != null) {
|
|
||||||
flight = nextPlot.getFlag(FlyFlag.class);
|
|
||||||
} else if (nextArea != null) {
|
|
||||||
if (nextArea.isRoadFlags()) {
|
|
||||||
flight = nextArea.getRoadFlag(FlyFlag.class);
|
|
||||||
} else {
|
|
||||||
flight = nextArea.getFlag(FlyFlag.class);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if (flight != FlyFlag.FlyStatus.ENABLED) {
|
|
||||||
GameMode gameMode = player.getGameMode();
|
GameMode gameMode = player.getGameMode();
|
||||||
if (gameMode == GameModes.SURVIVAL || gameMode == GameModes.ADVENTURE) {
|
if (gameMode == GameModes.SURVIVAL || gameMode == GameModes.ADVENTURE) {
|
||||||
player.setFlight(false);
|
player.setFlight(false);
|
||||||
@@ -467,7 +449,6 @@ public class PlotListener {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
if (plot.getFlag(TimeFlag.class) != TimeFlag.TIME_DISABLED.getValue().longValue()) {
|
if (plot.getFlag(TimeFlag.class) != TimeFlag.TIME_DISABLED.getValue().longValue()) {
|
||||||
player.setTime(Long.MAX_VALUE);
|
player.setTime(Long.MAX_VALUE);
|
||||||
|
@@ -290,6 +290,7 @@ public abstract class PlotPlayer<P> implements CommandCaller, OfflinePlotPlayer,
|
|||||||
*
|
*
|
||||||
* @return the plot the player is standing on or null if standing on a road or not in a {@link PlotArea}
|
* @return the plot the player is standing on or null if standing on a road or not in a {@link PlotArea}
|
||||||
*/
|
*/
|
||||||
|
@Nullable
|
||||||
public Plot getCurrentPlot() {
|
public Plot getCurrentPlot() {
|
||||||
try (final MetaDataAccess<Plot> lastPlotAccess =
|
try (final MetaDataAccess<Plot> lastPlotAccess =
|
||||||
this.accessTemporaryMetaData(PlayerMetaDataKeys.TEMPORARY_LAST_PLOT)) {
|
this.accessTemporaryMetaData(PlayerMetaDataKeys.TEMPORARY_LAST_PLOT)) {
|
||||||
@@ -319,7 +320,7 @@ public abstract class PlotPlayer<P> implements CommandCaller, OfflinePlotPlayer,
|
|||||||
*/
|
*/
|
||||||
public int getPlotCount() {
|
public int getPlotCount() {
|
||||||
if (!Settings.Limit.GLOBAL) {
|
if (!Settings.Limit.GLOBAL) {
|
||||||
return getPlotCount(getLocation().getWorldName());
|
return getPlotCount(getCurrentPlot().getWorldName());
|
||||||
}
|
}
|
||||||
final AtomicInteger count = new AtomicInteger(0);
|
final AtomicInteger count = new AtomicInteger(0);
|
||||||
final UUID uuid = getUUID();
|
final UUID uuid = getUUID();
|
||||||
@@ -339,7 +340,7 @@ public abstract class PlotPlayer<P> implements CommandCaller, OfflinePlotPlayer,
|
|||||||
|
|
||||||
public int getClusterCount() {
|
public int getClusterCount() {
|
||||||
if (!Settings.Limit.GLOBAL) {
|
if (!Settings.Limit.GLOBAL) {
|
||||||
return getClusterCount(getLocation().getWorldName());
|
return getClusterCount(getCurrentPlot().getWorldName());
|
||||||
}
|
}
|
||||||
final AtomicInteger count = new AtomicInteger(0);
|
final AtomicInteger count = new AtomicInteger(0);
|
||||||
this.plotAreaManager.forEachPlotArea(value -> {
|
this.plotAreaManager.forEachPlotArea(value -> {
|
||||||
@@ -408,8 +409,12 @@ public abstract class PlotPlayer<P> implements CommandCaller, OfflinePlotPlayer,
|
|||||||
}
|
}
|
||||||
|
|
||||||
public PlotArea getApplicablePlotArea() {
|
public PlotArea getApplicablePlotArea() {
|
||||||
|
Plot plot = getCurrentPlot();
|
||||||
|
if (plot == null) {
|
||||||
return this.plotAreaManager.getApplicablePlotArea(getLocation());
|
return this.plotAreaManager.getApplicablePlotArea(getLocation());
|
||||||
}
|
}
|
||||||
|
return plot.getArea();
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public @NonNull RequiredType getSuperCaller() {
|
public @NonNull RequiredType getSuperCaller() {
|
||||||
|
@@ -1340,7 +1340,7 @@ public class Plot {
|
|||||||
for (Plot current : getConnectedPlots()) {
|
for (Plot current : getConnectedPlots()) {
|
||||||
List<PlotPlayer<?>> players = current.getPlayersInPlot();
|
List<PlotPlayer<?>> players = current.getPlayersInPlot();
|
||||||
for (PlotPlayer<?> pp : players) {
|
for (PlotPlayer<?> pp : players) {
|
||||||
this.plotListener.plotExit(pp, current, null, area);
|
this.plotListener.plotExit(pp, current);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (Settings.Backup.DELETE_ON_UNCLAIM) {
|
if (Settings.Backup.DELETE_ON_UNCLAIM) {
|
||||||
@@ -2594,7 +2594,7 @@ public class Plot {
|
|||||||
public void reEnter() {
|
public void reEnter() {
|
||||||
TaskManager.runTaskLater(() -> {
|
TaskManager.runTaskLater(() -> {
|
||||||
for (PlotPlayer<?> pp : Plot.this.getPlayersInPlot()) {
|
for (PlotPlayer<?> pp : Plot.this.getPlayersInPlot()) {
|
||||||
this.plotListener.plotExit(pp, Plot.this, Plot.this, area);
|
this.plotListener.plotExit(pp, Plot.this);
|
||||||
this.plotListener.plotEntry(pp, Plot.this);
|
this.plotListener.plotEntry(pp, Plot.this);
|
||||||
}
|
}
|
||||||
}, TaskTime.ticks(1L));
|
}, TaskTime.ticks(1L));
|
||||||
|
Reference in New Issue
Block a user