From d19da5f1ccca9f413c098cb7da5b9b982d206b83 Mon Sep 17 00:00:00 2001 From: Ka0rX Date: Thu, 30 Mar 2023 21:56:46 +0100 Subject: [PATCH] Made it possible to unlock a skill that is not defined in the class. --- .../mmocore/api/player/profess/PlayerClass.java | 16 +++++++--------- 1 file changed, 7 insertions(+), 9 deletions(-) diff --git a/MMOCore-API/src/main/java/net/Indyuce/mmocore/api/player/profess/PlayerClass.java b/MMOCore-API/src/main/java/net/Indyuce/mmocore/api/player/profess/PlayerClass.java index d905220a..d18793ec 100644 --- a/MMOCore-API/src/main/java/net/Indyuce/mmocore/api/player/profess/PlayerClass.java +++ b/MMOCore-API/src/main/java/net/Indyuce/mmocore/api/player/profess/PlayerClass.java @@ -180,15 +180,13 @@ public class PlayerClass extends PostLoadObject implements ExperienceObject { + id + "': " + exception.getMessage()); } - if (config.contains("skills")) - for (String key : config.getConfigurationSection("skills").getKeys(false)) - try { - RegisteredSkill registered = MMOCore.plugin.skillManager.getSkillOrThrow(UtilityMethods.enumName(key)); - skills.put(registered.getHandler().getId(), new ClassSkill(registered, config.getConfigurationSection("skills." + key))); - } catch (RuntimeException exception) { - MMOCore.plugin.getLogger().log(Level.WARNING, "Could not load skill info '" + key + "' from class '" - + id + "': " + exception.getMessage()); - } + for (RegisteredSkill registered : MMOCore.plugin.skillManager.getAll()) { + String key = registered.getHandler().getId(); + if (config.contains("skills." + key)) + skills.put(key, new ClassSkill(registered, config.getConfigurationSection("skills." + key))); + else + skills.put(key, new ClassSkill(registered, 1, 1)); + } castParticle = config.contains("cast-particle") ? new CastingParticle(config.getConfigurationSection("cast-particle")) : null;