diff --git a/src/main/java/com/alttd/GUI/windows/BuyGUI.java b/src/main/java/com/alttd/GUI/windows/BuyGUI.java index 3a5a236..84249ad 100644 --- a/src/main/java/com/alttd/GUI/windows/BuyGUI.java +++ b/src/main/java/com/alttd/GUI/windows/BuyGUI.java @@ -22,15 +22,13 @@ import org.bukkit.entity.Player; import org.bukkit.inventory.ItemStack; import org.bukkit.inventory.meta.ItemMeta; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; -import java.util.Objects; +import java.util.*; public class BuyGUI extends GUIMerchant { private static final MiniMessage miniMessage = MiniMessage.miniMessage(); private static final ItemStack confirm; + private long lastClicked = 0; static { ItemStack itemStack = new ItemStack(Material.EMERALD_BLOCK); @@ -82,6 +80,13 @@ public class BuyGUI extends GUIMerchant { } private void buy2(Player player, Purchase purchase, EconUser econUser, VillagerType villagerType, int oldPoints, Price price) { + long newTime = new Date().getTime(); + if ((newTime - 120) > lastClicked) + lastClicked = newTime; + else { + player.sendMiniMessage(Config.CLICKING_TOO_FAST, null); + return; + } Economy econ = VillagerUI.getInstance().getEconomy(); double balance = econ.getBalance(player); diff --git a/src/main/java/com/alttd/GUI/windows/SellGUI.java b/src/main/java/com/alttd/GUI/windows/SellGUI.java index b011d41..51b98cd 100644 --- a/src/main/java/com/alttd/GUI/windows/SellGUI.java +++ b/src/main/java/com/alttd/GUI/windows/SellGUI.java @@ -21,20 +21,18 @@ import org.bukkit.Material; import org.bukkit.entity.Player; import org.bukkit.inventory.Inventory; import org.bukkit.inventory.ItemStack; -import org.bukkit.inventory.MerchantInventory; import org.bukkit.inventory.PlayerInventory; import org.bukkit.inventory.meta.ItemMeta; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; -import java.util.Objects; +import java.util.*; public class SellGUI extends GUIMerchant { private static final MiniMessage miniMessage = MiniMessage.miniMessage(); private static final ItemStack confirm; + private long lastClicked = 0; + static { ItemStack itemStack = new ItemStack(Material.EMERALD_BLOCK); ItemMeta itemMeta = itemStack.getItemMeta(); @@ -87,6 +85,13 @@ public class SellGUI extends GUIMerchant { } private void sell2(Player player, Purchase purchase, EconUser econUser, VillagerType villagerType, int oldPoints, Price price, boolean bulk) { + long newTime = new Date().getTime(); + if ((newTime - 120) > lastClicked) + lastClicked = newTime; + else { + player.sendMiniMessage(Config.CLICKING_TOO_FAST, null); + return; + } PlayerInventory inventory = player.getInventory(); if (!inventory.containsAtLeast(new ItemStack(purchase.material()), purchase.amount())) { player.sendMiniMessage(Config.NOT_ENOUGH_ITEMS, List.of( diff --git a/src/main/java/com/alttd/config/Config.java b/src/main/java/com/alttd/config/Config.java index dc959c5..0491690 100644 --- a/src/main/java/com/alttd/config/Config.java +++ b/src/main/java/com/alttd/config/Config.java @@ -57,6 +57,8 @@ public final class Config extends AbstractConfig { public static String HELP_MESSAGE_WRAPPER = "VillagerShopUI help:\n"; public static String HELP_MESSAGE = "Show this menu: /villagerui help"; public static String POINTS_MESSAGE = "Show points: /villagerui points [villagerType]"; + public static String BUY_MESSAGE = "Check where/if you can buy an item: /villagerui buy "; + public static String SELL_MESSAGE = "Check where/if you can sell an item: /villagerui sell "; public static String RELOAD_MESSAGE = "Reload configs: /villagerui reload"; public static String CREATE_VILLAGER_MESSAGE = "Create a new trading villager: /villagerui createvillager "; public static String REMOVE_VILLAGER_MESSAGE = "Removes all existing trading villagers in a 2 block radius: /villagerui removevillager"; @@ -65,6 +67,8 @@ public final class Config extends AbstractConfig { HELP_MESSAGE_WRAPPER = config.getString("help.help-wrapper", HELP_MESSAGE_WRAPPER); HELP_MESSAGE = config.getString("help.help", HELP_MESSAGE); POINTS_MESSAGE = config.getString("help.points", POINTS_MESSAGE); + BUY_MESSAGE = config.getString("help.buy", BUY_MESSAGE); + SELL_MESSAGE = config.getString("help.sell", SELL_MESSAGE); RELOAD_MESSAGE = config.getString("help.reload", RELOAD_MESSAGE); CREATE_VILLAGER_MESSAGE = config.getString("help.create-villager", CREATE_VILLAGER_MESSAGE); REMOVE_VILLAGER_MESSAGE = config.getString("help.remove-villager", REMOVE_VILLAGER_MESSAGE);