66 lines
1.6 KiB
Java
66 lines
1.6 KiB
Java
package me.ryanhamshire.GriefPrevention.events;
|
|
|
|
import org.bukkit.event.Cancellable;
|
|
import org.bukkit.event.Event;
|
|
import org.bukkit.event.HandlerList;
|
|
import org.bukkit.event.block.BlockBreakEvent;
|
|
import org.jetbrains.annotations.NotNull;
|
|
|
|
/**
|
|
* An {@link Event} called when GriefPrevention prevents a {@link BlockBreakEvent}.
|
|
* If cancelled, GriefPrevention will allow the event to complete normally.
|
|
*/
|
|
public class PreventBlockBreakEvent extends Event implements Cancellable
|
|
{
|
|
private final @NotNull BlockBreakEvent innerEvent;
|
|
|
|
/**
|
|
* Construct a new {@code PreventBlockBreakEvent}.
|
|
*
|
|
* @param innerEvent the inner {@link BlockBreakEvent}
|
|
*/
|
|
public PreventBlockBreakEvent(@NotNull BlockBreakEvent innerEvent)
|
|
{
|
|
this.innerEvent = innerEvent;
|
|
}
|
|
|
|
/**
|
|
* Get the {@link BlockBreakEvent} being cancelled by GriefPrevention.
|
|
*
|
|
* @return the inner {@code BlockBreakEvent}
|
|
*/
|
|
public @NotNull BlockBreakEvent getInnerEvent()
|
|
{
|
|
return this.innerEvent;
|
|
}
|
|
|
|
// Listenable event requirements
|
|
private static final HandlerList HANDLERS = new HandlerList();
|
|
|
|
public static HandlerList getHandlerList()
|
|
{
|
|
return HANDLERS;
|
|
}
|
|
|
|
@Override
|
|
public @NotNull HandlerList getHandlers()
|
|
{
|
|
return HANDLERS;
|
|
}
|
|
|
|
// Cancellable requirements
|
|
private boolean cancelled = false;
|
|
|
|
@Override
|
|
public boolean isCancelled()
|
|
{
|
|
return cancelled;
|
|
}
|
|
|
|
@Override
|
|
public void setCancelled(boolean cancelled)
|
|
{
|
|
this.cancelled = cancelled;
|
|
}
|
|
|
|
} |