PublicAPI: metodi
com.scala.plotAPI.PublicAPI è l’interfaccia principale esposta da ScalaPlot. È implementata dalla classe principale del plugin, ottenibile tramite Bukkit.getPluginManager().getPlugin("Plot").
Recupero dei plot
Sezione intitolata “Recupero dei plot”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);| Metodo | Descrizione |
|---|---|
getPlotAt(location) |
Restituisce il plot alla posizione indicata, o null se non è dentro a nessun plot |
getPlotsByOwner(ownerId) |
Tutti i plot posseduti da un giocatore |
getPlotById(id) / getPlotById(world, id) |
Plot per ID, opzionalmente in un mondo specifico |
getPlotCount(playerId) |
Numero totale di plot posseduti da un giocatore |
getAllPlots() |
Tutti i plot conosciuti dal sistema |
canBeClaimed(plot) |
true se il plot è attualmente libero e rivendicabile |
getPlotOwner(plot) |
UUID del proprietario, o null se non rivendicato |
getPlotCenter(plot) |
Posizione centrale del plot |
Fiducia e ban
Sezione intitolata “Fiducia e ban”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);Operazioni sui plot
Sezione intitolata “Operazioni sui plot”ClaimResult claimPlot(Player player);void resetPlot(IPlot plot);CompletableFuture<PlotResetResult> deletePlot(Player player, IPlot plot);claimPlot(player)prova a rivendicare il plot più vicino per il giocatore e restituisce unClaimResultche ne descrive l’esito.resetPlot(plot)ripristina i metadati del plot ai valori predefiniti.deletePlot(player, plot)elimina il plot in modo asincrono, restituendo unCompletableFuture<PlotResetResult>da gestire con.thenAccept(...).
Valutazioni e segnalazioni
Sezione intitolata “Valutazioni e segnalazioni”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 restituisce un valore compreso tra 0.0 e 5.0.
Premium e informazioni generali
Sezione intitolata “Premium e informazioni generali”boolean isPremium();boolean getBBB();int getMaxOwnablePlots();org.bukkit.plugin.java.JavaPlugin getPlugin();IConfigAPI getConfig();String getSessionKey();String getServerID();Economy getVault();isPremium()indica se le funzionalità premium sono attualmente sbloccate (licenza valida).getBBB()indica se si tratta della build distribuita tramite BuiltByBit.getConfig()restituisce un’astrazione (IConfigAPI) per leggere la configurazione del plugin senza dipendere direttamente dalle classi interne.getVault()restituisce l’istanza diEconomydi Vault, se disponibile.
Manager interni (uso avanzato)
Sezione intitolata “Manager interni (uso avanzato)”Object getPlotManager();Object getWorldEditManager();Object getMapManager();Object getCommandRegistry();Esempio completo
Sezione intitolata “Esempio 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("Rating medio: " + rating);}
if (api.isPremium()) { player.sendMessage("Le funzionalità premium sono attive su questo server!");}