Skip to content

Commit c25813f

Browse files
author
Jan Kluka
committed
1.5
Implemented PlayerPickaxeLevelUpEvent
1 parent 68e9d3d commit c25813f

1 file changed

Lines changed: 75 additions & 0 deletions

File tree

Lines changed: 75 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,75 @@
1+
package dev.drawethree.xprison.api.pickaxelevels.event;
2+
3+
import dev.drawethree.xprison.api.pickaxelevels.model.PickaxeLevel;
4+
import dev.drawethree.xprison.api.shared.events.player.XPrisonPlayerEvent;
5+
import lombok.Getter;
6+
import lombok.Setter;
7+
import org.bukkit.entity.Player;
8+
import org.bukkit.event.Cancellable;
9+
import org.bukkit.event.HandlerList;
10+
import org.jetbrains.annotations.NotNull;
11+
12+
/**
13+
* Event fired when a player levels up their pickaxe.
14+
* <p>
15+
* This event is cancellable; cancelling it will prevent the level-up from being applied.
16+
*/
17+
@Getter
18+
public final class PlayerPickaxeLevelUpEvent extends XPrisonPlayerEvent implements Cancellable {
19+
20+
private static final HandlerList HANDLERS_LIST = new HandlerList();
21+
22+
@Setter
23+
private boolean cancelled;
24+
25+
/**
26+
* The player whose pickaxe level is being upgraded.
27+
*/
28+
private final Player player;
29+
30+
/**
31+
* The previous pickaxe level.
32+
*/
33+
private final PickaxeLevel oldLevel;
34+
35+
/**
36+
* The new pickaxe level.
37+
* Can be modified by listeners.
38+
*/
39+
@Setter
40+
private PickaxeLevel newLevel;
41+
42+
/**
43+
* Constructs a new PlayerPickaxeLevelUpEvent.
44+
*
45+
* @param player the player whose pickaxe is leveling up
46+
* @param oldLevel the previous pickaxe level
47+
* @param newLevel the new pickaxe level
48+
*/
49+
public PlayerPickaxeLevelUpEvent(Player player, PickaxeLevel oldLevel, PickaxeLevel newLevel) {
50+
super(player);
51+
this.player = player;
52+
this.oldLevel = oldLevel;
53+
this.newLevel = newLevel;
54+
}
55+
56+
/**
57+
* Gets the handler list for this event.
58+
*
59+
* @return the handler list
60+
*/
61+
public static HandlerList getHandlerList() {
62+
return HANDLERS_LIST;
63+
}
64+
65+
/**
66+
* Gets the handlers for this event.
67+
*
68+
* @return the handler list
69+
*/
70+
@NotNull
71+
@Override
72+
public HandlerList getHandlers() {
73+
return HANDLERS_LIST;
74+
}
75+
}

0 commit comments

Comments
 (0)