46 lines
1.4 KiB
Java
46 lines
1.4 KiB
Java
package com.alttd.hunger_games.config;
|
|
|
|
import com.alttd.hunger_games.data_objects.RARITY;
|
|
import org.bukkit.Material;
|
|
|
|
import java.io.File;
|
|
import java.util.HashMap;
|
|
import java.util.List;
|
|
|
|
public class LootItems extends AbstractConfig {
|
|
static LootItems config;
|
|
|
|
LootItems() {
|
|
super(
|
|
new File(File.separator
|
|
+ "mnt" + File.separator
|
|
+ "configs" + File.separator
|
|
+ "HungerGames"),
|
|
"loot-items.yml");
|
|
}
|
|
|
|
public static void reload() {
|
|
config = new LootItems();
|
|
config.readConfig(LootItems.class, null);
|
|
}
|
|
|
|
public static class ITEMS {
|
|
private static final String prefix = "items.";
|
|
|
|
private static final HashMap<RARITY, List<Material>> ITEMS = new HashMap<>();
|
|
|
|
public static List<Material> get(RARITY rarity) {
|
|
return ITEMS.get(rarity);
|
|
}
|
|
|
|
@SuppressWarnings("unused")
|
|
private static void load() {
|
|
for (RARITY rarity : RARITY.values()) {
|
|
List<String> materialNameList = ITEMS.get(rarity).stream().map(Material::name).toList();
|
|
List<String> materialList = config.getList(prefix, rarity.getConfigName(), materialNameList);
|
|
ITEMS.put(rarity, materialList.stream().map(Material::getMaterial).toList());
|
|
}
|
|
}
|
|
}
|
|
}
|