Fixed starting player data having 0 health

This commit is contained in:
Jules 2025-10-09 15:03:20 +02:00
parent d3162e572e
commit cc22a00298
5 changed files with 14 additions and 7 deletions

View File

@ -1115,6 +1115,15 @@ public class PlayerData extends SynchronizedDataHolder implements OfflinePlayerD
return lastHealth;
}
/**
* @deprecated
* @see #setLastHealth(double)
*/
@Deprecated
public void setHealth(double amount) {
this.lastHealth = amount;
}
public PlayerStats getStats() {
return playerStats;
}
@ -1123,7 +1132,7 @@ public class PlayerData extends SynchronizedDataHolder implements OfflinePlayerD
return attributes;
}
public void setHealth(double amount) {
public void setLastHealth(double amount) {
this.lastHealth = amount;
}

View File

@ -342,7 +342,7 @@ public class SavedClassInformation implements ClassDataContainer {
// This needs to be done at the end to make sure the MAX_HEALTH/MAX_MANA/... stats are loaded.
UtilityMethods.setHealth(player.getPlayer(), health);
player.setHealth(health);
player.setLastHealth(health);
player.setMana(mana);
player.setStellium(stellium);
player.setStamina(stamina);

View File

@ -118,7 +118,7 @@ public class MMOCoreDataSynchronizer extends SQLDataSynchronizer<PlayerData> {
* These should be loaded after to make sure that the
* MAX_MANA, MAX_STAMINA & MAX_STELLIUM stats are already loaded.
*/
getData().setHealth(result.getDouble("health"));
getData().setLastHealth(result.getDouble("health"));
getData().setMana(result.getDouble("mana"));
getData().setStamina(result.getDouble("stamina"));
getData().setStellium(result.getDouble("stellium"));

View File

@ -121,7 +121,7 @@ public class YAMLPlayerDataHandler extends YAMLSynchronizedDataHandler<PlayerDat
* These should be loaded after to make sure that the
* MAX_MANA, MAX_STAMINA & MAX_STELLIUM stats are already loaded.
*/
data.setHealth(config.getDouble("health"));
data.setLastHealth(config.getDouble("health"));
data.setMana(config.getDouble("mana", data.getStats().getStat("MAX_MANA")));
data.setStamina(config.getDouble("stamina", data.getStats().getStat("MAX_STAMINA")));
data.setStellium(config.getDouble("stellium", data.getStats().getStat("MAX_STELLIUM")));

View File

@ -1,6 +1,5 @@
package net.Indyuce.mmocore.player;
import io.lumine.mythic.lib.version.Attributes;
import net.Indyuce.mmocore.api.player.PlayerData;
import org.bukkit.configuration.ConfigurationSection;
@ -145,8 +144,7 @@ public class DefaultPlayerData implements ClassDataContainer {
player.setAttributeReallocationPoints(attrReallocPoints);
player.setSkillTreeReallocationPoints(skillTreeReallocPoints);
player.setSkillReallocationPoints(skillReallocPoints);
if (player.isOnline())
player.getPlayer().setHealth(Math.min(health, player.getPlayer().getAttribute(Attributes.MAX_HEALTH).getValue()));
player.setLastHealth(health);
player.setMana(mana);
player.setStamina(stamina);
player.setStellium(stellium);