T2C-CommandGUI/CommandGUI V2/src/main/java/net/t2code/commandguiv2/Spigot/config/useItems/UseItemSelect.java

114 lines
7.1 KiB
Java

package net.t2code.commandguiv2.Spigot.config.useItems;
import net.t2code.commandguiv2.Spigot.Main;
import net.t2code.commandguiv2.Spigot.objects.UseItemObject;
import net.t2code.commandguiv2.cache.Cache;
import net.t2code.t2codelib.SPIGOT.api.yaml.T2Cconfig;
import org.bukkit.configuration.file.YamlConfiguration;
import org.bukkit.permissions.PermissionDefault;
import java.io.File;
import java.io.IOException;
import java.util.List;
public class UseItemSelect {
public static void create() {
File config = new File(Main.getPath(), "/UseItems/default.yml");
YamlConfiguration yamlConfiguration = YamlConfiguration.loadConfiguration(config);
for (UseItemValues value : UseItemValues.values()) {
T2Cconfig.set(value.path, value.value, yamlConfiguration);
}
try {
yamlConfiguration.save(config);
} catch (
IOException e) {
e.printStackTrace();
}
}
public static void onSelect() {
Cache.useItemHash.clear();
File f = new File(Main.getPath() + "/UseItems/");
File[] fileArray = f.listFiles();
for (File config : fileArray) {
if (config.getName().equals("useItemDeclaration.yml")) continue;
String sub = config.getName().substring(config.getName().length() - 4);
if (sub.equals(".yml")) {
YamlConfiguration yamlConfiguration = YamlConfiguration.loadConfiguration(config);
String key = config.getName().replace(".yml", "");
Boolean enable = yamlConfiguration.getBoolean("useItem.enable");
String openGui = yamlConfiguration.getString("useItem.openGUI");
Boolean allowToggle = yamlConfiguration.getBoolean("useItem.allowToggle");
Boolean allowSetBlock = yamlConfiguration.getBoolean("useItem.allowSetSlot");
Boolean blockMoveAndDrop = yamlConfiguration.getBoolean("useItem.blockMoveAndDrop");
Boolean permBecomeNeeded = yamlConfiguration.getBoolean("useItem.permission.become.needed");
String permBecome = yamlConfiguration.getString("useItem.permission.become.permission");
PermissionDefault permBecomeDefault = PermissionDefault.valueOf(yamlConfiguration.getString("useItem.permission.become.default"));
Boolean permUseNeeded = yamlConfiguration.getBoolean("useItem.permission.use.needed");
String permUse = yamlConfiguration.getString("useItem.permission.use.permission");
PermissionDefault permUseDefault = PermissionDefault.valueOf(yamlConfiguration.getString("useItem.permission.use.default"));
Boolean permToggleNeeded = yamlConfiguration.getBoolean("useItem.permission.toggle.needed");
String permToggle = yamlConfiguration.getString("useItem.permission.toggle.permission");
PermissionDefault permToggleDefault = PermissionDefault.valueOf(yamlConfiguration.getString("useItem.permission.toggle.default"));
Boolean permSetSlotNeeded = yamlConfiguration.getBoolean("useItem.permission.setSlot.needed");
String permSetSlot = yamlConfiguration.getString("useItem.permission.setSlot.permission");
PermissionDefault permSetSlotDefault = PermissionDefault.valueOf(yamlConfiguration.getString("useItem.permission.setSlot.default"));
Boolean keepAtCommandClear = yamlConfiguration.getBoolean("useItem.keepAtCommandClear");
Integer invSlotSlot = yamlConfiguration.getInt("useItem.inventorySlot.slot");
Boolean invSlotEnforce = yamlConfiguration.getBoolean("useItem.inventorySlot.slotEnforce");
Boolean invFreeSlot = yamlConfiguration.getBoolean("useItem.inventorySlot.freeSlot");
String itemMaterial = yamlConfiguration.getString("useItem.item.material");
String itemName = yamlConfiguration.getString("useItem.item.name");
List<String> itemLore = yamlConfiguration.getStringList("useItem.item.lore");
Boolean itemPlayerHeadEnable = yamlConfiguration.getBoolean("useItem.item.playerHead.enable");
Boolean itemPlayerHeadPlayerWhoHasOpenedTheGUI = yamlConfiguration.getBoolean("useItem.item.playerHead.playerWhoHasOpenedTheGUI");
String itemPlayerHeadPlayerName = yamlConfiguration.getString("useItem.item.playerHead.playerName");
Boolean itemPlayerHeadBase64Enable = yamlConfiguration.getBoolean("useItem.item.playerHead.base64.enable");
String itemPlayerHeadBase64Value = yamlConfiguration.getString("useItem.item.playerHead.base64.base64Value");
Boolean joinGiveOnEveryJoin = yamlConfiguration.getBoolean("useItem.join.giveOnEveryJoin");
Boolean joinGiveOnlyOnFirstJoin = yamlConfiguration.getBoolean("useItem.join.giveOnlyOnFirstJoin");
Boolean quitRemoveOnQuit = yamlConfiguration.getBoolean("useItem.quit.removeOnQuit");
Boolean protectGameModeEnable = yamlConfiguration.getBoolean("useItem.protection.gameMode.enable");
Boolean protectGameModeRemoveItemWhenItIsDisabled = yamlConfiguration.getBoolean("useItem.protection.gameMode.removeItemWhenItIsDisabled");
String protectGameModeMode = yamlConfiguration.getString("useItem.protection.gameMode.mode");
List<String> protectGameModeList = yamlConfiguration.getStringList("useItem.protection.gameMode.list");
Boolean protectWorldEnable = yamlConfiguration.getBoolean("useItem.protection.world.enable");
Boolean protectWorldRemoveItemWhenItIsDisabled = yamlConfiguration.getBoolean("useItem.protection.world.removeItemWhenItIsDisabled");
String protectWorldMode = yamlConfiguration.getString("useItem.protection.world.mode");
List<String> protectWorldList = yamlConfiguration.getStringList("useItem.protection.world.list");
UseItemObject useItem = new UseItemObject(key, enable, openGui, allowToggle, allowSetBlock, blockMoveAndDrop, permBecomeNeeded, permBecome, permBecomeDefault,
permUseNeeded, permUse, permUseDefault, permToggleNeeded, permToggle, permToggleDefault, permSetSlotNeeded, permSetSlot, permSetSlotDefault, keepAtCommandClear,
invSlotSlot, invSlotEnforce, invFreeSlot, itemMaterial, itemName, itemLore, itemPlayerHeadEnable, itemPlayerHeadPlayerWhoHasOpenedTheGUI,
itemPlayerHeadPlayerName, itemPlayerHeadBase64Enable, itemPlayerHeadBase64Value, joinGiveOnEveryJoin, joinGiveOnlyOnFirstJoin, quitRemoveOnQuit,
protectGameModeEnable, protectGameModeRemoveItemWhenItIsDisabled, protectGameModeMode, protectGameModeList, protectWorldEnable,
protectWorldRemoveItemWhenItIsDisabled, protectWorldMode, protectWorldList);
Cache.useItemHash.put(key, useItem);
try {
yamlConfiguration.save(config);
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
}