63 lines
2.2 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;
2023-07-08 21:30:45 +02:00
import net.t2code.alias.Spigot.config.config.Language;
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;
import net.t2code.t2codelib.SPIGOT.api.messages.T2Csend;
2021-12-21 05:55:23 +01:00
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
public class RegisterCommands extends Command {
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) {
T2Csend.error(Main.getPlugin(), "The alias " + this.alias + " does not exist.");
2022-07-07 13:48:08 +02:00
return false;
}
if (!alias.aliasEnable) {
2023-07-08 21:30:45 +02:00
T2Csend.sender(sender, Language.aliasDisabled.value);
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);
2023-07-08 21:30:45 +02:00
} else T2Csend.sender(sender, Language.onlyForPlayer.value);
2022-07-05 20:03:22 +02:00
}
} 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
}
}
}
2023-07-08 21:30:45 +02:00
T2Csend.sender(sender, Language.noSubCommand.value);
2022-07-05 20:03:22 +02:00
}
return true;
}
2021-12-21 05:55:23 +01:00
}