First attempt at unjailing a prisoner.

This commit is contained in:
graywolf336
2013-12-28 15:08:24 -06:00
parent 17f627350b
commit 04d65088e3
8 changed files with 184 additions and 3 deletions

View File

@ -21,6 +21,7 @@ import com.graywolf336.jail.command.commands.JailListCommand;
import com.graywolf336.jail.command.commands.JailRemoveCellCommand;
import com.graywolf336.jail.command.commands.JailStopCommand;
import com.graywolf336.jail.command.commands.JailVersionCommand;
import com.graywolf336.jail.command.commands.UnjailCommand;
/**
* Where all the commands are registered at and handled, processed, at.
@ -147,6 +148,7 @@ public class CommandHandler {
load(JailRemoveCellCommand.class);
load(JailStopCommand.class);
load(JailVersionCommand.class);
load(UnjailCommand.class);
}
private void load(Class<? extends Command> c) {

View File

@ -0,0 +1,41 @@
package com.graywolf336.jail.command.commands;
import org.bukkit.ChatColor;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
import com.graywolf336.jail.JailManager;
import com.graywolf336.jail.beans.Jail;
import com.graywolf336.jail.command.Command;
import com.graywolf336.jail.command.CommandInfo;
@CommandInfo(
maxArgs = 1,
minimumArgs = 1,
needsPlayer = false,
pattern = "unjail|uj",
permission = "jail.command.unjail",
usage = "/unjail [player]"
)
public class UnjailCommand implements Command {
public boolean execute(JailManager jm, CommandSender sender, String... args) {
if(jm.isPlayerJailed(args[0])) {
Player p = jm.getPlugin().getServer().getPlayerExact(args[0]);
if(p == null) {
sender.sendMessage(ChatColor.RED + "Offline unjailing is not implemented yet.");
}else {
Jail j = jm.getJailPlayerIsIn(args[0]);
try {
jm.getPlugin().getPrisonerManager().unJail(j, j.getCellPrisonerIsIn(args[0]), p, j.getPrisoner(args[0]));
} catch (Exception e) {
sender.sendMessage(ChatColor.RED + e.getMessage());
}
}
}else {
sender.sendMessage(ChatColor.RED + "That player is not jailed.");
}
return true;
}
}