aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMy-Name-Is-Jeff <37018278+My-Name-Is-Jeff@users.noreply.github.com>2021-12-10 17:51:19 -0500
committerMy-Name-Is-Jeff <37018278+My-Name-Is-Jeff@users.noreply.github.com>2021-12-10 17:51:19 -0500
commit0f06782fd2831aab32f7899fd9e2bb10e3dd8f97 (patch)
treed23b5969044b131eb794045cbc881d23a38bb6e9
parent75b832ad223cf2d29837ea2df6795e11f8d04b07 (diff)
downloadSkytilsMod-0f06782fd2831aab32f7899fd9e2bb10e3dd8f97.tar.gz
SkytilsMod-0f06782fd2831aab32f7899fd9e2bb10e3dd8f97.tar.bz2
SkytilsMod-0f06782fd2831aab32f7899fd9e2bb10e3dd8f97.zip
fix autocomplete aliases
-rw-r--r--src/main/java/skytils/skytilsmod/mixins/transformers/command/MixinCommandHandler.java15
1 files changed, 10 insertions, 5 deletions
diff --git a/src/main/java/skytils/skytilsmod/mixins/transformers/command/MixinCommandHandler.java b/src/main/java/skytils/skytilsmod/mixins/transformers/command/MixinCommandHandler.java
index dfd789c7..85a1afa5 100644
--- a/src/main/java/skytils/skytilsmod/mixins/transformers/command/MixinCommandHandler.java
+++ b/src/main/java/skytils/skytilsmod/mixins/transformers/command/MixinCommandHandler.java
@@ -20,18 +20,23 @@ package skytils.skytilsmod.mixins.transformers.command;
import net.minecraft.command.CommandHandler;
import net.minecraft.command.ICommandManager;
+import net.minecraft.command.ICommandSender;
+import net.minecraft.util.BlockPos;
import org.spongepowered.asm.mixin.Mixin;
import org.spongepowered.asm.mixin.injection.At;
-import org.spongepowered.asm.mixin.injection.ModifyVariable;
+import org.spongepowered.asm.mixin.injection.Inject;
+import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable;
import skytils.skytilsmod.features.impl.handlers.CommandAliases;
import java.util.List;
@Mixin(CommandHandler.class)
public abstract class MixinCommandHandler implements ICommandManager {
- @ModifyVariable(method = "getTabCompletionOptions", at = @At(value = "STORE"), ordinal = 0)
- private List<String> addTabCompletableCommands(List<String> list) {
- list.addAll(CommandAliases.Companion.getAliases().keySet());
- return list;
+ @Inject(method = "getTabCompletionOptions", at = @At(value = "RETURN", ordinal = 0))
+ private void addTabCompletableCommands(ICommandSender sender, String input, BlockPos pos, CallbackInfoReturnable<List<String>> cir) {
+ List<String> list = cir.getReturnValue();
+ for (String cmd : CommandAliases.Companion.getAliases().keySet()) {
+ if (cmd.startsWith(input)) list.add(cmd);
+ }
}
}