diff --git a/MoneyFromMobs/src/me/chocolf/moneyfrommobs/listeners/HopperListeners.java b/MoneyFromMobs/src/me/chocolf/moneyfrommobs/listeners/HopperListeners.java index a681e72..7f0cd34 100644 --- a/MoneyFromMobs/src/me/chocolf/moneyfrommobs/listeners/HopperListeners.java +++ b/MoneyFromMobs/src/me/chocolf/moneyfrommobs/listeners/HopperListeners.java @@ -35,9 +35,15 @@ public HopperListeners(MoneyFromMobs plugin){ @EventHandler public void onHopperPickupItem(InventoryPickupItemEvent e) { + if (!plugin.getDropsManager().doesMoneyDropOnGround()) { + return; + } + PickUpManager pickUpManager = plugin.getPickUpManager(); + if (pickUpManager.getWhoHopperGivesMoneyTo().equalsIgnoreCase("NONE")) { + return; + } Item item = e.getItem(); ItemStack itemStack = item.getItemStack(); - PickUpManager pickUpManager = plugin.getPickUpManager(); if (pickUpManager.isMoneyPickedUp(itemStack)){ e.setCancelled(true); // checks if user is using 1.14+ and config option is set to PLACER diff --git a/MoneyFromMobs/src/me/chocolf/moneyfrommobs/listeners/OnJoinListener.java b/MoneyFromMobs/src/me/chocolf/moneyfrommobs/listeners/OnJoinListener.java index b6a0e16..af93554 100644 --- a/MoneyFromMobs/src/me/chocolf/moneyfrommobs/listeners/OnJoinListener.java +++ b/MoneyFromMobs/src/me/chocolf/moneyfrommobs/listeners/OnJoinListener.java @@ -10,9 +10,13 @@ import me.chocolf.moneyfrommobs.managers.MessageManager; import me.chocolf.moneyfrommobs.utils.UpdateChecker; +import java.time.Duration; +import java.time.Instant; + public class OnJoinListener implements Listener{ - MoneyFromMobs plugin; + private final MoneyFromMobs plugin; + private Instant lastCheckAt; public OnJoinListener(MoneyFromMobs plugin) { this.plugin = plugin; @@ -21,14 +25,22 @@ public OnJoinListener(MoneyFromMobs plugin) { @EventHandler public void onPlayerJoin(PlayerJoinEvent e) { - Bukkit.getScheduler().runTaskLaterAsynchronously(plugin, () -> { + if (!e.getPlayer().isOp()) { + return; + } + if (lastCheckAt != null && Duration.between(lastCheckAt, Instant.now()).toMinutes() < 30) { + return; + } + lastCheckAt = Instant.now(); + Bukkit.getScheduler().runTaskAsynchronously(plugin, () -> { + if (!UpdateChecker.checkForUpdate()) { + return; + } Player p = e.getPlayer(); - if (p.isOp() && UpdateChecker.checkForUpdate()) { - p.sendMessage(""); - p.sendMessage(MessageManager.applyColour("&aUpdate Available for &lMoneyFromMobs&a: ")); - p.sendMessage(MessageManager.applyColour("https://www.spigotmc.org/resources/money-from-mobs.79137/")); - p.sendMessage(""); - } - }, 0L); + p.sendMessage(""); + p.sendMessage(MessageManager.applyColour("&aUpdate Available for &lMoneyFromMobs&a: ")); + p.sendMessage(MessageManager.applyColour("https://www.spigotmc.org/resources/money-from-mobs.79137/")); + p.sendMessage(""); + }); } } diff --git a/MoneyFromMobs/src/me/chocolf/moneyfrommobs/listeners/PaperListeners.java b/MoneyFromMobs/src/me/chocolf/moneyfrommobs/listeners/PaperListeners.java index 811cbe1..00c9efe 100644 --- a/MoneyFromMobs/src/me/chocolf/moneyfrommobs/listeners/PaperListeners.java +++ b/MoneyFromMobs/src/me/chocolf/moneyfrommobs/listeners/PaperListeners.java @@ -25,6 +25,10 @@ public PaperListeners(MoneyFromMobs plugin) { @EventHandler public void onAttemptToPickUp(PlayerAttemptPickupItemEvent e) { + if (!plugin.getDropsManager().doesMoneyDropOnGround()) { + return; + } + PickUpManager pickUpManager = plugin.getPickUpManager(); // gets item picked up Item item = e.getItem(); diff --git a/MoneyFromMobs/src/me/chocolf/moneyfrommobs/listeners/PickUpListeners.java b/MoneyFromMobs/src/me/chocolf/moneyfrommobs/listeners/PickUpListeners.java index 9a3292e..4265dea 100644 --- a/MoneyFromMobs/src/me/chocolf/moneyfrommobs/listeners/PickUpListeners.java +++ b/MoneyFromMobs/src/me/chocolf/moneyfrommobs/listeners/PickUpListeners.java @@ -12,7 +12,7 @@ import java.util.List; -public class PickUpListeners implements Listener{ +public class PickUpListeners implements Listener { private final MoneyFromMobs plugin; @@ -21,9 +21,12 @@ public PickUpListeners(MoneyFromMobs plugin) { Bukkit.getPluginManager().registerEvents(this, plugin); } - @EventHandler public void onPickup(EntityPickupItemEvent e) { + if (!plugin.getDropsManager().doesMoneyDropOnGround()) { + return; + } + PickUpManager pickUpManager = plugin.getPickUpManager(); // gets item picked up Item item = e.getItem(); diff --git a/MoneyFromMobs/src/me/chocolf/moneyfrommobs/listeners/PlaceMinecartHopperListener.java b/MoneyFromMobs/src/me/chocolf/moneyfrommobs/listeners/PlaceMinecartHopperListener.java index c16e63e..26888c2 100644 --- a/MoneyFromMobs/src/me/chocolf/moneyfrommobs/listeners/PlaceMinecartHopperListener.java +++ b/MoneyFromMobs/src/me/chocolf/moneyfrommobs/listeners/PlaceMinecartHopperListener.java @@ -12,12 +12,14 @@ import org.bukkit.persistence.PersistentDataType; public class PlaceMinecartHopperListener implements Listener { + private final MoneyFromMobs plugin; public PlaceMinecartHopperListener(MoneyFromMobs plugin){ this.plugin = plugin; Bukkit.getPluginManager().registerEvents(this, plugin); } + @EventHandler private void onHopperMinecartPlaced(EntityPlaceEvent e){ Entity hopperMinecart = e.getEntity(); diff --git a/MoneyFromMobs/src/me/chocolf/moneyfrommobs/listeners/PlaceholderAPIListener.java b/MoneyFromMobs/src/me/chocolf/moneyfrommobs/listeners/PlaceholderAPIListener.java index 77ff7e4..0b0db89 100644 --- a/MoneyFromMobs/src/me/chocolf/moneyfrommobs/listeners/PlaceholderAPIListener.java +++ b/MoneyFromMobs/src/me/chocolf/moneyfrommobs/listeners/PlaceholderAPIListener.java @@ -11,12 +11,10 @@ import me.chocolf.moneyfrommobs.MoneyFromMobs; import me.chocolf.moneyfrommobs.api.events.GiveMoneyEvent; -public class PlaceholderAPIListener implements Listener{ +public class PlaceholderAPIListener implements Listener { private final HashMap latestPickedUp = new HashMap<>(); - - public PlaceholderAPIListener(MoneyFromMobs plugin) { Bukkit.getPluginManager().registerEvents(this, plugin); } @@ -24,13 +22,10 @@ public PlaceholderAPIListener(MoneyFromMobs plugin) { @EventHandler public void onPickUpMoney(GiveMoneyEvent e) { UUID uuid = e.getPlayer().getUniqueId(); - latestPickedUp.remove(uuid); - latestPickedUp.put(uuid, e.getAmount()); } public Map getLatestPickedUp(){ return latestPickedUp; } - } diff --git a/MoneyFromMobs/src/me/chocolf/moneyfrommobs/listeners/WorldGuardListener.java b/MoneyFromMobs/src/me/chocolf/moneyfrommobs/listeners/WorldGuardListener.java index 870d4c0..a4ea1c7 100644 --- a/MoneyFromMobs/src/me/chocolf/moneyfrommobs/listeners/WorldGuardListener.java +++ b/MoneyFromMobs/src/me/chocolf/moneyfrommobs/listeners/WorldGuardListener.java @@ -18,9 +18,9 @@ import me.chocolf.moneyfrommobs.MoneyFromMobs; import me.chocolf.moneyfrommobs.api.events.AttemptToDropMoneyEvent; -public class WorldGuardListener implements Listener{ +public class WorldGuardListener implements Listener { - MoneyFromMobs plugin; + private final MoneyFromMobs plugin; public WorldGuardListener(MoneyFromMobs plugin) { this.plugin = plugin; diff --git a/MoneyFromMobs/src/me/chocolf/moneyfrommobs/runnables/NearEntitiesRunnable.java b/MoneyFromMobs/src/me/chocolf/moneyfrommobs/runnables/NearEntitiesRunnable.java index 29b6af4..5a769b6 100644 --- a/MoneyFromMobs/src/me/chocolf/moneyfrommobs/runnables/NearEntitiesRunnable.java +++ b/MoneyFromMobs/src/me/chocolf/moneyfrommobs/runnables/NearEntitiesRunnable.java @@ -22,6 +22,10 @@ public NearEntitiesRunnable(MoneyFromMobs plugin) { } public void run() { + if (!plugin.getDropsManager().doesMoneyDropOnGround()) { + return; + } + for ( Player p : Bukkit.getOnlinePlayers()) { if (p.getInventory().firstEmpty() == -1) { for ( Entity entity : p.getNearbyEntities(radius, radius, radius)) { diff --git a/MoneyFromMobs/src/resources/plugin.yml b/MoneyFromMobs/src/resources/plugin.yml index 14d7253..5ca1a11 100644 --- a/MoneyFromMobs/src/resources/plugin.yml +++ b/MoneyFromMobs/src/resources/plugin.yml @@ -1,6 +1,6 @@ main: me.chocolf.moneyfrommobs.MoneyFromMobs name: MoneyFromMobs -version: 4.9 +version: ${project.version} api-version: 1.13 author: Chocolf description: Makes mobs drop money with looting multiplier diff --git a/pom.xml b/pom.xml index 57c9044..eeb5020 100644 --- a/pom.xml +++ b/pom.xml @@ -2,12 +2,13 @@ 4.0.0 MoneyFromMobs MoneyFromMobs - 4.8.1 + 4.9.1-SNAPSHOT MoneyFromMobs Makes mobs drop money with looting multiplier 17 17 + UTF-8 MoneyFromMobs/src @@ -16,16 +17,13 @@ maven-compiler-plugin 3.8.1 - - 17 - 17 - MoneyFromMobs/src/resources + true @@ -111,6 +109,7 @@ dev.rosewood rosestacker 1.5.7 + provided io.lumine @@ -142,10 +141,5 @@ 5.8 provided - - com.github.chocolf - MoneyFromMobs - 4.82 - \ No newline at end of file