API

PlotPlus provides an API for developers to integrate with plots.

Events

All events can be cancelled using setCancelled(true).

Registering Event Listeners

Use EventRegistry.register() or EventRegistry.registerGlobal():

public class MyMod extends JavaPlugin {

    @Override
    public void onEnable() {
        getEventRegistry().registerGlobal(PlotClaimEvent.class, this::onPlotClaim);
        getEventRegistry().registerGlobal(PlotEnterEvent.class, this::onPlotEnter);
    }

    private void onPlotClaim(PlotClaimEvent event) {
        Player player = event.getPlayer();
        Plot plot = event.getPlot();

        // Cancel the claim
        event.setCancelled(true);
    }

    private void onPlotEnter(PlotEnterEvent event) {
        Player player = event.getPlayer();
        Plot toPlot = event.getToPlot();
    }
}

Event Priority

Priorities: FIRST, EARLY, NORMAL, LATE, LAST

Available Events

PlotClaimEvent

Fired when a player claims a plot.

PlotUnclaimEvent

Fired when a player unclaims/deletes a plot.

PlotTransferEvent

Fired when plot ownership is transferred.

PlotMemberAddEvent

Fired when a member is added to a plot (trusted, member, or denied).

PlotMemberRemoveEvent

Fired when a member is removed from a plot.

PlotKickEvent

Fired when a player is kicked from a plot.

PlotFlagChangeEvent

Fired when a plot flag is changed.

PlotAliasChangeEvent

Fired when a plot alias is set or removed.

PlotDescriptionChangeEvent

Fired when a plot description is set or removed.

PlotHomeChangeEvent

Fired when a plot home location is set or removed.

PlotClearEvent

Fired before a plot is cleared (blocks reset to template).

PlotEnterEvent

Fired when a player enters a plot.

PlotLeaveEvent

Fired when a player leaves a plot.

PlotBlockBreakEvent

Fired before a block is broken in a plot.

PlotBlockPlaceEvent

Fired before a block is placed in a plot.

PlotInteractEvent

Fired before interaction in a plot.

PlotWorldCreateEvent

Fired when a plot world is created.

PlotWorldDeleteEvent

Fired when a plot world is deleted.

PlotMergeEvent

Fired when plots are merged.

PlotUnmergeEvent

Fired when plots are unmerged.

PlotListedForSaleEvent

Fired when a plot is listed for sale on the marketplace.

PlotPurchaseEvent

Fired when a plot is purchased from the marketplace.

PlotSaleRemovedEvent

Fired before a sale listing is cancelled.

PlotAPI

High-level public API:

Upcoming API

The following actions are planned for the public PlotAPI in an upcoming release:

  • claimPlot / unclaimPlot

  • transferPlot

  • addMember / removeMember

  • setFlag

  • mergePlots / unmergePlots

Stay tuned for updates.

Plot Roles

Build Permission by Role

Role
Can Build
Condition

OWNER

Yes

Always

TRUSTED

Yes

Always

MEMBER

Yes

Only when owner is online

GUEST

No

-

DENIED

No

Cannot enter plot

Economy Integration

PlotPlus supports custom economy providers for plot claiming costs, refunds, and the marketplace.

Last updated