mcMMO/src/main/java/com/gmail/nossr50/commands/spout/XplockCommand.java

80 lines
2.9 KiB
Java
Raw Normal View History

2012-01-09 20:00:13 +01:00
package com.gmail.nossr50.commands.spout;
import org.bukkit.ChatColor;
import org.bukkit.command.Command;
import org.bukkit.command.CommandExecutor;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
import com.gmail.nossr50.Users;
import com.gmail.nossr50.m;
import com.gmail.nossr50.mcPermissions;
2012-04-23 01:34:34 +02:00
import com.gmail.nossr50.commands.CommandHelper;
2012-04-26 16:27:57 +02:00
import com.gmail.nossr50.config.Config;
2012-01-09 20:00:13 +01:00
import com.gmail.nossr50.datatypes.PlayerProfile;
2012-04-23 01:34:34 +02:00
import com.gmail.nossr50.datatypes.SkillType;
2012-01-09 20:00:13 +01:00
import com.gmail.nossr50.locale.mcLocale;
import com.gmail.nossr50.skills.Skills;
import com.gmail.nossr50.spout.SpoutStuff;
public class XplockCommand implements CommandExecutor {
2012-04-23 01:34:34 +02:00
@Override
public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
String usage = ChatColor.RED + "Proper usage is /xplock [skill]";
if (CommandHelper.noConsoleUsage(sender)) {
return true;
}
if (!Config.getInstance().spoutEnabled || !Config.getInstance().getSpoutXPBarEnabled() || !Config.getInstance().getCommandXPLockEnabled()) {
2012-04-23 01:34:34 +02:00
sender.sendMessage(mcLocale.getString("Commands.Disabled"));
return true;
}
Player player = (Player) sender;
PlayerProfile PP = Users.getProfile(player);
switch (args.length) {
case 0:
if (PP.getXpBarLocked()) {
PP.toggleXpBarLocked();
player.sendMessage(mcLocale.getString("Commands.xplock.unlocked"));
return true;
}
SkillType lastGained = PP.getLastGained();
if (lastGained != null) {
PP.toggleXpBarLocked();
PP.setSkillLock(lastGained);
player.sendMessage(mcLocale.getString("Commands.xplock.locked", new Object[] { m.getCapitalized(lastGained.toString()) }));
return true;
}
case 1:
if (Skills.isSkill(args[0])) {
if (mcPermissions.getInstance().permission(player, "mcmmo.skills." + args[0].toLowerCase())) {
PP.setXpBarLocked(true);
PP.setSkillLock(Skills.getSkillType(args[0]));
SpoutStuff.updateXpBar(player);
player.sendMessage(mcLocale.getString("Commands.xplock.locked", new Object[] { m.getCapitalized(args[0]) }));
return true;
}
else {
player.sendMessage(mcLocale.getString("mcMMO.NoPermission"));
return true;
}
}
else {
player.sendMessage(mcLocale.getString("Commands.Skill.Invalid"));
return true;
}
default:
player.sendMessage(usage);
return true;
}
}
2012-01-09 20:00:13 +01:00
}