diff options
author | Tec <daniel112092@gmail.com> | 2022-01-23 13:44:18 +0100 |
---|---|---|
committer | Martin Robertz <dream-master@gmx.net> | 2022-01-29 21:24:41 +0100 |
commit | ab9e1f082243953f982e07e8e95b97b2aa4fabb8 (patch) | |
tree | 02ea91f9e6ad2b2b2d802722aee7a556f2162fff /src/main/java/com | |
parent | 967353ed74d8f177ef641261899327b9fabb2ecc (diff) | |
download | GT5-Unofficial-ab9e1f082243953f982e07e8e95b97b2aa4fabb8.tar.gz GT5-Unofficial-ab9e1f082243953f982e07e8e95b97b2aa4fabb8.tar.bz2 GT5-Unofficial-ab9e1f082243953f982e07e8e95b97b2aa4fabb8.zip |
Fix autocompletion for EM commands
(cherry picked from commit e37d21d8141e82eee9d87d4bb137c44977db8625)
Diffstat (limited to 'src/main/java/com')
2 files changed, 8 insertions, 7 deletions
diff --git a/src/main/java/com/github/technus/tectech/mechanics/elementalMatter/core/commands/EMGive.java b/src/main/java/com/github/technus/tectech/mechanics/elementalMatter/core/commands/EMGive.java index 18f2f76498..4824053668 100644 --- a/src/main/java/com/github/technus/tectech/mechanics/elementalMatter/core/commands/EMGive.java +++ b/src/main/java/com/github/technus/tectech/mechanics/elementalMatter/core/commands/EMGive.java @@ -117,7 +117,7 @@ public class EMGive implements ICommand { @Override public List<String> addTabCompletionOptions(ICommandSender sender, String[] args) { - if (args.length > 1 && args.length % 2 == 0) { + if (args.length > 2 && args.length % 2 == 1) { return new ArrayList<>(TecTech.definitionsRegistry.getBinds().keySet()); } return null; diff --git a/src/main/java/com/github/technus/tectech/mechanics/elementalMatter/core/commands/EMList.java b/src/main/java/com/github/technus/tectech/mechanics/elementalMatter/core/commands/EMList.java index 90eddf1e23..fe542abbde 100644 --- a/src/main/java/com/github/technus/tectech/mechanics/elementalMatter/core/commands/EMList.java +++ b/src/main/java/com/github/technus/tectech/mechanics/elementalMatter/core/commands/EMList.java @@ -28,15 +28,16 @@ public class EMList implements ICommand { if(args.length == 0) { listClasses(sender); }else { - listDefinitions(sender, Util.getConcated(args," ")); + String concated = Util.getConcated(args, " "); + listDefinitions(sender,concated, concated.replaceAll(" ","_"),concated.replaceAll("_"," ")); } } } - private void listDefinitions(ICommandSender sender, String arg) { + private void listDefinitions(ICommandSender sender,String raw, String unlocalized,String localized) { sender.addChatMessage(new ChatComponentText(" Available Direct: tag - name symbol")); for (EMType directType : TecTech.definitionsRegistry.getDirectTypes().values()) { - if ("*".equals(arg) || arg.equalsIgnoreCase(directType.getLocalizedName())) { + if ("*".equals(raw) || localized.equalsIgnoreCase(directType.getLocalizedName()) || unlocalized.equalsIgnoreCase(directType.getUnlocalizedName())) { directType.getDefinitions().forEach((bind, definition) -> sender.addChatMessage(new ChatComponentText(bind + " - " + definition.getLocalizedName() + " " + definition.getSymbol()))); } @@ -44,7 +45,7 @@ public class EMList implements ICommand { } private void listClasses(ICommandSender sender) { - sender.addChatMessage(new ChatComponentText(" Available Direct: name (use name as parameter to learn more")); + sender.addChatMessage(new ChatComponentText(" Available Direct: name (use as parameter to learn more")); TecTech.definitionsRegistry.getDirectTypes().forEach((aClass, emDirectType) -> sender.addChatMessage(new ChatComponentText(emDirectType.getLocalizedName()))); sender.addChatMessage(new ChatComponentText(" Available Indirect: tag - name")); @@ -69,8 +70,8 @@ public class EMList implements ICommand { @Override public List<String> addTabCompletionOptions(ICommandSender sender, String[] args) { - if(args.length==0){ - return TecTech.definitionsRegistry.getDirectTypes().values().stream().map(EMType::getLocalizedName).collect(Collectors.toList()); + if(args.length==1){ + return TecTech.definitionsRegistry.getDirectTypes().values().stream().map(EMType::getLocalizedName).map(s->s.replaceAll(" ","_")).collect(Collectors.toList()); } return null; } |