112 lines
6.7 KiB
Java
112 lines
6.7 KiB
Java
package net.t2code.alias.Spigot.config.subAlias;
|
|
|
|
import com.google.common.base.Preconditions;
|
|
import net.t2code.alias.Spigot.Main;
|
|
import net.t2code.alias.Spigot.config.alias.AliasConfigConverter;
|
|
import net.t2code.alias.Spigot.objects.SubAliasObject;
|
|
import net.t2code.alias.Util;
|
|
import net.t2code.lib.Spigot.Lib.messages.send;
|
|
import org.bukkit.Bukkit;
|
|
import org.bukkit.configuration.InvalidConfigurationException;
|
|
import org.bukkit.configuration.file.YamlConfiguration;
|
|
|
|
import java.io.File;
|
|
import java.io.FileNotFoundException;
|
|
import java.io.IOException;
|
|
import java.util.List;
|
|
import java.util.logging.Level;
|
|
|
|
public class SelectSubAlias {
|
|
private static String Prefix = Util.getPrefix();
|
|
|
|
public static void onSelect() {
|
|
|
|
Main.subAliasHashMap.clear();
|
|
Main.allSubAliases.clear();
|
|
File f = new File(Main.getPath() + "/SubAlias/");
|
|
File[] fileArray = f.listFiles();
|
|
for (File config_gui : fileArray) {
|
|
if (config_gui.getName().equals("X_subAliasDeclaration_X.yml")) continue;
|
|
String sub = config_gui.getName().substring(config_gui.getName().length() - 4);
|
|
if (sub.equals(".yml")) {
|
|
YamlConfiguration yamlConfiguration;
|
|
try {
|
|
Preconditions.checkArgument(config_gui != null, "File cannot be null");
|
|
YamlConfiguration config = new YamlConfiguration();
|
|
config.load(config_gui);
|
|
yamlConfiguration = config;
|
|
} catch (FileNotFoundException var3) {
|
|
continue;
|
|
} catch (IOException var4) {
|
|
Bukkit.getLogger().log(Level.SEVERE, "Cannot load " + config_gui, var4);
|
|
continue;
|
|
} catch (InvalidConfigurationException var5) {
|
|
Bukkit.getLogger().log(Level.SEVERE, "Cannot load " + config_gui, var5);
|
|
continue;
|
|
}
|
|
Boolean aliasEnable = yamlConfiguration.getBoolean("SubAlias.Enable");
|
|
List<String> subAliasList = yamlConfiguration.getStringList("SubAlias.SubAliasList");
|
|
String subAliasFor = yamlConfiguration.getString("SubAlias.SubAliasFor");
|
|
int subAliasArg = 0;
|
|
if (subAliasFor != null) {
|
|
String[] imp = subAliasFor.split(" ");
|
|
if (!Main.allAliases.contains(imp[0])) {
|
|
send.error(Main.getPlugin(), "The alias " + imp[0] + " in the file " + config_gui.getName() + " does not exist!");
|
|
}
|
|
String[] args = subAliasFor.split(" ");
|
|
subAliasArg = args.length - 1;
|
|
}
|
|
Boolean permNecessary = yamlConfiguration.getBoolean("SubAlias.Permission.Necessary");
|
|
if (yamlConfiguration.get("SubAlias.Permission.Permission") == null) {
|
|
AliasConfigConverter.convertAddPermission(yamlConfiguration, config_gui, true);
|
|
}
|
|
String permission = yamlConfiguration.getString("SubAlias.Permission.Permission");
|
|
if (yamlConfiguration.get("SubAlias.Permission.CustomNoPermissionMSG") == null) {
|
|
AliasConfigConverter.convertAddPermissionMSG(yamlConfiguration, config_gui, true);
|
|
}
|
|
String permissionMSG = yamlConfiguration.getString("SubAlias.Permission.CustomNoPermissionMSG");
|
|
|
|
Boolean costEnable = yamlConfiguration.getBoolean("SubAlias.Cost.Enable");
|
|
Double costPrice = yamlConfiguration.getDouble("SubAlias.Cost.Price");
|
|
Boolean costAllowBypass = yamlConfiguration.getBoolean("SubAlias.Cost.AllowByPass");
|
|
|
|
Boolean commandEnable = yamlConfiguration.getBoolean("SubAlias.Command.Enable");
|
|
Boolean commandAsConsole = yamlConfiguration.getBoolean("SubAlias.Command.CommandAsConsole");
|
|
Boolean bungeeCommand = yamlConfiguration.getBoolean("SubAlias.Command.BungeeCommand");
|
|
List<String> command = yamlConfiguration.getStringList("SubAlias.Command.Commands");
|
|
|
|
Boolean messageEnable = yamlConfiguration.getBoolean("SubAlias.Message.Enable");
|
|
List<String> messages = yamlConfiguration.getStringList("SubAlias.Message.Messages");
|
|
|
|
Boolean adminEnable = yamlConfiguration.getBoolean("SubAlias.Admin.Enable");
|
|
String adminPermission = yamlConfiguration.getString("SubAlias.Admin.Permission");
|
|
|
|
Boolean adminCommandEnable = yamlConfiguration.getBoolean("SubAlias.Admin.Command.Enable");
|
|
Boolean adminCommandAsConsole = yamlConfiguration.getBoolean("SubAlias.Admin.Command.CommandAsConsole");
|
|
Boolean adminBungeeCommand = yamlConfiguration.getBoolean("SubAlias.Admin.Command.BungeeCommand");
|
|
List<String> adminCommands = yamlConfiguration.getStringList("SubAlias.Admin.Command.Commands");
|
|
|
|
Boolean adminMessageEnable = yamlConfiguration.getBoolean("SubAlias.Admin.Message.Enable");
|
|
List<String> adminMessages = yamlConfiguration.getStringList("SubAlias.Admin.Message.Messages");
|
|
|
|
Boolean consoleEnable = yamlConfiguration.getBoolean("SubAlias.Console.Enable");
|
|
Boolean consoleCommandEnable = yamlConfiguration.getBoolean("SubAlias.Console.Command.Enable");
|
|
Boolean consoleBungeeCommand = yamlConfiguration.getBoolean("SubAlias.Console.Command.BungeeCommand");
|
|
List<String> consoleCommands = yamlConfiguration.getStringList("SubAlias.Console.Command.Commands");
|
|
Boolean consoleMessageEnable = yamlConfiguration.getBoolean("SubAlias.Console.Message.Enable");
|
|
List<String> consoleMessages = yamlConfiguration.getStringList("SubAlias.Console.Message.Messages");
|
|
|
|
SubAliasObject subAlias = new SubAliasObject(aliasEnable, subAliasList, subAliasFor, subAliasArg, permNecessary, permission, permissionMSG, costEnable, costPrice, costAllowBypass, commandEnable, commandAsConsole, bungeeCommand,
|
|
command, messageEnable, messages, adminEnable, adminPermission, adminCommandEnable, adminCommandAsConsole, adminBungeeCommand, adminCommands,
|
|
adminMessageEnable, adminMessages, consoleEnable, consoleCommandEnable, consoleBungeeCommand, consoleCommands, consoleMessageEnable, consoleMessages);
|
|
for (String sal : subAliasList) {
|
|
Main.subAliasHashMap.put(sal, subAlias);
|
|
}
|
|
Main.allSubAliases.addAll(subAliasList);
|
|
Main.allForSubAliases.add(subAliasFor);
|
|
send.console(Prefix + " §aSubAlias file §e" + config_gui.getName() + " §awas loaded");
|
|
}
|
|
}
|
|
}
|
|
}
|