mirror of
https://github.com/mcMMO-Dev/mcMMO.git
synced 2025-06-25 02:04:44 +02:00
child skills can have their xp bars turned on
This commit is contained in:
@ -190,17 +190,16 @@ public class McMMOPlayer {
|
||||
|
||||
public void updateXPBar(PrimarySkillType primarySkillType, Plugin plugin)
|
||||
{
|
||||
//Skill Unlock Notifications
|
||||
|
||||
if(primarySkillType.isChildSkill())
|
||||
return;
|
||||
|
||||
//XP BAR UPDATES
|
||||
experienceBarManager.updateExperienceBar(primarySkillType, plugin);
|
||||
}
|
||||
|
||||
public double getProgressInCurrentSkillLevel(PrimarySkillType primarySkillType)
|
||||
{
|
||||
if(primarySkillType.isChildSkill()) {
|
||||
return 1.0D;
|
||||
}
|
||||
|
||||
double currentXP = profile.getSkillXpLevel(primarySkillType);
|
||||
double maxXP = profile.getXpToLevel(primarySkillType);
|
||||
|
||||
|
@ -12,6 +12,7 @@ import com.gmail.nossr50.mcMMO;
|
||||
import com.gmail.nossr50.runnables.player.PlayerProfileSaveTask;
|
||||
import com.gmail.nossr50.skills.child.FamilyTree;
|
||||
import com.gmail.nossr50.util.player.UserManager;
|
||||
import com.gmail.nossr50.util.skills.SkillUtils;
|
||||
import com.google.common.collect.ImmutableMap;
|
||||
|
||||
import java.util.HashMap;
|
||||
@ -266,6 +267,10 @@ public class PlayerProfile {
|
||||
}
|
||||
|
||||
public int getSkillXpLevel(PrimarySkillType skill) {
|
||||
if(skill.isChildSkill()) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
return (int) Math.floor(getSkillXpLevelRaw(skill));
|
||||
}
|
||||
|
||||
@ -415,6 +420,10 @@ public class PlayerProfile {
|
||||
* @return the total amount of Xp until next level
|
||||
*/
|
||||
public int getXpToLevel(PrimarySkillType primarySkillType) {
|
||||
if(primarySkillType.isChildSkill()) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
int level = (ExperienceConfig.getInstance().getCumulativeCurveEnabled()) ? UserManager.getPlayer(playerName).getPowerLevel() : skills.get(primarySkillType);
|
||||
FormulaType formulaType = ExperienceConfig.getInstance().getFormulaType();
|
||||
|
||||
|
@ -117,19 +117,25 @@ public class ExperienceBarManager {
|
||||
hideExperienceBar(skillType);
|
||||
break;
|
||||
case RESET:
|
||||
//Hide all currently permanent bars
|
||||
for(PrimarySkillType permanent : alwaysVisible) {
|
||||
hideExperienceBar(permanent);
|
||||
}
|
||||
|
||||
alwaysVisible.clear();
|
||||
disabledBars.clear();
|
||||
|
||||
resetBarSettings();
|
||||
break;
|
||||
}
|
||||
|
||||
informPlayer(settingTarget, skillType);
|
||||
}
|
||||
|
||||
private void resetBarSettings() {
|
||||
//Hide all currently permanent bars
|
||||
for(PrimarySkillType permanent : alwaysVisible) {
|
||||
hideExperienceBar(permanent);
|
||||
}
|
||||
|
||||
alwaysVisible.clear();
|
||||
disabledBars.clear();
|
||||
|
||||
//Hide child skills by default
|
||||
disabledBars.add(PrimarySkillType.SALVAGE);
|
||||
disabledBars.add(PrimarySkillType.SMELTING);
|
||||
}
|
||||
|
||||
private void informPlayer(@NotNull ExperienceBarManager.@NotNull XPBarSettingTarget settingTarget, @Nullable PrimarySkillType skillType) {
|
||||
|
Reference in New Issue
Block a user