mirror of
https://github.com/songoda/UltimateTimber.git
synced 2024-09-27 13:22:39 +02:00
68 lines
1.7 KiB
Java
68 lines
1.7 KiB
Java
|
package com.craftaro.ultimatetimber.events;
|
||
|
|
||
|
import org.bukkit.entity.Entity;
|
||
|
import org.bukkit.entity.FallingBlock;
|
||
|
import org.bukkit.entity.Player;
|
||
|
import org.bukkit.event.Cancellable;
|
||
|
import org.bukkit.event.HandlerList;
|
||
|
import org.bukkit.event.player.PlayerEvent;
|
||
|
|
||
|
public class TreeDamageEvent extends PlayerEvent implements Cancellable {
|
||
|
|
||
|
private boolean cancelled = false;
|
||
|
private FallingBlock blockAttacker = null;
|
||
|
private Player playerAttacker = null;
|
||
|
private static final HandlerList handlers = new HandlerList();
|
||
|
|
||
|
/**
|
||
|
* Represents a TreeDamage event.
|
||
|
*/
|
||
|
public TreeDamageEvent(FallingBlock attacker, Player victim) {
|
||
|
super(victim);
|
||
|
this.blockAttacker = attacker;
|
||
|
}
|
||
|
|
||
|
// Hoping this one is used whenever possible
|
||
|
/**
|
||
|
* Represents a TreeDamage event.
|
||
|
*/
|
||
|
public TreeDamageEvent(Player attacker, Player victim) {
|
||
|
super(victim);
|
||
|
this.playerAttacker = attacker;
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* @return the attacker as either FallingBlock or Player
|
||
|
*/
|
||
|
public Entity getAttacker() {
|
||
|
if (this.playerAttacker != null)
|
||
|
return this.playerAttacker;
|
||
|
if (this.blockAttacker != null)
|
||
|
return this.blockAttacker;
|
||
|
|
||
|
return null;
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* Get Player damaged by this event. This method is only here for clarification
|
||
|
*/
|
||
|
public Player getVictim() {
|
||
|
return this.getPlayer();
|
||
|
}
|
||
|
|
||
|
@Override
|
||
|
public HandlerList getHandlers() {
|
||
|
return handlers;
|
||
|
}
|
||
|
|
||
|
public static HandlerList getHandlerList() {return handlers;}
|
||
|
|
||
|
@Override
|
||
|
public boolean isCancelled() {
|
||
|
return this.cancelled;
|
||
|
}
|
||
|
|
||
|
@Override
|
||
|
public void setCancelled(boolean cancelState) {this.cancelled = cancelState;}
|
||
|
}
|