mirror of
https://github.com/PaperMC/Paper.git
synced 2024-12-30 16:19:03 +01:00
Added BlockIgniteEvent.
By: speakeasy <mekevin1917@gmail.com>
This commit is contained in:
parent
a27364193d
commit
5c0413fb45
2 changed files with 88 additions and 6 deletions
|
@ -1,19 +1,98 @@
|
||||||
package org.bukkit.event.block;
|
package org.bukkit.event.block;
|
||||||
|
|
||||||
|
import org.bukkit.Block;
|
||||||
|
import org.bukkit.Player;
|
||||||
|
import org.bukkit.event.Cancellable;
|
||||||
import org.bukkit.event.Event;
|
import org.bukkit.event.Event;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author durron597
|
* @author SpeaKeasY
|
||||||
*
|
*
|
||||||
|
* Represents a block ignite event.
|
||||||
*/
|
*/
|
||||||
public class BlockIgniteEvent extends Event {
|
public class BlockIgniteEvent extends BlockEvent implements Cancellable {
|
||||||
|
|
||||||
|
private IgniteCause cause;
|
||||||
|
private boolean cancel;
|
||||||
|
private Player thePlayer;
|
||||||
|
private Block theBlock;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param type
|
* @param Block, IgniteCause, Player or null.
|
||||||
*/
|
*/
|
||||||
public BlockIgniteEvent(Type type) {
|
public BlockIgniteEvent(Block theBlock, IgniteCause cause, Player thePlayer) {
|
||||||
super(type);
|
super(Event.Type.BLOCK_IGNITE, theBlock);
|
||||||
// TODO Auto-generated constructor stub
|
this.cause = cause;
|
||||||
|
this.theBlock = theBlock;
|
||||||
|
this.thePlayer = thePlayer;
|
||||||
|
this.cancel = false;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Gets the cancellation state of this event. A cancelled event will not
|
||||||
|
* be executed in the server, but will still pass to other plugins.
|
||||||
|
*
|
||||||
|
* If an ignite event is cancelled, the block will not be ignited.
|
||||||
|
* This will not fire an event.
|
||||||
|
*
|
||||||
|
* @return true if this event is cancelled
|
||||||
|
*/
|
||||||
|
public boolean isCancelled() {
|
||||||
|
return cancel;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Sets the cancellation state of this event. A cancelled event will not
|
||||||
|
* be executed in the server, but will still pass to other plugins.
|
||||||
|
*
|
||||||
|
* If an ignite event is cancelled, the block will not be ignited.
|
||||||
|
* This will not fire an event.
|
||||||
|
*
|
||||||
|
* @param cancel true if you wish to cancel this event
|
||||||
|
*/
|
||||||
|
public void setCancelled(boolean cancel) {
|
||||||
|
this.cancel = cancel;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Gets the cause of block ignite.
|
||||||
|
* @return An IgniteCause value detailing the cause of block ignition.
|
||||||
|
*/
|
||||||
|
public IgniteCause getCause()
|
||||||
|
{
|
||||||
|
return cause;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Gets the player who ignited this block
|
||||||
|
*
|
||||||
|
* @return Player who placed the block, if not ignited by player returns null.
|
||||||
|
*/
|
||||||
|
public Player getPlayer() {
|
||||||
|
return thePlayer;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* An enum to specify the cause of the ignite
|
||||||
|
*/
|
||||||
|
public enum IgniteCause {
|
||||||
|
/**
|
||||||
|
* Block ignition caused by lava.
|
||||||
|
*/
|
||||||
|
LAVA,
|
||||||
|
/**
|
||||||
|
* Block ignition caused by player using flint-and-steel.
|
||||||
|
*/
|
||||||
|
FLINT_AND_STEEL,
|
||||||
|
/**
|
||||||
|
* Block ignition caused by dynamic spreading of fire.
|
||||||
|
*/
|
||||||
|
SPREAD,
|
||||||
|
/**
|
||||||
|
* Block ignition caused by VERY SLOW dynamic spreading of fire.
|
||||||
|
*/
|
||||||
|
SLOW_SPREAD
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -140,6 +140,9 @@ public final class JavaPluginLoader implements PluginLoader {
|
||||||
case LEAVES_DECAY:
|
case LEAVES_DECAY:
|
||||||
trueListener.onLeavesDecay((LeavesDecayEvent)event);
|
trueListener.onLeavesDecay((LeavesDecayEvent)event);
|
||||||
break;
|
break;
|
||||||
|
case BLOCK_IGNITE:
|
||||||
|
trueListener.onBlockIgnite((BlockIgniteEvent)event);
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
} else if(listener instanceof ServerListener) {
|
} else if(listener instanceof ServerListener) {
|
||||||
ServerListener trueListener = (ServerListener)listener;
|
ServerListener trueListener = (ServerListener)listener;
|
||||||
|
|
Loading…
Reference in a new issue