From 2228e45ed439c12bc3983fb930675ecaa0676e45 Mon Sep 17 00:00:00 2001 From: Stijn Date: Wed, 31 Aug 2022 20:00:36 +0200 Subject: [PATCH] Send different message for not having enough items/money --- .../java/com/alttd/playershops/config/ShopTypeConfig.java | 4 ++++ .../com/alttd/playershops/listener/TransactionListener.java | 3 +++ src/main/java/com/alttd/playershops/shop/PlayerShop.java | 2 +- .../java/com/alttd/playershops/shop/TransactionError.java | 1 + 4 files changed, 9 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/alttd/playershops/config/ShopTypeConfig.java b/src/main/java/com/alttd/playershops/config/ShopTypeConfig.java index 95521e7..6bba796 100644 --- a/src/main/java/com/alttd/playershops/config/ShopTypeConfig.java +++ b/src/main/java/com/alttd/playershops/config/ShopTypeConfig.java @@ -55,6 +55,7 @@ public class ShopTypeConfig { public String playerInventoryFull = "You do not have enough space in your inventory to buy from this shop."; public String playerNoFunds = "You do not have sufficient funds to trade with this shop."; + public String playerNoItems = "You do not have sufficient items to trade with this shop."; public String playerBought = "You bought (s) from for ."; public String playerSold = "You sold (s) to for ."; public String shopBought = " sold (s) to you for ."; @@ -66,6 +67,9 @@ public class ShopTypeConfig { private void transactionMessages() { playerInventoryFull = getString("transaction.player-inventory-full", playerInventoryFull); playerNoFunds = getString("transaction.player-no-funds", playerNoFunds); + playerNoItems = getString("transaction.player-no-items", playerNoItems); + playerBought = getString("transaction.player-bought", playerBought); + playerSold = getString("transaction.player-sold", playerSold); shopInventoryFull = getString("transaction.shop-inventory-full", shopInventoryFull); shopNoStock = getString("transaction.shop-no-stock", shopNoStock); yourShopNoFunds = getString("transaction.your-shop-no-funds", yourShopNoFunds); diff --git a/src/main/java/com/alttd/playershops/listener/TransactionListener.java b/src/main/java/com/alttd/playershops/listener/TransactionListener.java index 8c5c9a8..f3dbe71 100644 --- a/src/main/java/com/alttd/playershops/listener/TransactionListener.java +++ b/src/main/java/com/alttd/playershops/listener/TransactionListener.java @@ -123,6 +123,9 @@ public class TransactionListener extends EventListener { case INSUFFICIENT_FUNDS_PLAYER -> { player.sendMiniMessage(shop.getType().getShopTypeConfig().playerNoFunds, placeholders); } + case INSUFFICIENT_ITEMS_PLAYER -> { + player.sendMiniMessage(shop.getType().getShopTypeConfig().playerNoItems, placeholders); + } case INVENTORY_FULL_SHOP -> { Player shopOwner = Bukkit.getPlayer(shop.getOwnerUUID()); if (shopOwner != null && notifyOwner(shop)) { diff --git a/src/main/java/com/alttd/playershops/shop/PlayerShop.java b/src/main/java/com/alttd/playershops/shop/PlayerShop.java index 6e4e0f1..3285486 100644 --- a/src/main/java/com/alttd/playershops/shop/PlayerShop.java +++ b/src/main/java/com/alttd/playershops/shop/PlayerShop.java @@ -252,7 +252,7 @@ public class PlayerShop { int playerItems = InventoryUtils.countItems(player.getInventory(), itemStack); if (playerItems < itemStack.getAmount()) - return TransactionError.INSUFFICIENT_FUNDS_PLAYER; + return TransactionError.INSUFFICIENT_ITEMS_PLAYER; boolean hasFunds = EconomyUtils.hasSufficientFunds(this, price); if (!hasFunds) diff --git a/src/main/java/com/alttd/playershops/shop/TransactionError.java b/src/main/java/com/alttd/playershops/shop/TransactionError.java index 235258a..6c87e7e 100644 --- a/src/main/java/com/alttd/playershops/shop/TransactionError.java +++ b/src/main/java/com/alttd/playershops/shop/TransactionError.java @@ -4,6 +4,7 @@ public enum TransactionError { CANCELLED, INSUFFICIENT_FUNDS_SHOP, INSUFFICIENT_FUNDS_PLAYER, + INSUFFICIENT_ITEMS_PLAYER, INVENTORY_FULL_SHOP, INVENTORY_FULL_PLAYER, PLAYER_OFFLINE,