|
@@ -3,6 +3,8 @@ package com.gmail.nossr50.util.skills;
|
|
|
import com.gmail.nossr50.config.experience.ExperienceConfig;
|
|
|
import com.gmail.nossr50.datatypes.skills.PrimarySkillType;
|
|
|
import com.gmail.nossr50.util.Permissions;
|
|
|
+import com.gmail.nossr50.util.player.UserManager;
|
|
|
+import net.md_5.bungee.api.ChatColor;
|
|
|
import org.bukkit.entity.Player;
|
|
|
|
|
|
public final class PerksUtils {
|
|
@@ -44,29 +46,44 @@ public final class PerksUtils {
|
|
|
}
|
|
|
|
|
|
public static float handleXpPerks(Player player, float xp, PrimarySkillType skill) {
|
|
|
+ double modifier = 1.0F;
|
|
|
+ double originalXP = xp;
|
|
|
+
|
|
|
if (Permissions.customXpBoost(player, skill)) {
|
|
|
- xp *= ExperienceConfig.getInstance().getCustomXpPerkBoost();
|
|
|
+ if(UserManager.getPlayer(player).isDebugMode()) {
|
|
|
+ player.sendMessage(ChatColor.GOLD + "[DEBUG] " + ChatColor.DARK_GRAY + "XP Perk Multiplier IS CUSTOM! ");
|
|
|
+ }
|
|
|
+
|
|
|
+ modifier = ExperienceConfig.getInstance().getCustomXpPerkBoost();
|
|
|
}
|
|
|
else if (Permissions.quadrupleXp(player, skill)) {
|
|
|
- xp *= 4;
|
|
|
+ modifier = 4;
|
|
|
}
|
|
|
else if (Permissions.tripleXp(player, skill)) {
|
|
|
- xp *= 3;
|
|
|
+ modifier = 3;
|
|
|
}
|
|
|
else if (Permissions.doubleAndOneHalfXp(player, skill)) {
|
|
|
- xp *= 2.5;
|
|
|
+ modifier = 2.5;
|
|
|
}
|
|
|
else if (Permissions.doubleXp(player, skill)) {
|
|
|
- xp *= 2;
|
|
|
+ modifier = 2;
|
|
|
}
|
|
|
else if (Permissions.oneAndOneHalfXp(player, skill)) {
|
|
|
- xp *= 1.5;
|
|
|
+ modifier = 1.5;
|
|
|
}
|
|
|
else if (Permissions.oneAndOneTenthXp(player, skill)) {
|
|
|
- xp *= 1.1;
|
|
|
+ modifier = 1.1;
|
|
|
+ }
|
|
|
+
|
|
|
+ float modifiedXP = (float) (xp * modifier);
|
|
|
+
|
|
|
+ if(UserManager.getPlayer(player).isDebugMode()) {
|
|
|
+ player.sendMessage(ChatColor.GOLD + "[DEBUG] " + ChatColor.RESET + "XP Perk Multiplier - " + ChatColor.GREEN + modifier);
|
|
|
+ player.sendMessage(ChatColor.GOLD + "[DEBUG] " + ChatColor.RESET + "Original XP before perk boosts " + ChatColor.DARK_GRAY + originalXP);
|
|
|
+ player.sendMessage(ChatColor.GOLD + "[DEBUG] " + ChatColor.RESET + "XP AFTER PERKS " + ChatColor.RED + modifiedXP);
|
|
|
}
|
|
|
|
|
|
- return xp;
|
|
|
+ return modifiedXP;
|
|
|
}
|
|
|
|
|
|
/**
|