From b63dfa1b0a2d2d7aef1e3b186cae2656c43a0f08 Mon Sep 17 00:00:00 2001 From: senseiwells <66843746+senseiwells@users.noreply.github.com> Date: Mon, 26 Dec 2022 14:17:36 +0000 Subject: [PATCH] Make `/fillbiome` limit customisable with `fillLimit` (#1605) --- src/main/java/carpet/CarpetSettings.java | 2 +- .../carpet/mixins/FillBiomeCommandMixin.java | 17 +++++++++++++++++ src/main/resources/carpet.mixins.json | 1 + 3 files changed, 19 insertions(+), 1 deletion(-) create mode 100644 src/main/java/carpet/mixins/FillBiomeCommandMixin.java diff --git a/src/main/java/carpet/CarpetSettings.java b/src/main/java/carpet/CarpetSettings.java index 341106b3..f9def41b 100644 --- a/src/main/java/carpet/CarpetSettings.java +++ b/src/main/java/carpet/CarpetSettings.java @@ -630,7 +630,7 @@ public class CarpetSettings public String description() { return "You must choose a value from 1 to 20M";} } @Rule( - desc = "Customizable fill/clone volume limit", + desc = "Customizable fill/fillbiome/clone volume limit", options = {"32768", "250000", "1000000"}, category = CREATIVE, strict = false, diff --git a/src/main/java/carpet/mixins/FillBiomeCommandMixin.java b/src/main/java/carpet/mixins/FillBiomeCommandMixin.java new file mode 100644 index 00000000..88c2cc02 --- /dev/null +++ b/src/main/java/carpet/mixins/FillBiomeCommandMixin.java @@ -0,0 +1,17 @@ +package carpet.mixins; + +import carpet.CarpetSettings; +import net.minecraft.server.commands.FillBiomeCommand; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.Constant; +import org.spongepowered.asm.mixin.injection.ModifyConstant; + +@Mixin(FillBiomeCommand.class) +public class FillBiomeCommandMixin +{ + @ModifyConstant(method = "fill", constant = @Constant(intValue = 32768)) + private static int fillLimit(int original) + { + return CarpetSettings.fillLimit; + } +} diff --git a/src/main/resources/carpet.mixins.json b/src/main/resources/carpet.mixins.json index 22c3a030..b9a714e9 100644 --- a/src/main/resources/carpet.mixins.json +++ b/src/main/resources/carpet.mixins.json @@ -11,6 +11,7 @@ "PerfCommand_permissionMixin", "FillCommandMixin", + "FillBiomeCommandMixin", "CloneCommands_fillUpdatesMixin", "SetBlockCommand_fillUpdatesMixin", "ForceLoadCommand_forceLoadLimitMixin",