mirror of
https://github.com/IntellectualSites/PlotSquared.git
synced 2024-11-26 15:16:45 +01:00
*Should fix issue with expired mega plots. [UNTESTED]
This commit is contained in:
parent
8b8afc2010
commit
ba35d8b774
@ -65,6 +65,27 @@ public class Unlink extends SubCommand {
|
||||
}
|
||||
|
||||
final World world = plr.getWorld();
|
||||
if (!unlinkPlot(world, plot)) {
|
||||
PlayerFunctions.sendMessage(plr, "&cUnlink has been cancelled");
|
||||
return false;
|
||||
}
|
||||
try {
|
||||
if (PlotHelper.canSetFast) {
|
||||
SetBlockFast.update(plr);
|
||||
}
|
||||
} catch (final Exception e) {
|
||||
// execute(final Player plr, final String... args) {
|
||||
try {
|
||||
PlotMain.sendConsoleSenderMessage("Error on: " + getClass().getMethod("execute", Player.class, String[].class).toGenericString() + ":119, when trying to use \"SetBlockFast#update\"");
|
||||
} catch (final Exception ex) {
|
||||
ex.printStackTrace();
|
||||
}
|
||||
}
|
||||
PlayerFunctions.sendMessage(plr, "&6Plots unlinked successfully!");
|
||||
return true;
|
||||
}
|
||||
|
||||
public static boolean unlinkPlot(World world, Plot plot) {
|
||||
final PlotId pos1 = PlayerFunctions.getBottomPlot(world, plot).id;
|
||||
final PlotId pos2 = PlayerFunctions.getTopPlot(world, plot).id;
|
||||
final ArrayList<PlotId> ids = PlayerFunctions.getPlotSelectionIds(pos1, pos2);
|
||||
@ -74,7 +95,6 @@ public class Unlink extends SubCommand {
|
||||
Bukkit.getServer().getPluginManager().callEvent(event);
|
||||
if (event.isCancelled()) {
|
||||
event.setCancelled(true);
|
||||
PlayerFunctions.sendMessage(plr, "&cUnlink has been cancelled");
|
||||
return false;
|
||||
}
|
||||
|
||||
@ -119,25 +139,10 @@ public class Unlink extends SubCommand {
|
||||
if (ly) {
|
||||
manager.createRoadSouth(plotworld, p);
|
||||
}
|
||||
PlotHelper.setSign(plr.getWorld(), UUIDHandler.getName(plot.owner), plot);
|
||||
PlotHelper.setSign(world, UUIDHandler.getName(plot.owner), plot);
|
||||
}
|
||||
}
|
||||
try {
|
||||
if (PlotHelper.canSetFast) {
|
||||
SetBlockFast.update(plr);
|
||||
}
|
||||
} catch (final Exception e) {
|
||||
// execute(final Player plr, final String... args) {
|
||||
try {
|
||||
PlotMain.sendConsoleSenderMessage("Error on: " + getClass().getMethod("execute", Player.class, String[].class).toGenericString() + ":119, when trying to use \"SetBlockFast#update\"");
|
||||
} catch (final Exception ex) {
|
||||
ex.printStackTrace();
|
||||
}
|
||||
}
|
||||
|
||||
manager.finishPlotUnlink(world, plotworld, ids);
|
||||
|
||||
PlayerFunctions.sendMessage(plr, "&6Plots unlinked successfully!");
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
@ -589,8 +589,8 @@ import com.intellectualcrafters.plot.util.SendChunk;
|
||||
|
||||
final HybridPlotWorld dpw = ((HybridPlotWorld) PlotMain.getWorldSettings(world));
|
||||
|
||||
final Location pos1 = PlotHelper.getPlotBottomLoc(world, plot.id).add(1, 0, 1);
|
||||
final Location pos2 = PlotHelper.getPlotTopLoc(world, plot.id);
|
||||
final Location pos1 = PlotHelper.getPlotBottomLocAbs(world, plot.id).add(1, 0, 1);
|
||||
final Location pos2 = PlotHelper.getPlotTopLocAbs(world, plot.id);
|
||||
|
||||
final PlotBlock[] plotfloor = dpw.TOP_BLOCK;
|
||||
final PlotBlock[] filling = dpw.MAIN_BLOCK;
|
||||
|
@ -14,6 +14,7 @@ import org.bukkit.World;
|
||||
import org.bukkit.entity.Player;
|
||||
|
||||
import com.intellectualcrafters.plot.PlotMain;
|
||||
import com.intellectualcrafters.plot.commands.Unlink;
|
||||
import com.intellectualcrafters.plot.config.C;
|
||||
import com.intellectualcrafters.plot.config.Settings;
|
||||
import com.intellectualcrafters.plot.database.DBFunc;
|
||||
@ -108,6 +109,9 @@ public class ExpireManager {
|
||||
}
|
||||
final World worldobj = Bukkit.getWorld(world);
|
||||
final PlotManager manager = PlotMain.getPlotManager(world);
|
||||
if (plot.settings.isMerged()) {
|
||||
Unlink.unlinkPlot(Bukkit.getWorld(world), plot);
|
||||
}
|
||||
manager.clearPlot(worldobj, plot, false);
|
||||
PlotHelper.removeSign(worldobj, plot);
|
||||
DBFunc.delete(world, plot);
|
||||
|
Loading…
Reference in New Issue
Block a user