From da5e514422988d3925a9a667a6fce521a0aaca2f Mon Sep 17 00:00:00 2001 From: Teriuihi Date: Sun, 22 Jan 2023 21:37:00 +0100 Subject: [PATCH] Fix incorrect number of arguments in command Fix check stock command checking total items left, not total amount of purchases left --- .../commands/subcommands/CheckStockCommand.java | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/main/java/com/alttd/playershops/commands/subcommands/CheckStockCommand.java b/src/main/java/com/alttd/playershops/commands/subcommands/CheckStockCommand.java index 31f1036..27dfb0b 100644 --- a/src/main/java/com/alttd/playershops/commands/subcommands/CheckStockCommand.java +++ b/src/main/java/com/alttd/playershops/commands/subcommands/CheckStockCommand.java @@ -48,14 +48,14 @@ public class CheckStockCommand implements Subcommand { sender.sendMessage(Util.parseMiniMessage("Only players can use this command.")); return false; } - if (args.length != 2 && args.length != 3) { + if (args.length != 1 && args.length != 2) { player.sendMessage(Util.parseMiniMessage("Invalid command syntax, use /checkstock [minimum stock]")); return false; } int radius; try { - radius = Integer.parseInt(args[1]); + radius = Integer.parseInt(args[0]); } catch (NumberFormatException e) { player.sendMessage(Util.parseMiniMessage("radius has to be a valid number, use /checkstock [minimum stock]")); return false; @@ -66,9 +66,9 @@ public class CheckStockCommand implements Subcommand { return false; } - if (args.length == 3) { + if (args.length == 2) { try { - minimumStock = Integer.parseInt(args[2]); + minimumStock = Integer.parseInt(args[1]); } catch (NumberFormatException e) { player.sendMessage(Util.parseMiniMessage("minimum stock has to be a valid number, use /checkstock [minimum stock]")); return false; @@ -90,12 +90,12 @@ public class CheckStockCommand implements Subcommand { List shops = PlayerShops.getInstance().getShopHandler().getShopsInRadius(x, z, radius); Stream playerShopStream = shops.stream(); if (minimumStock != -1) - playerShopStream = playerShopStream.filter(shop -> shop.getRemainingStock() < minimumStock); + playerShopStream = playerShopStream.filter(shop -> shop.getRemainingStock() / shop.getAmount() < minimumStock); if (!caller.hasPermission(PlayerShopCommand.BASE_PERM + ".checkstock.any")) playerShopStream = playerShopStream.filter(shop -> shop.getOwnerUUID().equals(caller.getUniqueId())); return playerShopStream.map(shop -> { Location signLocation = shop.getSignLocation(); - return new Stock(shop.getRemainingStock(), + return new Stock(shop.getRemainingStock() / shop.getAmount(), signLocation.getBlockX(), signLocation.getBlockY(), signLocation.getBlockZ(),