From 9b3091add43ec9c13bdd048ced46844619983324 Mon Sep 17 00:00:00 2001 From: nossr50 Date: Thu, 25 Jul 2019 21:43:19 -0700 Subject: [PATCH] Debug mode will now dump info about XP perks and how they are modifying incoming XP gains --- Changelog.txt | 4 +++ pom.xml | 2 +- .../gmail/nossr50/util/skills/PerksUtils.java | 33 ++++++++++++++----- 3 files changed, 30 insertions(+), 9 deletions(-) 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; } /**