76 lines
2.7 KiB
Java
Raw Normal View History

2021-12-21 05:55:23 +01:00
package net.t2code.alias.Spigot.cmdManagement;
import net.t2code.alias.Spigot.Main;
import net.t2code.alias.Spigot.config.languages.SelectMessages;
import net.t2code.alias.Spigot.objects.AliasObject;
import net.t2code.alias.Spigot.objects.SubAliasObject;
2022-01-29 19:08:14 +01:00
import net.t2code.alias.Util;
2021-12-21 05:55:23 +01:00
import net.t2code.lib.Spigot.Lib.messages.send;
import org.bukkit.command.Command;
2022-07-08 19:06:12 +02:00
import org.bukkit.command.CommandExecutor;
2021-12-21 05:55:23 +01:00
import org.bukkit.command.CommandSender;
2022-07-08 19:06:12 +02:00
import org.bukkit.command.TabCompleter;
2021-12-21 05:55:23 +01:00
import org.bukkit.entity.Player;
2022-07-08 19:06:12 +02:00
import java.lang.reflect.Array;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
public class RegisterCommands extends Command implements TabCompleter {
2021-12-21 05:55:23 +01:00
private String alias;
2022-01-29 19:08:14 +01:00
private String prefix = Util.getPrefix();
2021-12-21 05:55:23 +01:00
public RegisterCommands(String alias) {
super(alias);
this.alias = alias;
}
@Override
public boolean execute(CommandSender sender, String commandLabel, String[] args) {
AliasObject alias = Main.aliasHashMap.get(this.alias);
2021-12-21 05:55:23 +01:00
2022-07-07 13:48:08 +02:00
if (alias == null) {
send.error(Main.getPlugin(), "The alias " + this.alias + " does not exist.");
return false;
}
if (!alias.aliasEnable) {
send.sender(sender, SelectMessages.aliasDisabled);
2021-12-21 05:55:23 +01:00
return true;
}
2022-07-08 19:06:12 +02:00
if (args.length == 0 || args.length == 1 && args[0].contains("-p:")) {
2022-07-05 20:03:22 +02:00
if (sender instanceof Player) {
2022-07-08 19:06:12 +02:00
ExecuteAlias.aliasPlayer(sender, alias, this.alias, args);
2022-07-05 20:03:22 +02:00
} else {
if (alias.consoleEnable) {
2022-07-07 13:48:08 +02:00
ExecuteAlias.aliasConsole(alias, sender, prefix);
2022-07-05 20:03:22 +02:00
} else send.sender(sender, SelectMessages.onlyForPlayer);
}
} else {
2022-07-08 19:06:12 +02:00
if (!Main.allForSubAliases.contains(this.alias)) {
return false;
}
2022-07-05 20:03:22 +02:00
for (String sals : Main.allSubAliases) {
SubAliasObject sal = Main.subAliasHashMap.get(sals);
if (args.length == sal.subAliasArg + 1) {
2022-07-05 20:03:22 +02:00
for (String al : sal.subAliasList) {
if (args[sal.subAliasArg].toLowerCase().equals(al)) {
2022-07-08 19:06:12 +02:00
ExecuteAlias.subAliasPlayer(sender, sal, al, args);
return true;
2022-07-05 20:03:22 +02:00
}
2021-12-21 05:55:23 +01:00
}
}
}
2022-07-08 19:06:12 +02:00
send.sender(sender, "<color:#ffbd17><hover:show_text:'<dark_red>TODO <blue>DEV</blue></dark_red>'>Diesen Befehl gibt es nicht</hover></color>");
//todo
2022-07-05 20:03:22 +02:00
}
return true;
}
2022-07-08 19:06:12 +02:00
@Override
public List<String> onTabComplete(CommandSender commandSender, Command command, String s, String[] strings) {
return Collections.singletonList("hallodepp");
}
2021-12-21 05:55:23 +01:00
}