mirror of
https://github.com/songoda/EpicEnchants.git
synced 2024-09-28 23:57:33 +02:00
44 lines
1.7 KiB
Java
44 lines
1.7 KiB
Java
package com.songoda.epicenchants.managers;
|
|
|
|
import com.songoda.epicenchants.EpicEnchants;
|
|
import com.songoda.epicenchants.menus.InfoMenu;
|
|
import com.songoda.epicenchants.menus.MainInfoMenu;
|
|
import com.songoda.epicenchants.objects.Group;
|
|
import org.bukkit.Bukkit;
|
|
import org.bukkit.configuration.file.YamlConfiguration;
|
|
|
|
import java.util.Optional;
|
|
|
|
public class InfoManager extends Manager<Group, InfoMenu> {
|
|
private final EpicEnchants instance;
|
|
private MainInfoMenu mainInfoMenu;
|
|
|
|
public InfoManager(EpicEnchants instance) {
|
|
super(instance);
|
|
this.instance = instance;
|
|
}
|
|
|
|
public Optional<InfoMenu> getMenu(Group group) {
|
|
return getValue(group);
|
|
}
|
|
|
|
public void loadMenus() {
|
|
mainInfoMenu = new MainInfoMenu(instance, instance.getFileManager().getConfiguration("menus/main-info-menu"));
|
|
instance.getFileManager().getYmlFiles("src/main/resources/menus/groups").forEach(file -> {
|
|
try {
|
|
YamlConfiguration config = YamlConfiguration.loadConfiguration(file);
|
|
add(instance.getGroupManager().getValue(config.getString("group"))
|
|
.orElseThrow(() -> new IllegalArgumentException("Invalid group: " + config.getString("group"))), new InfoMenu(instance, config));
|
|
} catch (Exception e) {
|
|
Bukkit.getConsoleSender().sendMessage("Something went wrong loading the menu from file " + file.getName());
|
|
Bukkit.getConsoleSender().sendMessage("Please check to make sure there are no errors in the file.");
|
|
e.printStackTrace();
|
|
}
|
|
});
|
|
}
|
|
|
|
public MainInfoMenu getMainInfoMenu() {
|
|
return this.mainInfoMenu;
|
|
}
|
|
}
|