private void LevelUp() { CurrentExp -= ExpToNextLevel; CurrentExp = Mathf.Max(0, CurrentExp); PartyLevel++; Party.ForEach(partyMember => partyMember.LevelUp()); OnLevelUpEvent.Invoke(); }
private void LevelUp() { currentLevel++; ui.SetLevelTo(currentLevel); ui.PlayLevelTextPopAnimation(); currentXP = 0; ui.SetXP(0); currentMaxXP += xpConstant; ui.setMaxXP(currentMaxXP); XPParticles.Play(); PlayLevelUpSound(); OnLevelUpEvent?.Invoke(currentLevel); }
private void UpdateLevel(float currExperience) { int maxSupportedLevel = progression.GetMaxLevelSupported(Stat.ExperienceToNextLevel, CharacterClass.PLAYER); if (maxSupportedLevel <= Level) { // No action required return; } float expToNextLevel = progression.GetStat(Stat.ExperienceToNextLevel, CharacterClass.PLAYER, Level); if (expToNextLevel <= currExperience) { LevelUpEffect(); levelSystem.LevelUp(); OnLevelUpEvent?.Invoke(); } }