Skip to content
This repository was archived by the owner on Aug 13, 2022. It is now read-only.

Commit bcb1f2b

Browse files
authored
PWI patch (#17)
1 parent 733226a commit bcb1f2b

File tree

1 file changed

+12
-2
lines changed

1 file changed

+12
-2
lines changed

WGEF-Core/src/main/java/io/github/invvk/wgef/listeners/DeathListener.java

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,10 @@
44
import io.github.invvk.wgef.WGEFPlugin;
55
import io.github.invvk.wgef.abstraction.WGEFUtils;
66
import io.github.invvk.wgef.abstraction.flags.WGEFlags;
7+
import org.bukkit.Bukkit;
78
import org.bukkit.entity.Player;
89
import org.bukkit.event.EventHandler;
10+
import org.bukkit.event.EventPriority;
911
import org.bukkit.event.Listener;
1012
import org.bukkit.event.entity.PlayerDeathEvent;
1113

@@ -17,7 +19,7 @@ public DeathListener(WGEFPlugin plugin) {
1719
this.plugin = plugin;
1820
}
1921

20-
@EventHandler
22+
@EventHandler(priority = EventPriority.LOW)
2123
public void onPlayerDeathEvent(PlayerDeathEvent event) {
2224
Player player = event.getEntity();
2325

@@ -31,12 +33,20 @@ public void onPlayerDeathEvent(PlayerDeathEvent event) {
3133
event.getDrops().clear();
3234
}
3335
}
36+
}
3437

38+
@EventHandler(priority = EventPriority.LOWEST)
39+
public void onDeath(PlayerDeathEvent event) {
40+
final Player player = event.getEntity();
41+
ApplicableRegionSet regions = this.plugin.getFork().getRegionContainer().createQuery().getApplicableRegions(player.getLocation());
3542
Boolean keepExp = WGEFUtils.queryValue(player, player.getWorld(), regions.getRegions(), WGEFlags.KEEP_EXP);
3643
if (keepExp != null) {
3744
event.setKeepLevel(keepExp);
38-
3945
if (keepExp) {
46+
if (Bukkit.getPluginManager().getPlugin("PerWorldInventory") != null) {
47+
event.setNewExp(event.getDroppedExp());
48+
event.setNewLevel(player.getLevel());
49+
}
4050
event.setDroppedExp(0);
4151
}
4252
}

0 commit comments

Comments
 (0)