PublicAPI : méthodes
com.scala.plotAPI.PublicAPI est l’interface principale exposée par ScalaPlot. Elle est implémentée par la classe principale du plugin, accessible via Bukkit.getPluginManager().getPlugin("Plot").
Récupération des parcelles
Section intitulée « Récupération des parcelles »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éthode | Description |
|---|---|
getPlotAt(location) |
Renvoie la parcelle à l’emplacement donné, ou null si en dehors de toute parcelle |
getPlotsByOwner(ownerId) |
Toutes les parcelles possédées par un joueur |
getPlotById(id) / getPlotById(world, id) |
Parcelle par ID, éventuellement dans un monde spécifique |
getPlotCount(playerId) |
Nombre total de parcelles possédées par un joueur |
getAllPlots() |
Toutes les parcelles connues du système |
canBeClaimed(plot) |
true si la parcelle est actuellement libre et réclamable |
getPlotOwner(plot) |
UUID du propriétaire, ou null si non réclamée |
getPlotCenter(plot) |
Position centrale de la parcelle |
Confiance et bans
Section intitulée « Confiance et bans »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);Opérations sur les parcelles
Section intitulée « Opérations sur les parcelles »ClaimResult claimPlot(Player player);void resetPlot(IPlot plot);CompletableFuture<PlotResetResult> deletePlot(Player player, IPlot plot);claimPlot(player)tente de réclamer la parcelle la plus proche pour le joueur et renvoie unClaimResultdécrivant le résultat.resetPlot(plot)restaure les métadonnées de la parcelle aux valeurs par défaut.deletePlot(player, plot)supprime la parcelle de manière asynchrone, renvoyant unCompletableFuture<PlotResetResult>à gérer avec.thenAccept(...).
Notations et signalements
Section intitulée « Notations et signalements »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 renvoie une valeur comprise entre 0.0 et 5.0.
Premium et informations générales
Section intitulée « Premium et informations générales »boolean isPremium();boolean getBBB();int getMaxOwnablePlots();org.bukkit.plugin.java.JavaPlugin getPlugin();IConfigAPI getConfig();String getSessionKey();String getServerID();Economy getVault();isPremium()indique si les fonctionnalités premium sont actuellement débloquées (licence valide).getBBB()indique s’il s’agit de la build distribuée via BuiltByBit.getConfig()renvoie une abstraction (IConfigAPI) pour lire la configuration du plugin sans dépendre directement des classes internes.getVault()renvoie l’instanceEconomyde Vault, si disponible.
Managers internes (usage avancé)
Section intitulée « Managers internes (usage avancé) »Object getPlotManager();Object getWorldEditManager();Object getMapManager();Object getCommandRegistry();Exemple complet
Section intitulée « Exemple complet »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("Note moyenne : " + rating);}
if (api.isPremium()) { player.sendMessage("Les fonctionnalités premium sont actives sur ce serveur !");}