Hi everybody ! Sorry aboput my english i’m french ^^
I’m using a method to add experience to my player and Level up, but if on the start i want to load more experience, my character level up just one level, and not the level equal to the total of load experience
I know that in my method (level up) i put : if level up( currentlvl ++)
So it just level up once
How can i do to to load the good level when i load experience ?
here my code :
public void AddExperience(int experienceToAdd)
{
CurrentXP += experienceToAdd;
xpbar += experienceToAdd;
if (CurrentXP >= toLevelUp[currentLevel]) // UP
{
LevelUP();
levelText.text = "Lvl: " + currentLevel;
}
XPText.text = "XP : " + xpbar + "/" + (toLevelUp[currentLevel] - (toLevelUp[currentLevel - 1]));
XPBar.maxValue = toLevelUp[currentLevel] - (toLevelUp[currentLevel - 1]);
XPBar.value = xpbar;
//sendxp.SendToServer();
}
public void LevelUP()
{
currentLevel++;
currentHP = HPLevels[currentLevel];
//GameObject.fin.GetComponent<PlayerHealth>().playerHealth = currentHP;
// transform.root.GetComponent<PlayerHealth>().currentPlayerHealth += currentHP - HPLevels[currentLevel] - 1;
currentAttack = attackLevels[currentLevel];
currentDefence = defenceLevels[currentLevel];
xpbar = 0;
CalcStats();
}
Thanks for reading me and have a good day !