AltitudeQuests/src/main/java/com/alttd/altitudequests/config/QuestsConfig.java

49 lines
1.8 KiB
Java
Raw Normal View History

2022-05-21 00:38:34 +00:00
package com.alttd.altitudequests.config;;
import com.alttd.altitudequests.objects.variants.MineQuestObject;
import com.alttd.altitudequests.util.Logger;
2022-05-21 00:38:34 +00:00
import org.bukkit.Material;
import org.bukkit.configuration.ConfigurationSection;
import java.io.File;
import java.util.ArrayList;
import java.util.List;
import java.util.Set;
public class QuestsConfig extends AbstractConfig {
static QuestsConfig config;
public QuestsConfig() {
super(new File(System.getProperty("user.home") + File.separator + "share" + File.separator + "configs"
+ File.separator + "AltitudeQuests"), "quests.yml");
2022-05-21 00:38:34 +00:00
}
public static void reload() {
config = new QuestsConfig();
config.readConfig(QuestsConfig.class, null);
}
public static List<MineQuestObject> MINE_QUESTS = new ArrayList<>();
public static String MINE_QUEST_NAME = "<green>Mine quest</green>";
2022-05-21 00:38:34 +00:00
private static void loadMineQuests() {
MINE_QUESTS.clear();
ConfigurationSection configurationSection = config.getConfigurationSection("mining.possible_tasks");
if (configurationSection == null) {
Logger.warning("No mining quests in config");
return;
}
2022-05-21 00:38:34 +00:00
Set<String> keys = configurationSection.getKeys(false);
for (String key : keys) {
Material material = Material.valueOf(configurationSection.getString(key + ".material"));
2022-05-21 00:38:34 +00:00
MINE_QUESTS.add(new MineQuestObject(key,
configurationSection.getString(key + ".name"),
2022-05-21 00:38:34 +00:00
material,
configurationSection.getInt(key + ".amount"),
configurationSection.getStringList(key + ".quest-pages"),
configurationSection.getStringList(key + ".done-pages")));
2022-05-21 00:38:34 +00:00
}
MINE_QUEST_NAME = config.getString("mining.name", MINE_QUEST_NAME);
2022-05-21 00:38:34 +00:00
}
}