PublicAPI: métodos
com.scala.plotAPI.PublicAPI es la interfaz principal expuesta por ScalaPlot. Está implementada por la clase principal del plugin, obtenible mediante Bukkit.getPluginManager().getPlugin("Plot").
Obtención de parcelas
Sección titulada «Obtención de parcelas»IPlot getPlotAt(Location location);List<IPlot> getPlotsByOwner(UUID ownerId);IPlot getPlotById(PlotId id);IPlot getPlotById(String world, PlotId id);int getPlotCount(UUID playerId);Collection<IPlot> getAllPlots();boolean canBeClaimed(IPlot plot);UUID getPlotOwner(IPlot plot);Location getPlotCenter(IPlot plot);| Método | Descripción |
|---|---|
getPlotAt(location) |
Devuelve la parcela en la ubicación indicada, o null si no está dentro de ninguna parcela |
getPlotsByOwner(ownerId) |
Todas las parcelas propiedad de un jugador |
getPlotById(id) / getPlotById(world, id) |
Parcela por ID, opcionalmente en un mundo específico |
getPlotCount(playerId) |
Número total de parcelas propiedad de un jugador |
getAllPlots() |
Todas las parcelas conocidas por el sistema |
canBeClaimed(plot) |
true si la parcela está actualmente libre y se puede reclamar |
getPlotOwner(plot) |
UUID del propietario, o null si no está reclamada |
getPlotCenter(plot) |
Ubicación central de la parcela |
Confianza y baneos
Sección titulada «Confianza y baneos»boolean isTrusted(IPlot plot, UUID playerId);boolean isBanned(IPlot plot, UUID playerId);void trustPlayer(IPlot plot, UUID playerId);void untrustPlayer(IPlot plot, UUID playerId);void banPlayer(IPlot plot, UUID playerId);void unbanPlayer(IPlot plot, UUID playerId);Set<UUID> getTruestedPlayers(IPlot plot);Set<UUID> getBannedPlayers(IPlot plot);Operaciones sobre parcelas
Sección titulada «Operaciones sobre parcelas»ClaimResult claimPlot(Player player);void resetPlot(IPlot plot);CompletableFuture<PlotResetResult> deletePlot(Player player, IPlot plot);claimPlot(player)intenta reclamar la parcela más cercana para el jugador y devuelve unClaimResultque describe el resultado.resetPlot(plot)restaura los metadatos de la parcela a los valores predeterminados.deletePlot(player, plot)elimina la parcela de forma asíncrona, devolviendo unCompletableFuture<PlotResetResult>que debe gestionarse con.thenAccept(...).
Valoraciones y reportes
Sección titulada «Valoraciones y reportes»double getAverageRating(IPlot plot);ReportStatus getStatus(IPlot plot);void setStatus(IPlot plot, ReportStatus status);UUID getReporterUUID(IPlot plot);void setReporterUUID(IPlot plot, UUID reporterUUID);getAverageRating devuelve un valor entre 0.0 y 5.0.
Premium e información general
Sección titulada «Premium e información general»boolean isPremium();boolean getBBB();int getMaxOwnablePlots();org.bukkit.plugin.java.JavaPlugin getPlugin();IConfigAPI getConfig();String getSessionKey();String getServerID();Economy getVault();isPremium()indica si las funciones premium están actualmente desbloqueadas (licencia válida).getBBB()indica si se trata de la build distribuida a través de BuiltByBit.getConfig()devuelve una abstracción (IConfigAPI) para leer la configuración del plugin sin depender directamente de las clases internas.getVault()devuelve la instanciaEconomyde Vault, si está disponible.
Managers internos (uso avanzado)
Sección titulada «Managers internos (uso avanzado)»Object getPlotManager();Object getWorldEditManager();Object getMapManager();Object getCommandRegistry();Ejemplo completo
Sección titulada «Ejemplo completo»PublicAPI api = (PublicAPI) Bukkit.getPluginManager().getPlugin("Plot");
IPlot plot = api.getPlotAt(player.getLocation());if (plot != null) { api.trustPlayer(plot, targetPlayer.getUniqueId()); double rating = api.getAverageRating(plot); player.sendMessage("Valoración media: " + rating);}
if (api.isPremium()) { player.sendMessage("¡Las funciones premium están activas en este servidor!");}