diff options
author | My-Name-Is-Jeff <37018278+My-Name-Is-Jeff@users.noreply.github.com> | 2021-12-10 17:51:19 -0500 |
---|---|---|
committer | My-Name-Is-Jeff <37018278+My-Name-Is-Jeff@users.noreply.github.com> | 2021-12-10 17:51:19 -0500 |
commit | 0f06782fd2831aab32f7899fd9e2bb10e3dd8f97 (patch) | |
tree | d23b5969044b131eb794045cbc881d23a38bb6e9 | |
parent | 75b832ad223cf2d29837ea2df6795e11f8d04b07 (diff) | |
download | SkytilsMod-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.java | 15 |
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); + } } } |