From 3bddfed72f4c7e001ee14845970340fafba7cd51 Mon Sep 17 00:00:00 2001 From: nossr50 Date: Wed, 3 Jul 2019 00:22:32 -0700 Subject: [PATCH] Remove Static Abuse - Level Events --- .../experience/McMMOPlayerExperienceEvent.java | 8 ++++---- .../experience/McMMOPlayerLevelChangeEvent.java | 8 ++++---- .../experience/McMMOPlayerLevelDownEvent.java | 16 ++++++++-------- .../experience/McMMOPlayerLevelUpEvent.java | 16 ++++++++-------- .../experience/McMMOPlayerXpGainEvent.java | 8 ++++---- .../com/gmail/nossr50/util/EventManager.java | 6 +++++- 6 files changed, 33 insertions(+), 29 deletions(-) diff --git a/src/main/java/com/gmail/nossr50/events/experience/McMMOPlayerExperienceEvent.java b/src/main/java/com/gmail/nossr50/events/experience/McMMOPlayerExperienceEvent.java index 3147bffb8..85ee5178e 100644 --- a/src/main/java/com/gmail/nossr50/events/experience/McMMOPlayerExperienceEvent.java +++ b/src/main/java/com/gmail/nossr50/events/experience/McMMOPlayerExperienceEvent.java @@ -18,17 +18,17 @@ public abstract class McMMOPlayerExperienceEvent extends PlayerEvent implements private boolean cancelled; @Deprecated - protected McMMOPlayerExperienceEvent(Player player, PrimarySkillType skill) { + protected McMMOPlayerExperienceEvent(Player player, PrimarySkillType skill, int skillLevel) { super(player); this.skill = skill; - this.skillLevel = pluginRef.getUserManager().getPlayer(player).getSkillLevel(skill); + this.skillLevel = skillLevel; this.xpGainReason = XPGainReason.UNKNOWN; } - protected McMMOPlayerExperienceEvent(Player player, PrimarySkillType skill, XPGainReason xpGainReason) { + protected McMMOPlayerExperienceEvent(Player player, PrimarySkillType skill, int skillLevel, XPGainReason xpGainReason) { super(player); this.skill = skill; - this.skillLevel = pluginRef.getUserManager().getPlayer(player).getSkillLevel(skill); + this.skillLevel = skillLevel; this.xpGainReason = xpGainReason; } diff --git a/src/main/java/com/gmail/nossr50/events/experience/McMMOPlayerLevelChangeEvent.java b/src/main/java/com/gmail/nossr50/events/experience/McMMOPlayerLevelChangeEvent.java index bf23d4443..131cd156b 100644 --- a/src/main/java/com/gmail/nossr50/events/experience/McMMOPlayerLevelChangeEvent.java +++ b/src/main/java/com/gmail/nossr50/events/experience/McMMOPlayerLevelChangeEvent.java @@ -9,11 +9,11 @@ import org.bukkit.entity.Player; */ public abstract class McMMOPlayerLevelChangeEvent extends McMMOPlayerExperienceEvent { @Deprecated - public McMMOPlayerLevelChangeEvent(Player player, PrimarySkillType skill) { - super(player, skill, XPGainReason.UNKNOWN); + public McMMOPlayerLevelChangeEvent(Player player, PrimarySkillType skill, int skillLevel) { + super(player, skill, skillLevel, XPGainReason.UNKNOWN); } - public McMMOPlayerLevelChangeEvent(Player player, PrimarySkillType skill, XPGainReason xpGainReason) { - super(player, skill, xpGainReason); + public McMMOPlayerLevelChangeEvent(Player player, PrimarySkillType skill, int skillLevel, XPGainReason xpGainReason) { + super(player, skill, skillLevel, xpGainReason); } } diff --git a/src/main/java/com/gmail/nossr50/events/experience/McMMOPlayerLevelDownEvent.java b/src/main/java/com/gmail/nossr50/events/experience/McMMOPlayerLevelDownEvent.java index 109ebcab9..27ed33ca8 100644 --- a/src/main/java/com/gmail/nossr50/events/experience/McMMOPlayerLevelDownEvent.java +++ b/src/main/java/com/gmail/nossr50/events/experience/McMMOPlayerLevelDownEvent.java @@ -13,24 +13,24 @@ public class McMMOPlayerLevelDownEvent extends McMMOPlayerLevelChangeEvent { private int levelsLost; @Deprecated - public McMMOPlayerLevelDownEvent(Player player, PrimarySkillType skill) { - super(player, skill, XPGainReason.UNKNOWN); + public McMMOPlayerLevelDownEvent(Player player, PrimarySkillType skill, int skillLevel) { + super(player, skill, skillLevel, XPGainReason.UNKNOWN); this.levelsLost = 1; } @Deprecated - public McMMOPlayerLevelDownEvent(Player player, PrimarySkillType skill, int levelsLost) { - super(player, skill, XPGainReason.UNKNOWN); + public McMMOPlayerLevelDownEvent(Player player, PrimarySkillType skill, int levelsLost, int skillLevel) { + super(player, skill, skillLevel, XPGainReason.UNKNOWN); this.levelsLost = levelsLost; } - public McMMOPlayerLevelDownEvent(Player player, PrimarySkillType skill, XPGainReason xpGainReason) { - super(player, skill, xpGainReason); + public McMMOPlayerLevelDownEvent(Player player, PrimarySkillType skill, int skillLevel, XPGainReason xpGainReason) { + super(player, skill, skillLevel, xpGainReason); this.levelsLost = 1; } - public McMMOPlayerLevelDownEvent(Player player, PrimarySkillType skill, int levelsLost, XPGainReason xpGainReason) { - super(player, skill, xpGainReason); + public McMMOPlayerLevelDownEvent(Player player, PrimarySkillType skill, int levelsLost, int skillLevel, XPGainReason xpGainReason) { + super(player, skill, skillLevel, xpGainReason); this.levelsLost = levelsLost; } diff --git a/src/main/java/com/gmail/nossr50/events/experience/McMMOPlayerLevelUpEvent.java b/src/main/java/com/gmail/nossr50/events/experience/McMMOPlayerLevelUpEvent.java index 333f3df82..436f2aed4 100644 --- a/src/main/java/com/gmail/nossr50/events/experience/McMMOPlayerLevelUpEvent.java +++ b/src/main/java/com/gmail/nossr50/events/experience/McMMOPlayerLevelUpEvent.java @@ -13,24 +13,24 @@ public class McMMOPlayerLevelUpEvent extends McMMOPlayerLevelChangeEvent { private int levelsGained; @Deprecated - public McMMOPlayerLevelUpEvent(Player player, PrimarySkillType skill) { - super(player, skill, XPGainReason.UNKNOWN); + public McMMOPlayerLevelUpEvent(Player player, PrimarySkillType skill, int skillLevel) { + super(player, skill, skillLevel, XPGainReason.UNKNOWN); this.levelsGained = 1; } @Deprecated - public McMMOPlayerLevelUpEvent(Player player, PrimarySkillType skill, int levelsGained) { - super(player, skill, XPGainReason.UNKNOWN); + public McMMOPlayerLevelUpEvent(Player player, PrimarySkillType skill, int levelsGained, int skillLevel) { + super(player, skill, skillLevel, XPGainReason.UNKNOWN); this.levelsGained = levelsGained; } - public McMMOPlayerLevelUpEvent(Player player, PrimarySkillType skill, XPGainReason xpGainReason) { - super(player, skill, xpGainReason); + public McMMOPlayerLevelUpEvent(Player player, PrimarySkillType skill, int skillLevel, XPGainReason xpGainReason) { + super(player, skill, skillLevel, xpGainReason); this.levelsGained = 1; } - public McMMOPlayerLevelUpEvent(Player player, PrimarySkillType skill, int levelsGained, XPGainReason xpGainReason) { - super(player, skill, xpGainReason); + public McMMOPlayerLevelUpEvent(Player player, PrimarySkillType skill, int levelsGained, int skillLevel, XPGainReason xpGainReason) { + super(player, skill, skillLevel, xpGainReason); this.levelsGained = levelsGained; } diff --git a/src/main/java/com/gmail/nossr50/events/experience/McMMOPlayerXpGainEvent.java b/src/main/java/com/gmail/nossr50/events/experience/McMMOPlayerXpGainEvent.java index 84ac76fcf..13bf2f196 100644 --- a/src/main/java/com/gmail/nossr50/events/experience/McMMOPlayerXpGainEvent.java +++ b/src/main/java/com/gmail/nossr50/events/experience/McMMOPlayerXpGainEvent.java @@ -13,13 +13,13 @@ public class McMMOPlayerXpGainEvent extends McMMOPlayerExperienceEvent { private double xpGained; @Deprecated - public McMMOPlayerXpGainEvent(Player player, PrimarySkillType skill, double xpGained) { - super(player, skill, XPGainReason.UNKNOWN); + public McMMOPlayerXpGainEvent(Player player, PrimarySkillType skill, int skillLevel, double xpGained) { + super(player, skill, skillLevel, XPGainReason.UNKNOWN); this.xpGained = xpGained; } - public McMMOPlayerXpGainEvent(Player player, PrimarySkillType skill, double xpGained, XPGainReason xpGainReason) { - super(player, skill, xpGainReason); + public McMMOPlayerXpGainEvent(Player player, PrimarySkillType skill, int skillLevel, double xpGained, XPGainReason xpGainReason) { + super(player, skill, skillLevel, xpGainReason); this.xpGained = xpGained; } diff --git a/src/main/java/com/gmail/nossr50/util/EventManager.java b/src/main/java/com/gmail/nossr50/util/EventManager.java index 70d65b816..944c3f4b9 100644 --- a/src/main/java/com/gmail/nossr50/util/EventManager.java +++ b/src/main/java/com/gmail/nossr50/util/EventManager.java @@ -315,7 +315,7 @@ public class EventManager { } public boolean handleXpGainEvent(Player player, PrimarySkillType skill, double xpGained, XPGainReason xpGainReason) { - McMMOPlayerXpGainEvent event = new McMMOPlayerXpGainEvent(player, skill, xpGained, xpGainReason); + McMMOPlayerXpGainEvent event = new McMMOPlayerXpGainEvent(player, skill, getSkillLevel(player, skill), xpGained, xpGainReason); pluginRef.getServer().getPluginManager().callEvent(event); boolean isCancelled = event.isCancelled(); @@ -459,6 +459,10 @@ public class EventManager { return event; } + private int getSkillLevel(Player player, PrimarySkillType primarySkillType) { + return pluginRef.getUserManager().getPlayer(player).getSkillLevel(primarySkillType); + } + /** * Creates and calls a McMMOPlayerNotificationEvent * @param player target player