Skip to content

API Documentation

Alex edited this page Jan 14, 2022 · 70 revisions
Clone this wiki locally

JavaDoc

Core Module Javadocs: https://javadoc.io/doc/com.plotsquared/PlotSquared-Core/latest/index.html
Bukkit Javadocs: https://javadoc.io/doc/com.plotsquared/PlotSquared-Bukkit/latest/index.html
Aggregated Javadocs: https://ci.athion.net/job/PlotSquared-v6-Javadocs/javadoc/

Gradle is the recommended when working with PlotSquared. Ensure the toolchain points to Java 16 or higher.

If you are looking for snapshots, add the repository of S01 OSS Sonatype to the repositories' block.

Gradle - PlotSquared Core

If you need to access the Bukkit module of PlotSquared, copy the example below.

repositories {
    mavenCentral()
}

dependencies {
    compileOnly("com.plotsquared:PlotSquared-Core:6.3.0") // PlotSquared Core API
}

Gradle - PlotSquared Core and Bukkit

repositories {
    mavenCentral()
}

dependencies {
    compileOnly("com.plotsquared:PlotSquared-Core:6.3.0") // PlotSquared Core API
    compileOnly("com.plotsquared:PlotSquared-Bukkit:6.3.0") { isTransitive = false } // PlotSquared Bukkit API
}

Maven - PlotSquared Core

<!-- PlotSquared Core API -->
<dependency>
    <groupId>com.plotsquared</groupId>
    <artifactId>PlotSquared-Core</artifactId>
    <version>6.3.0</version>
    <scope>provided</scope>
</dependency>

Maven - PlotSquared Core and Bukkit

<!-- PlotSquared Core API -->
<dependency>
    <groupId>com.plotsquared</groupId>
    <artifactId>PlotSquared-Core</artifactId>
    <version>6.3.0</version>
    <scope>provided</scope>
</dependency>

<!-- PlotSquared Bukkit API -->
<dependency>
    <groupId>com.plotsquared</groupId>
    <artifactId>PlotSquared-Bukkit</artifactId>
    <version>6.3.0</version>
    <scope>provided</scope>
    <exclusions>
        <exclusion>
            <artifactId>PlotSquared-Core</artifactId>
            <groupId>*</groupId>
        </exclusion>
    </exclusions>
</dependency>

Useful classes for PlotSquared

Tutorials

Tip: If you have made a tutorial, or an addon for PlotSquared, and want us to link it here, please create an issue. We'd really appreciate it!

Terminology

Plot area

A plot area is any area that PlotSquared will manage/handle. If this is an infinite plot world, the entire world is considered to be a plot area. If you use plot clusters, then only part of the world will be a plot area, and anything outside this area will not be handled by PlotSquared.

See: PlotAreaManager.java#getPlotAreaByString(...)

Clusters

Clusters can be created within existing plot areas, or they can be created in a previously non-plot world, which will in turn create it's own plot area.

See: PlotCluster.java See: PlotSquared.java

Road

A road is what separates each plot, and includes the wall around each plot. Attempting to get a plot at this location will return null.

See: Location.java#isPlotRoad(...)

Plot

A plot can be claimed or unclaimed. Getting a plot at a location where one isn't claimed will return a new unowned plot object.

See: PlotArea.java#getPlots(...)