|
@@ -5,6 +5,7 @@ import com.gmail.nossr50.datatypes.player.McMMOPlayer;
|
|
import com.gmail.nossr50.datatypes.skills.PrimarySkillType;
|
|
import com.gmail.nossr50.datatypes.skills.PrimarySkillType;
|
|
import com.gmail.nossr50.locale.LocaleLoader;
|
|
import com.gmail.nossr50.locale.LocaleLoader;
|
|
import com.gmail.nossr50.util.StringUtils;
|
|
import com.gmail.nossr50.util.StringUtils;
|
|
|
|
+import com.gmail.nossr50.util.player.PlayerLevelUtils;
|
|
import org.bukkit.Server;
|
|
import org.bukkit.Server;
|
|
import org.bukkit.boss.BarColor;
|
|
import org.bukkit.boss.BarColor;
|
|
import org.bukkit.boss.BarStyle;
|
|
import org.bukkit.boss.BarStyle;
|
|
@@ -20,7 +21,6 @@ public class ExperienceBarWrapper {
|
|
|
|
|
|
private final PrimarySkillType primarySkillType; //Primary Skill
|
|
private final PrimarySkillType primarySkillType; //Primary Skill
|
|
private BossBar bossBar;
|
|
private BossBar bossBar;
|
|
- private final Server server;
|
|
|
|
protected final McMMOPlayer mcMMOPlayer;
|
|
protected final McMMOPlayer mcMMOPlayer;
|
|
private int lastLevelUpdated;
|
|
private int lastLevelUpdated;
|
|
|
|
|
|
@@ -33,7 +33,6 @@ public class ExperienceBarWrapper {
|
|
public ExperienceBarWrapper(PrimarySkillType primarySkillType, McMMOPlayer mcMMOPlayer)
|
|
public ExperienceBarWrapper(PrimarySkillType primarySkillType, McMMOPlayer mcMMOPlayer)
|
|
{
|
|
{
|
|
this.mcMMOPlayer = mcMMOPlayer;
|
|
this.mcMMOPlayer = mcMMOPlayer;
|
|
- this.server = mcMMOPlayer.getPlayer().getServer(); //Might not be good for bungee to do this
|
|
|
|
this.primarySkillType = primarySkillType;
|
|
this.primarySkillType = primarySkillType;
|
|
title = "";
|
|
title = "";
|
|
lastLevelUpdated = 0;
|
|
lastLevelUpdated = 0;
|
|
@@ -58,7 +57,10 @@ public class ExperienceBarWrapper {
|
|
|
|
|
|
private String getTitleTemplate() {
|
|
private String getTitleTemplate() {
|
|
//If they are using extra details
|
|
//If they are using extra details
|
|
- if(ExperienceConfig.getInstance().getAddExtraDetails())
|
|
|
|
|
|
+
|
|
|
|
+ if(ExperienceConfig.getInstance().isEarlyGameBoostEnabled() && PlayerLevelUtils.qualifiesForEarlyGameBoost(mcMMOPlayer, primarySkillType)) {
|
|
|
|
+ return LocaleLoader.getString("XPBar.Template.EarlyGameBoost");
|
|
|
|
+ } else if(ExperienceConfig.getInstance().getAddExtraDetails())
|
|
return LocaleLoader.getString("XPBar.Complex.Template", LocaleLoader.getString("XPBar."+niceSkillName, getLevel()), getCurrentXP(), getMaxXP(), getPowerLevel(), getPercentageOfLevel());
|
|
return LocaleLoader.getString("XPBar.Complex.Template", LocaleLoader.getString("XPBar."+niceSkillName, getLevel()), getCurrentXP(), getMaxXP(), getPowerLevel(), getPercentageOfLevel());
|
|
|
|
|
|
return LocaleLoader.getString("XPBar."+niceSkillName, getLevel(), getCurrentXP(), getMaxXP(), getPowerLevel(), getPercentageOfLevel());
|
|
return LocaleLoader.getString("XPBar."+niceSkillName, getLevel(), getCurrentXP(), getMaxXP(), getPowerLevel(), getPercentageOfLevel());
|
|
@@ -106,6 +108,13 @@ public class ExperienceBarWrapper {
|
|
else
|
|
else
|
|
bossBar.setProgress(v);
|
|
bossBar.setProgress(v);
|
|
|
|
|
|
|
|
+ //Check player level
|
|
|
|
+ if(ExperienceConfig.getInstance().isEarlyGameBoostEnabled() && PlayerLevelUtils.qualifiesForEarlyGameBoost(mcMMOPlayer, primarySkillType)) {
|
|
|
|
+ setColor(BarColor.YELLOW);
|
|
|
|
+ } else {
|
|
|
|
+ setColor(ExperienceConfig.getInstance().getExperienceBarColor(primarySkillType));
|
|
|
|
+ }
|
|
|
|
+
|
|
//Every time progress updates we need to check for a title update
|
|
//Every time progress updates we need to check for a title update
|
|
if(getLevel() != lastLevelUpdated || ExperienceConfig.getInstance().getDoExperienceBarsAlwaysUpdateTitle())
|
|
if(getLevel() != lastLevelUpdated || ExperienceConfig.getInstance().getDoExperienceBarsAlwaysUpdateTitle())
|
|
{
|
|
{
|