mirror of
https://github.com/mcMMO-Dev/mcMMO.git
synced 2024-11-24 06:06:45 +01:00
52 lines
1.6 KiB
Java
52 lines
1.6 KiB
Java
package com.gmail.nossr50.commands.experience;
|
|
|
|
import org.bukkit.command.CommandSender;
|
|
import org.bukkit.entity.Player;
|
|
|
|
import com.gmail.nossr50.datatypes.player.PlayerProfile;
|
|
import com.gmail.nossr50.datatypes.skills.SkillType;
|
|
import com.gmail.nossr50.locale.LocaleLoader;
|
|
import com.gmail.nossr50.util.EventUtils;
|
|
import com.gmail.nossr50.util.Permissions;
|
|
|
|
public class MmoeditCommand extends ExperienceCommand {
|
|
@Override
|
|
protected boolean permissionsCheckSelf(CommandSender sender) {
|
|
return Permissions.mmoedit(sender);
|
|
}
|
|
|
|
@Override
|
|
protected boolean permissionsCheckOthers(CommandSender sender) {
|
|
return Permissions.mmoeditOthers(sender);
|
|
}
|
|
|
|
@Override
|
|
protected void handleCommand(Player player, PlayerProfile profile, SkillType skill, int value) {
|
|
int skillLevel = profile.getSkillLevel(skill);
|
|
float xpRemoved = profile.getSkillXpLevelRaw(skill);
|
|
|
|
profile.modifySkill(skill, value);
|
|
|
|
if (player == null) {
|
|
profile.save();
|
|
return;
|
|
}
|
|
|
|
if (value == skillLevel) {
|
|
return;
|
|
}
|
|
|
|
EventUtils.handleLevelChangeEvent(player, skill, value, xpRemoved, value > skillLevel);
|
|
}
|
|
|
|
@Override
|
|
protected void handlePlayerMessageAll(Player player, int value) {
|
|
player.sendMessage(LocaleLoader.getString("Commands.mmoedit.AllSkills.1", value));
|
|
}
|
|
|
|
@Override
|
|
protected void handlePlayerMessageSkill(Player player, int value, SkillType skill) {
|
|
player.sendMessage(LocaleLoader.getString("Commands.mmoedit.Modified.1", skill.getName(), value));
|
|
}
|
|
}
|