PlotSquared/Core/src/main/java/com/plotsquared/core/events/PlayerAutoPlotEvent.java

119 lines
3.6 KiB
Java
Raw Normal View History

/*
* _____ _ _ _____ _
* | __ \| | | | / ____| | |
* | |__) | | ___ | |_| (___ __ _ _ _ __ _ _ __ ___ __| |
* | ___/| |/ _ \| __|\___ \ / _` | | | |/ _` | '__/ _ \/ _` |
* | | | | (_) | |_ ____) | (_| | |_| | (_| | | | __/ (_| |
* |_| |_|\___/ \__|_____/ \__, |\__,_|\__,_|_| \___|\__,_|
* | |
* |_|
* PlotSquared plot management system for Minecraft
* Copyright (C) 2021 IntellectualSites
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
2020-08-15 14:59:29 +02:00
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*/
2020-04-15 21:26:54 +02:00
package com.plotsquared.core.events;
2020-04-15 21:26:54 +02:00
import com.plotsquared.core.command.Claim;
import com.plotsquared.core.player.PlotPlayer;
2020-04-30 12:01:52 +02:00
import com.plotsquared.core.plot.PlotArea;
import org.checkerframework.checker.nullness.qual.Nullable;
/**
2021-08-24 15:34:21 +02:00
* PlayerAutoPlotEvent returns null for {@link PlotEvent#getPlot()} as the event is fired before the plot is chosen.
*/
public class PlayerAutoPlotEvent extends PlotEvent implements CancellablePlotEvent {
2020-07-17 17:24:45 +02:00
private final PlotPlayer<?> player;
private final PlotArea plotArea;
private Result eventResult;
private String schematic;
2020-07-17 17:24:45 +02:00
private int size_x;
private int size_z;
/**
* PlayerAutoPlotEvent: called when a player attempts to auto claim a plot.
*
* @param player The player attempting to auto claim
* @param plotArea The applicable plot area
* @param schematic The schematic defined or null
* @param size_x The size of the auto area
* @param size_z The size of the auto area
*/
public PlayerAutoPlotEvent(
PlotPlayer<?> player, PlotArea plotArea, @Nullable String schematic,
int size_x, int size_z
) {
super(null);
this.player = player;
this.plotArea = plotArea;
this.schematic = schematic;
this.size_x = size_x;
this.size_z = size_z;
}
/**
2020-04-11 01:26:07 +02:00
* Obtain the schematic string as used by the {@link Claim} command or null.
*
* @return schematic string
*/
public @Nullable String getSchematic() {
return this.schematic;
}
/**
* Set the schematic string used in the claim.
2020-08-16 12:34:08 +02:00
*
* @param schematic the schematic name
*/
public void setSchematic(String schematic) {
this.schematic = schematic;
}
@Override
public Result getEventResult() {
return eventResult;
}
@Override
public void setEventResult(Result e) {
this.eventResult = e;
}
2020-07-17 17:24:45 +02:00
public PlotPlayer<?> getPlayer() {
return this.player;
}
public PlotArea getPlotArea() {
return this.plotArea;
}
public int getSize_x() {
return this.size_x;
}
public void setSize_x(int size_x) {
this.size_x = size_x;
}
public int getSize_z() {
return this.size_z;
}
2020-07-17 17:24:45 +02:00
public void setSize_z(int size_z) {
this.size_z = size_z;
}
}