more possible plugin compatibility?

This commit is contained in:
hyperdefined
2022-12-01 17:56:41 -05:00
parent 98a5f20a86
commit 2e0ee18594
4 changed files with 13 additions and 27 deletions

View File

@@ -44,7 +44,7 @@ public class BlocksMined implements Listener {
this.toolStats = toolStats;
}
@EventHandler(priority = EventPriority.HIGHEST)
@EventHandler(priority = EventPriority.MONITOR)
public void onBreak(BlockBreakEvent event) {
if (event.isCancelled()) {
return;

View File

@@ -47,7 +47,7 @@ public class EntityDamage implements Listener {
this.toolStats = toolStats;
}
@EventHandler(priority = EventPriority.HIGHEST)
@EventHandler(priority = EventPriority.MONITOR)
public void onDamage(EntityDamageByEntityEvent event) {
if (event.isCancelled()) {
return;
@@ -151,7 +151,7 @@ public class EntityDamage implements Listener {
}
}
@EventHandler(priority = EventPriority.LOWEST)
@EventHandler(priority = EventPriority.MONITOR)
public void onDamage(EntityDamageEvent event) {
if (!(event.getEntity() instanceof LivingEntity)) {
return;
@@ -181,7 +181,7 @@ public class EntityDamage implements Listener {
}
}
@EventHandler(priority = EventPriority.LOWEST)
@EventHandler(priority = EventPriority.MONITOR)
public void onDamage(EntityDamageByBlockEvent event) {
if (!(event.getEntity() instanceof LivingEntity)) {
return;

View File

@@ -47,7 +47,7 @@ public class PlayerFish implements Listener {
this.toolStats = toolStats;
}
@EventHandler(priority = EventPriority.HIGHEST)
@EventHandler(priority = EventPriority.MONITOR)
public void onFish(PlayerFishEvent event) {
if (event.isCancelled()) {
return;
@@ -86,8 +86,7 @@ public class PlayerFish implements Listener {
}
// update the fishing rod!
ItemStack finalFishingRod = fishingRod;
Bukkit.getScheduler().runTaskLater(toolStats, () -> updateFishCount(finalFishingRod), 1);
updateFishCount(fishingRod);
// check if the player caught an item
if (event.getCaught() == null) {

View File

@@ -45,7 +45,7 @@ public class SheepShear implements Listener {
this.toolStats = toolStats;
}
@EventHandler(priority = EventPriority.HIGHEST)
@EventHandler(priority = EventPriority.MONITOR)
public void onShear(PlayerInteractEntityEvent event) {
if (event.isCancelled()) {
return;
@@ -93,32 +93,20 @@ public class SheepShear implements Listener {
}
// update the stats
ItemStack newShears = addLore(shears);
if (newShears != null) {
if (isMainHand && isOffHand) {
Bukkit.getScheduler().runTaskLater(toolStats, () -> inventory.setItemInMainHand(newShears), 1);
return;
}
if (isMainHand) {
Bukkit.getScheduler().runTaskLater(toolStats, () -> inventory.setItemInMainHand(newShears), 1);
}
if (isOffHand) {
Bukkit.getScheduler().runTaskLater(toolStats, () -> inventory.setItemInOffHand(newShears), 1);
}
}
ItemStack finalShears = shears;
addLore(finalShears);
}
/**
* Adds tags to shears.
*
* @param oldShears The shears.
* @param newShears The shears.
*/
private ItemStack addLore(ItemStack oldShears) {
ItemStack newShears = oldShears.clone();
private void addLore(ItemStack newShears) {
ItemMeta meta = newShears.getItemMeta();
if (meta == null) {
toolStats.logger.warning(newShears + " does NOT have any meta! Unable to update stats.");
return null;
return;
}
Integer sheepSheared = 0;
PersistentDataContainer container = meta.getPersistentDataContainer();
@@ -139,7 +127,7 @@ public class SheepShear implements Listener {
if (sheepShearedLore == null || sheepShearedLoreRaw == null) {
toolStats.logger.warning("There is no lore message for messages.sheep-sheared!");
return null;
return;
}
List<String> lore;
@@ -169,6 +157,5 @@ public class SheepShear implements Listener {
meta.setLore(lore);
}
newShears.setItemMeta(meta);
return newShears;
}
}