From 5a008748459e230de0e875afff59e3b92c7aca0c Mon Sep 17 00:00:00 2001 From: davidovski Date: Fri, 31 Oct 2025 17:49:48 +0000 Subject: Work on v0.6 --- .../java/net/uomc/mineshaft/farm/FarmCommand.java | 23 ++++++++++++++++------ 1 file changed, 17 insertions(+), 6 deletions(-) (limited to 'src/main/java/net/uomc/mineshaft/farm/FarmCommand.java') diff --git a/src/main/java/net/uomc/mineshaft/farm/FarmCommand.java b/src/main/java/net/uomc/mineshaft/farm/FarmCommand.java index 43b7576..bf700ab 100644 --- a/src/main/java/net/uomc/mineshaft/farm/FarmCommand.java +++ b/src/main/java/net/uomc/mineshaft/farm/FarmCommand.java @@ -11,6 +11,7 @@ import java.util.Map; import java.util.Optional; import java.util.concurrent.atomic.AtomicLong; import java.util.stream.IntStream; +import java.util.stream.Stream; import com.mouldycheerio.dbot.CustomBot; import com.mouldycheerio.dbot.commands.CommandDetails; @@ -44,13 +45,23 @@ public class FarmCommand extends DetailedCommand { farms.add(new Farm(bot, MineshaftItem.CANE)); farms.add(new Farm(bot, MineshaftItem.CARROT)); farms.add(new Farm(bot, MineshaftItem.POTATO)); + + bot.getCommandController().addCommand("plant", (e, b, args) -> { + execute(e, bot, Stream.concat(Stream.of("plant"), Arrays.stream(args)).toArray(String[]::new)); + }); + bot.getCommandController().addCommand("harvest", (e, b, args) -> { + execute(e, bot, Stream.concat(Stream.of("harvest"), Arrays.stream(args)).toArray(String[]::new)); + }); + bot.getCommandController().addCommand("expand", (e, b, args) -> { + execute(e, bot, Stream.concat(Stream.of("expand"), Arrays.stream(args)).toArray(String[]::new)); + }); } @Override public void execute(MessageReceivedEvent e, CustomBot b, String[] args) throws CommandFail { List argList = Arrays.asList(args); - if (bot.getPickaxes().isNether(e.getMember())) { + if (bot.getPlayerStats().isNether(e.getMember())) { bot.sendErrorMessage(e, ":x: You cannot access your farm from the nether"); return; } @@ -72,7 +83,7 @@ public class FarmCommand extends DetailedCommand { return; } - long farmLevel = bot.getPickaxes().getFarmLevel(e.getMember()); + long farmLevel = bot.getPlayerStats().getFarmLevel(e.getMember()); StringBuilder description = new StringBuilder(); description.append(String.format("This is your farm.\nUse `%sfarm plant [carrot|potato|cane] [amount]` to plant\nUse `%sfarm harvest` to harvest your crops\nUse %s to expand your farm with `%sfarm expand`\n\n", bot.getPrefixManager().getPrefix(e.getGuild()), @@ -126,9 +137,9 @@ public class FarmCommand extends DetailedCommand { } bot.removeItem(e.getMember(), item, q); - long farmLevel = bot.getPickaxes().getFarmLevel(e.getMember()); - bot.getPickaxes().setFarmLevel(e.getMember(), farmLevel + q); - farmLevel = bot.getPickaxes().getFarmLevel(e.getMember()); + long farmLevel = bot.getPlayerStats().getFarmLevel(e.getMember()); + bot.getPlayerStats().setFarmLevel(e.getMember(), farmLevel + q); + farmLevel = bot.getPlayerStats().getFarmLevel(e.getMember()); bot.sendSuccessMessage(e, ":white_check_mark: You expanded your farm. Now it can hold " + farmLevel + " crops"); return true; @@ -254,7 +265,7 @@ public class FarmCommand extends DetailedCommand { } public long plant(Farm farm, Member member, long amount) { - long farmLevel = bot.getPickaxes().getFarmLevel(member); + long farmLevel = bot.getPlayerStats().getFarmLevel(member); long totalPlanted = getTotalPlanted(member); if (totalPlanted + amount > farmLevel) { amount = farmLevel - totalPlanted; -- cgit v1.2.3