Convert /party disband to a subcommand

This commit is contained in:
GJ
2013-02-11 15:19:41 -05:00
parent 59a52a73bb
commit 1c0e392552
2 changed files with 49 additions and 33 deletions

View File

@ -31,6 +31,7 @@ public class PartyCommand implements CommandExecutor {
private CommandExecutor partyItemShareCommand = new PartyItemShareCommand();
private CommandExecutor partyInviteCommand = new PartyInviteCommand();
private CommandExecutor partyKickCommand = new PartyKickCommand();
private CommandExecutor partyDisbandCommand = new PartyDisbandCommand();
@Override
public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
@ -84,7 +85,7 @@ public class PartyCommand implements CommandExecutor {
return partyKickCommand.onCommand(sender, command, label, args);
}
else if (args[0].equalsIgnoreCase("disband")) {
return disband();
return partyDisbandCommand.onCommand(sender, command, label, args);
}
else if (args[0].equalsIgnoreCase("owner")) {
return changeOwner(args);
@ -189,38 +190,6 @@ public class PartyCommand implements CommandExecutor {
return true;
}
/**
* Disband the current party, kicks out all party members.
*/
private boolean disband() {
if (CommandHelper.noCommandPermissions(player, "mcmmo.commands.party.disband")) {
return true;
}
String playerName = player.getName();
Party party = mcMMOPlayer.getParty();
if (party.getLeader().equals(playerName)) {
for (Player onlineMembers : party.getOnlineMembers()) {
McMMOPartyChangeEvent event = new McMMOPartyChangeEvent(onlineMembers, party.getName(), null, EventReason.KICKED_FROM_PARTY);
mcMMO.p.getServer().getPluginManager().callEvent(event);
if (event.isCancelled()) {
return true;
}
onlineMembers.sendMessage(LocaleLoader.getString("Party.Disband"));
}
PartyManager.disbandParty(party);
}
else {
player.sendMessage(LocaleLoader.getString("Party.NotOwner"));
}
return true;
}
/**
* Change the owner of the current party
*/