TF-PlotSquared/PlotSquared/src/com/intellectualcrafters/plot/PlotManager.java

63 lines
1.9 KiB
Java
Raw Normal View History

package com.intellectualcrafters.plot;
import org.bukkit.Location;
import org.bukkit.World;
import org.bukkit.block.Biome;
import org.bukkit.block.Block;
import org.bukkit.entity.Player;
public abstract class PlotManager {
/*
* Plot locations (methods with Abs in them will not need to consider mega
* plots)
*/
public abstract PlotId getPlotIdAbs(PlotWorld plotworld, Location loc);
public abstract boolean isInPlotAbs(PlotWorld plotworld, Location loc, Plot plot);
// If you have a circular plot, just return the corner if it were a square
public abstract Location getPlotBottomLocAbs(PlotWorld plotworld, Plot plot);
// the same applies here
public abstract Location getPlotTopLocAbs(PlotWorld plotworld, Plot plot);
/*
* Plot clearing (return false if you do not support some method)
*
*
*/
public abstract boolean clearPlot(Player player, Plot plot, boolean mega);
public abstract boolean clearSign(Player player, Plot plot, boolean mega);
// clearEntities also needs to clear Player entities (e.g. teleport them to the surface)
public abstract boolean clearEntities(Player player, Plot plot, boolean mega);
/*
* Plot set functions (return false if you do not support the specific set
* method)
*/
public abstract boolean setWall(Player player, Plot plot, Block block);
public abstract boolean setBiome(Player player, Plot plot, Biome biome);
/*
* PLOT MERGING (return false if your generator does not support plot
* merging)
*/
public abstract boolean createRoadEast(Plot plot);
public abstract boolean createRoadSouth(Plot plot);
public abstract boolean createRoadSouthEast(Plot plot);
public abstract boolean removeRoadEast(Plot plot);
public abstract boolean removeRoadSouth(Plot plot);
public abstract boolean removeRoadSouthEast(Plot plot);
}