dynmap/dynmap-api/src/main/java/org/dynmap/DynmapAPI.java

68 lines
2.8 KiB
Java

package org.dynmap;
import org.bukkit.Location;
import org.bukkit.entity.Player;
import org.bukkit.plugin.Plugin;
/**
* This is the interface representing the published API for the Dynmap plugin for Bukkit. Public methods of the
* DynmapPlugin class that are not defined in this interface are subject to change without notice, so
* be careful with forming dependencies beyond these. Plugins accessing dynmap 0.24 or later should
* do so by casting the Plugin to this interface.
*
* This interface is Bukkit specific.
*/
public interface DynmapAPI extends DynmapCommonAPI {
/**
* Trigger update on tiles associated with given locations. If two locations provided,
* the volume is the rectangular prism ("cuboid") with the two locations on opposite corners.
*
* @param l0 - first location (required)
* @param l1 - second location (if null, only single point invalidated (l0))
* @return number of tiles queued to be rerendered (@deprecated return value - just returns 1)
*/
public int triggerRenderOfVolume(Location l0, Location l1);
/**
* Set player visibility
* @param player - player
* @param is_visible - true if visible, false if hidden
*/
public void setPlayerVisiblity(Player player, boolean is_visible);
/**
* Test if player is visible
* @return true if visible, false if not
*/
public boolean getPlayerVisbility(Player player);
/**
* Post message from player to web
* @param player - player
* @param message - message text
*/
public void postPlayerMessageToWeb(Player player, String message);
/**
* Post join/quit message for player to web
* @param player - player
* @param isjoin - if true, join message; if false, quit message
*/
public void postPlayerJoinQuitToWeb(Player player, boolean isjoin);
/**
* Get version of dynmap plugin
* @return version - format is "major.minor-build" or "major.minor.patch-build"
*/
public String getDynmapVersion();
/**
* Set player visibility (transient - if player is configured to be visible, they are hidden if one or more plugins assert their invisiblity)
* @param player - player ID
* @param is_invisible - true if asserting player should be invisible, false if no assertion
* @param plugin - asserting plugin
*/
public void assertPlayerInvisibility(Player player, boolean is_invisible, Plugin plugin);
/**
* Set player visibility (transient - if player is configured to be hidden, they are made visibile if one or more plugins assert their visibility))
* @param player - player
* @param is_visible - true if asserting that hidden player should be visible, false if no assertion
* @param plugin - asserting plugin
*/
public void assertPlayerVisibility(Player player, boolean is_visible, Plugin plugin);
}