mirror of
https://e.coding.net/circlecloud/Residence.git
synced 2025-11-26 22:06:07 +00:00
@@ -0,0 +1,53 @@
|
||||
package com.bekvon.bukkit.residence.commandsub;
|
||||
|
||||
import org.bukkit.ChatColor;
|
||||
import org.bukkit.command.Command;
|
||||
import org.bukkit.command.CommandException;
|
||||
import org.bukkit.command.CommandSender;
|
||||
import org.bukkit.entity.Player;
|
||||
|
||||
import com.bekvon.bukkit.residence.Residence;
|
||||
import com.bekvon.bukkit.residence.protection.ClaimedResidence;
|
||||
import com.bekvon.bukkit.residence.protection.ResidenceManager;
|
||||
import com.bekvon.bukkit.residence.text.Language;
|
||||
|
||||
import cn.citycraft.PluginHelper.commands.BaseCommand;
|
||||
|
||||
public class CommandGset extends BaseCommand {
|
||||
Residence plugin;
|
||||
|
||||
public CommandGset(final Residence plugin) {
|
||||
super("gset");
|
||||
this.plugin = plugin;
|
||||
setOnlyPlayerExecutable(true);
|
||||
setMinimumArguments(3);
|
||||
setPossibleArguments("<领地名称(不写则为所在领地)> <组名称> <权限> <权限状态>");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void execute(final CommandSender sender, final Command command, final String label, final String[] args) throws CommandException {
|
||||
final Player player = (Player) sender;
|
||||
final boolean resadmin = (command != null);
|
||||
final ResidenceManager rmanager = plugin.getResidenceManager();
|
||||
final Language language = plugin.getLanguage();
|
||||
|
||||
if (args.length == 3) {
|
||||
final ClaimedResidence area = rmanager.getByLoc(player.getLocation());
|
||||
if (area != null) {
|
||||
area.getPermissions().setGroupFlag(player, args[0], args[1], args[2], resadmin);
|
||||
} else {
|
||||
player.sendMessage(ChatColor.RED + language.getPhrase("InvalidArea"));
|
||||
}
|
||||
return;
|
||||
} else if (args.length == 4) {
|
||||
final ClaimedResidence area = rmanager.getByName(args[0]);
|
||||
if (area != null) {
|
||||
area.getPermissions().setGroupFlag(player, args[1], args[2], args[3], resadmin);
|
||||
} else {
|
||||
player.sendMessage(ChatColor.RED + language.getPhrase("InvalidResidence"));
|
||||
}
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user