mirror of
https://github.com/mcMMO-Dev/mcMMO.git
synced 2025-06-25 10:14:43 +02:00
Added new experience curve option
This commit is contained in:
@ -294,5 +294,6 @@ public class Config extends AutoUpdateConfigLoader {
|
||||
|
||||
/* XP Formula Multiplier */
|
||||
public int getFormulaMultiplierCurve() { return config.getInt("Experience.Formula.Curve_Modifier", 20); }
|
||||
public boolean getCumulativeCurveEnabled() { return config.getBoolean("Experience.Formula.Cumulative_Curve", false); }
|
||||
public double getFormulaSkillModifier(SkillType skill) { return config.getDouble("Experience.Formula.Modifier." + StringUtils.getCapitalized(skill.toString())); }
|
||||
}
|
||||
|
@ -15,6 +15,7 @@ import com.gmail.nossr50.datatypes.skills.SkillType;
|
||||
import com.gmail.nossr50.datatypes.spout.huds.HudType;
|
||||
import com.gmail.nossr50.datatypes.spout.huds.McMMOHud;
|
||||
import com.gmail.nossr50.skills.child.FamilyTree;
|
||||
import com.gmail.nossr50.util.player.UserManager;
|
||||
|
||||
public class PlayerProfile {
|
||||
private final String playerName;
|
||||
@ -274,6 +275,10 @@ public class PlayerProfile {
|
||||
* @return the Xp remaining until next level
|
||||
*/
|
||||
public int getXpToLevel(SkillType skillType) {
|
||||
if (Config.getInstance().getCumulativeCurveEnabled()) {
|
||||
return 1020 + (UserManager.getPlayer(playerName).getPowerLevel() * Config.getInstance().getFormulaMultiplierCurve());
|
||||
}
|
||||
|
||||
return 1020 + (skills.get(skillType) * Config.getInstance().getFormulaMultiplierCurve());
|
||||
}
|
||||
|
||||
|
@ -290,6 +290,10 @@ Experience:
|
||||
Formula:
|
||||
Curve_Modifier: 20
|
||||
|
||||
# Cumulative experience curves will use a players power level instead of their skill level,
|
||||
# players with high power levels will have to gain a lot more experience to reach the next level in every skill.
|
||||
Cumulative_Curve: false
|
||||
|
||||
# Experience gained will get divided by these values. 1.0 by default, 2.0 means two times lower
|
||||
Modifier:
|
||||
Swords: 1.0
|
||||
|
Reference in New Issue
Block a user