This commit is contained in:
2012-02-16 15:59:57 -08:00
parent f194d8ef20
commit 71d4b63d63
4 changed files with 62 additions and 15 deletions

View File

@@ -14,6 +14,7 @@ import org.bukkit.plugin.Plugin;
import org.bukkit.plugin.PluginDescriptionFile;
import org.bukkit.plugin.java.JavaPlugin;
import com.majinnaibu.bukkit.plugins.metropolis.commands.MetropolisFlagResetCommand;
import com.majinnaibu.bukkit.plugins.metropolis.commands.MetropolisHomeGenerateCommand;
import com.majinnaibu.bukkit.plugins.metropolis.commands.MetropolisHomeListCommand;
import com.sk89q.worldedit.BlockVector;
@@ -116,6 +117,7 @@ public class MetropolisPlugin extends JavaPlugin {
getCommand("metropolis-home-generate").setExecutor(new MetropolisHomeGenerateCommand(this));
getCommand("metropolis-home-list").setExecutor(new MetropolisHomeListCommand(this));
getCommand("metropolis-flag-reset").setExecutor(new MetropolisFlagResetCommand(this));
}
/*

View File

@@ -0,0 +1,53 @@
package com.majinnaibu.bukkit.plugins.metropolis.commands;
import org.bukkit.command.Command;
import org.bukkit.command.CommandExecutor;
import org.bukkit.command.CommandSender;
import com.majinnaibu.bukkit.plugins.metropolis.MetropolisPlugin;
import com.sk89q.worldguard.protection.flags.DefaultFlag;
import com.sk89q.worldguard.protection.flags.StateFlag;
import com.sk89q.worldguard.protection.regions.ProtectedRegion;
public class MetropolisFlagResetCommand implements CommandExecutor {
private MetropolisPlugin _plugin;
public MetropolisFlagResetCommand(MetropolisPlugin plugin){
_plugin = plugin;
}
@Override
public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
ProtectedRegion cityRegion = _plugin.regionManager.getRegion("City");
cityRegion.setFlag(DefaultFlag.PVP, StateFlag.State.DENY);
cityRegion.setFlag(DefaultFlag.MOB_DAMAGE, StateFlag.State.DENY);
cityRegion.setFlag(DefaultFlag.MOB_SPAWNING, StateFlag.State.DENY);
cityRegion.setFlag(DefaultFlag.CREEPER_EXPLOSION, StateFlag.State.DENY);
cityRegion.setFlag(DefaultFlag.ENDER_BUILD, StateFlag.State.DENY);
cityRegion.setFlag(DefaultFlag.GHAST_FIREBALL, StateFlag.State.DENY);
cityRegion.setFlag(DefaultFlag.TNT, StateFlag.State.DENY);
cityRegion.setFlag(DefaultFlag.LAVA_FLOW, StateFlag.State.DENY);
cityRegion.setFlag(DefaultFlag.SNOW_FALL, StateFlag.State.DENY);
for(ProtectedRegion homeRegion: _plugin.regionManager.getRegions().values()){
if(homeRegion.getId().startsWith("h_")){
homeRegion.setFlag(DefaultFlag.PVP, StateFlag.State.DENY);
homeRegion.setFlag(DefaultFlag.MOB_DAMAGE, StateFlag.State.DENY);
homeRegion.setFlag(DefaultFlag.MOB_SPAWNING, StateFlag.State.DENY);
homeRegion.setFlag(DefaultFlag.CREEPER_EXPLOSION, StateFlag.State.DENY);
homeRegion.setFlag(DefaultFlag.ENDER_BUILD, StateFlag.State.DENY);
homeRegion.setFlag(DefaultFlag.GHAST_FIREBALL, StateFlag.State.DENY);
homeRegion.setFlag(DefaultFlag.TNT, StateFlag.State.DENY);
}
}
sender.sendMessage("Metropolis: flags have been reset");
return true;
}
}

View File

@@ -3,7 +3,6 @@ package com.majinnaibu.bukkit.plugins.metropolis.commands;
import org.bukkit.command.Command;
import org.bukkit.command.CommandExecutor;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
import com.majinnaibu.bukkit.plugins.metropolis.MetropolisPlugin;
@@ -17,17 +16,6 @@ public class MetropolisHomeGenerateCommand implements CommandExecutor {
@Override
public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
Player player = null;
if(sender instanceof Player){
player = (Player)sender;
}
if(player != null){
if(!player.hasPermission("metropolis.generate")){
return false;
}
}
if(args.length < 1){
return false;
}

View File

@@ -7,9 +7,13 @@ database: false
commands:
metropolis-home-generate:
description: This command generates a home for a user as if they'd just logged in.
permission: metropolis.generate
permission: metropolis.home.generate
usage: /metropolis-home-generate <playername>
metropolis-home-list:
description: This lists the regions managed by Metropolis
permission: metropolis.list
usage: /metropolis-home-list
permission: metropolis.home.list
usage: /metropolis-home-list
metropolis-flag-reset:
description: This command resets the WorldGuard flags for all managed regions (city and h_*).
permission: metropolis.flag.reset
usage: /metropolis-flag-reset