diff --git a/Changelog.txt b/Changelog.txt
index 738606b96..1181c293f 100644
--- a/Changelog.txt
+++ b/Changelog.txt
@@ -1,3 +1,7 @@
+Version 2.1.99
+ MASSIVE update to the Russian locale (ru) credit to myfbone
+ Debug mode (/mmodebug) will now print info about XP perks and how they are modifying your incoming XP
+
Version 2.1.98
Fixed a bug that prevented Taming XP from combat
diff --git a/pom.xml b/pom.xml
index bbc93582d..f3a13f392 100755
--- a/pom.xml
+++ b/pom.xml
@@ -2,7 +2,7 @@
4.0.0
com.gmail.nossr50.mcMMO
mcMMO
- 2.1.98
+ 2.1.99-SNAPSHOT
mcMMO
https://github.com/mcMMO-Dev/mcMMO
diff --git a/src/main/java/com/gmail/nossr50/util/skills/PerksUtils.java b/src/main/java/com/gmail/nossr50/util/skills/PerksUtils.java
index 1247c8272..a4e9fae53 100644
--- a/src/main/java/com/gmail/nossr50/util/skills/PerksUtils.java
+++ b/src/main/java/com/gmail/nossr50/util/skills/PerksUtils.java
@@ -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;
}
- return xp;
+ 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 modifiedXP;
}
/**