diff --git a/MMOCore-API/src/main/java/net/Indyuce/mmocore/manager/data/mysql/MySQLDataProvider.java b/MMOCore-API/src/main/java/net/Indyuce/mmocore/manager/data/mysql/MySQLDataProvider.java index 74ff259b..90bc9361 100644 --- a/MMOCore-API/src/main/java/net/Indyuce/mmocore/manager/data/mysql/MySQLDataProvider.java +++ b/MMOCore-API/src/main/java/net/Indyuce/mmocore/manager/data/mysql/MySQLDataProvider.java @@ -19,7 +19,10 @@ public class MySQLDataProvider extends MMODataSource implements DataProvider { "skill_reallocation_points", "INT(11)", "skill_tree_reallocation_points", "INT(11)", "skill_tree_points", "LONGTEXT", - "skill_tree_levels", "LONGTEXT"}; + "skill_tree_levels", "LONGTEXT", + "mana","FLOAT", + "stamina","FLOAT", + "stellium","FLOAT"}; public MySQLDataProvider(FileConfiguration config) { this.setup(config); diff --git a/MMOCore-API/src/main/java/net/Indyuce/mmocore/manager/data/mysql/MySQLPlayerDataManager.java b/MMOCore-API/src/main/java/net/Indyuce/mmocore/manager/data/mysql/MySQLPlayerDataManager.java index f3766f74..a5dff85f 100644 --- a/MMOCore-API/src/main/java/net/Indyuce/mmocore/manager/data/mysql/MySQLPlayerDataManager.java +++ b/MMOCore-API/src/main/java/net/Indyuce/mmocore/manager/data/mysql/MySQLPlayerDataManager.java @@ -56,9 +56,9 @@ public class MySQLPlayerDataManager extends PlayerDataManager { // Initialize custom resources if (!data.hasUsedTemporaryData()) { - data.setMana(data.getStats().getStat("MAX_MANA")); - data.setStamina(data.getStats().getStat("MAX_STAMINA")); - data.setStellium(data.getStats().getStat("MAX_STELLIUM")); + data.setMana(result.getFloat("mana")); + data.setStellium(result.getFloat("stellium")); + data.setStamina(result.getFloat("stamina")); } data.setClassPoints(result.getInt("class_points")); @@ -69,6 +69,7 @@ public class MySQLPlayerDataManager extends PlayerDataManager { data.setAttributeReallocationPoints(result.getInt("attribute_realloc_points")); data.setLevel(result.getInt("level")); data.setExperience(result.getInt("experience")); + if (!isEmpty(result.getString("class"))) data.setClass(MMOCore.plugin.classManager.get(result.getString("class"))); @@ -181,7 +182,9 @@ public class MySQLPlayerDataManager extends PlayerDataManager { sql.updateData("attribute_points", data.getAttributePoints()); sql.updateData("attribute_realloc_points", data.getAttributeReallocationPoints()); sql.updateData("skill_tree_reallocation_points",data.getSkillTreeReallocationPoints()); - + sql.updateData("mana",data.getMana()); + sql.updateData("stellium",data.getStellium()); + sql.updateData("stamina",data.getStamina()); sql.updateData("level", data.getLevel()); sql.updateData("experience", data.getExperience()); sql.updateData("class", data.getProfess().getId()); diff --git a/MMOCore-API/src/main/java/net/Indyuce/mmocore/manager/data/yaml/YAMLPlayerDataManager.java b/MMOCore-API/src/main/java/net/Indyuce/mmocore/manager/data/yaml/YAMLPlayerDataManager.java index 8d97af43..50ca77eb 100644 --- a/MMOCore-API/src/main/java/net/Indyuce/mmocore/manager/data/yaml/YAMLPlayerDataManager.java +++ b/MMOCore-API/src/main/java/net/Indyuce/mmocore/manager/data/yaml/YAMLPlayerDataManager.java @@ -42,9 +42,9 @@ public class YAMLPlayerDataManager extends PlayerDataManager { data.setClass(MMOCore.plugin.classManager.get(config.getString("class"))); if (!data.hasUsedTemporaryData() && data.isOnline()) { - data.setMana(data.getStats().getStat("MAX_MANA")); - data.setStamina(data.getStats().getStat("MAX_STAMINA")); - data.setStellium(data.getStats().getStat("MAX_STELLIUM")); + data.setMana(config.contains("mana")?config.getDouble("mana"):data.getStats().getStat("MAX_MANA")); + data.setStamina(config.contains("stamina")?config.getDouble("stamina"):data.getStats().getStat("MAX_STAMINA")); + data.setStellium(config.contains("stellium")?config.getDouble("stellium"):data.getStats().getStat("MAX_STELLIUM")); } if (config.contains("guild")) { @@ -119,6 +119,9 @@ public class YAMLPlayerDataManager extends PlayerDataManager { data.getSkillTreePoints().forEach((key1, value) -> config.set("skill-tree-points." + key1, value)); config.set("skill-tree-reallocation-points", data.getSkillTreeReallocationPoints()); config.set("skill", null); + config.set("mana",data.getMana()); + config.set("stellium",data.getStellium()); + config.set("stamina",data.getStamina()); //Saves the nodes levels MMOCore.plugin.skillTreeManager.getAllNodes().forEach(node -> config.set("skill-tree-level." + node.getFullId(), data.getNodeLevel(node))); data.mapSkillLevels().forEach((key1, value) -> config.set("skill." + key1, value));