package me.km.skills; import java.util.HashMap; import me.km.api.Module; import me.km.effects.Effect; import net.minecraft.item.ItemStack; import net.minecraft.util.text.TextFormatting; public class SkillManager extends Module { private final HashMap skills; public SkillManager(String mname, String prefix, TextFormatting color) { super(mname, prefix, color); skills = new HashMap<>(); } public void registerSkill(int id, ItemStack icon, Effect eff, String name, String explanation) { Skill skill = new Skill(icon.copy(), eff, name, explanation); if(skills.put(id, skill) == null) { eff.addSkill(skill); } } public Skill getSkill(int id) { Skill skill = skills.get(id); if(skill == null) { throw new NullPointerException("ID " + id + " has no skill."); } return skills.get(id); } public void clearSkills() { skills.clear(); for(Effect c : Effect.values()) { c.clearSkills(); } } }