Skip to content

Commit 2dfc9a8

Browse files
[UP] listener from joinPermsCheck event to PermsCheck event
#29
1 parent 1a647a7 commit 2dfc9a8

File tree

2 files changed

+34
-6
lines changed

2 files changed

+34
-6
lines changed

src/main/java/world/bentobox/upgrades/UpgradesAddon.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -110,7 +110,7 @@ public void onEnable() {
110110
this.registerListener(new IslandChangeListener(this));
111111

112112
if (this.isLimitsProvided())
113-
this.registerListener(new JoinPermCheckListener());
113+
this.registerListener(new JoinPermCheckListener(this));
114114

115115
getPlugin().getFlagsManager().registerFlag(UpgradesAddon.UPGRADES_RANK_RIGHT);
116116

Original file line numberDiff line numberDiff line change
@@ -1,20 +1,48 @@
11
package world.bentobox.upgrades.listeners;
22

3+
import org.bukkit.Material;
4+
import org.bukkit.World;
5+
import org.bukkit.entity.EntityType;
36
import org.bukkit.event.EventHandler;
47
import org.bukkit.event.EventPriority;
58
import org.bukkit.event.Listener;
69

7-
import world.bentobox.limits.events.LimitsJoinPermCheckEvent;
10+
import world.bentobox.limits.Settings.EntityGroup;
11+
import world.bentobox.limits.events.LimitsPermCheckEvent;
12+
import world.bentobox.upgrades.UpgradesAddon;
813

914
public class JoinPermCheckListener implements Listener {
1015

11-
public JoinPermCheckListener() {
16+
public JoinPermCheckListener(UpgradesAddon addon) {
17+
this.addon = addon;
1218
}
1319

1420
@EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = false)
15-
public void onLimitsJoinPermCheckEvent(LimitsJoinPermCheckEvent e) {
16-
// Stop LimitsJoinPermCheck else reset limits upgrades when player join
17-
e.setCancelled(true);
21+
public void onLimitsPermCheckEvent(LimitsPermCheckEvent e) {
22+
Material block = e.getMaterial();
23+
EntityType et = e.getEntityType();
24+
EntityGroup entgroup = e.getEntityGroup();
25+
World world = e.getPlayer().getWorld();
26+
27+
if (block != null) {
28+
if (this.addon.getUpgradesManager().getAllBlockLimitsUpgradeTiers(world).containsKey(block)) {
29+
e.setCancelled(true);
30+
}
31+
}
32+
33+
if (et != null) {
34+
if (this.addon.getUpgradesManager().getAllEntityLimitsUpgradeTiers(world).containsKey(et)) {
35+
e.setCancelled(true);
36+
}
37+
}
38+
39+
if (entgroup != null) {
40+
if (this.addon.getUpgradesManager().getAllEntityGroupLimitsUpgradeTiers(world).containsKey(entgroup.getName())) {
41+
e.setCancelled(true);
42+
}
43+
}
1844
}
1945

46+
UpgradesAddon addon;
47+
2048
}

0 commit comments

Comments
 (0)