Browse Source

Fire McMMOPlayerLevelUp events for our experience commands, when
applicable. Fixes #921

GJ 12 years ago
parent
commit
a2f80569e3

+ 6 - 0
src/main/java/com/gmail/nossr50/commands/experience/AddlevelsCommand.java

@@ -2,7 +2,9 @@ package com.gmail.nossr50.commands.experience;
 
 import org.bukkit.command.CommandSender;
 
+import com.gmail.nossr50.mcMMO;
 import com.gmail.nossr50.datatypes.skills.SkillType;
+import com.gmail.nossr50.events.experience.McMMOPlayerLevelUpEvent;
 import com.gmail.nossr50.locale.LocaleLoader;
 import com.gmail.nossr50.util.Permissions;
 import com.gmail.nossr50.util.skills.SkillUtils;
@@ -21,6 +23,10 @@ public class AddlevelsCommand extends ExperienceCommand {
     @Override
     protected void handleCommand(SkillType skill) {
         profile.addLevels(skill, value);
+
+        if (player != null) {
+            mcMMO.p.getServer().getPluginManager().callEvent(new McMMOPlayerLevelUpEvent(player, skill, value));
+        }
     }
 
     @Override

+ 6 - 0
src/main/java/com/gmail/nossr50/commands/experience/MmoeditCommand.java

@@ -2,7 +2,9 @@ package com.gmail.nossr50.commands.experience;
 
 import org.bukkit.command.CommandSender;
 
+import com.gmail.nossr50.mcMMO;
 import com.gmail.nossr50.datatypes.skills.SkillType;
+import com.gmail.nossr50.events.experience.McMMOPlayerLevelUpEvent;
 import com.gmail.nossr50.locale.LocaleLoader;
 import com.gmail.nossr50.util.Permissions;
 import com.gmail.nossr50.util.skills.SkillUtils;
@@ -21,6 +23,10 @@ public class MmoeditCommand extends ExperienceCommand {
     @Override
     protected void handleCommand(SkillType skill) {
         profile.modifySkill(skill, value);
+
+        if (player != null) {
+            mcMMO.p.getServer().getPluginManager().callEvent(new McMMOPlayerLevelUpEvent(player, skill, value - profile.getSkillLevel(skill)));
+        }
     }
 
     @Override

+ 6 - 2
src/main/java/com/gmail/nossr50/commands/experience/SkillresetCommand.java

@@ -3,8 +3,10 @@ package com.gmail.nossr50.commands.experience;
 import org.bukkit.command.Command;
 import org.bukkit.command.CommandSender;
 
+import com.gmail.nossr50.mcMMO;
 import com.gmail.nossr50.datatypes.player.PlayerProfile;
 import com.gmail.nossr50.datatypes.skills.SkillType;
+import com.gmail.nossr50.events.experience.McMMOPlayerLevelUpEvent;
 import com.gmail.nossr50.locale.LocaleLoader;
 import com.gmail.nossr50.util.Permissions;
 import com.gmail.nossr50.util.commands.CommandUtils;
@@ -84,13 +86,11 @@ public class SkillresetCommand extends ExperienceCommand {
 
     @Override
     protected boolean permissionsCheckSelf(CommandSender sender) {
-        // TODO Auto-generated method stub
         return false;
     }
 
     @Override
     protected boolean permissionsCheckOthers(CommandSender sender) {
-        // TODO Auto-generated method stub
         return false;
     }
 
@@ -102,6 +102,10 @@ public class SkillresetCommand extends ExperienceCommand {
         }
 
         profile.modifySkill(skill, 0);
+
+        if (player != null) {
+            mcMMO.p.getServer().getPluginManager().callEvent(new McMMOPlayerLevelUpEvent(player, skill, 0 - profile.getSkillLevel(skill)));
+        }
     }
 
     @Override

+ 1 - 1
src/main/java/com/gmail/nossr50/events/experience/McMMOPlayerLevelUpEvent.java

@@ -17,7 +17,7 @@ public class McMMOPlayerLevelUpEvent extends McMMOPlayerExperienceEvent {
 
     public McMMOPlayerLevelUpEvent(Player player, SkillType skill, int levelsGained) {
         super(player, skill);
-        this.setLevelsGained(levelsGained);
+        this.levelsGained = levelsGained;
     }
 
     /**