mirror of
https://github.com/plexusorg/Plex-FAWE.git
synced 2025-07-03 19:56:40 +00:00
The /butcher command no longer kills NPCs, except when the -n flag is passed.
Also: - Moved some code from BukkitWorld to LocalWorld. - Replaced the "boolean killPets" argument by an "int flags" to provide extensibility - Made the radius argument a double - Basically rewrote the entire function - Deprecated all old versions of killMobs
This commit is contained in:
@ -26,6 +26,7 @@ import com.sk89q.minecraft.util.commands.CommandPermissions;
|
||||
import com.sk89q.minecraft.util.commands.Logging;
|
||||
import static com.sk89q.minecraft.util.commands.Logging.LogMode.*;
|
||||
import com.sk89q.worldedit.*;
|
||||
import com.sk89q.worldedit.LocalWorld.KillFlags;
|
||||
import com.sk89q.worldedit.blocks.BaseBlock;
|
||||
import com.sk89q.worldedit.patterns.*;
|
||||
import com.sk89q.worldedit.regions.CuboidRegion;
|
||||
@ -344,11 +345,13 @@ public class UtilityCommands {
|
||||
@Command(
|
||||
aliases = { "butcher" },
|
||||
usage = "[radius]",
|
||||
flags = "p",
|
||||
flags = "pn",
|
||||
desc = "Kill all or nearby mobs",
|
||||
help =
|
||||
"Kills nearby mobs, or all mobs if you don't specify a radius.\n" +
|
||||
"The -p flag makes /butcher also kill pets.",
|
||||
"Flags:" +
|
||||
" -p also kill pets.\n" +
|
||||
" -n also kill NPCs.",
|
||||
min = 0,
|
||||
max = 1
|
||||
)
|
||||
@ -361,7 +364,12 @@ public class UtilityCommands {
|
||||
int radius = args.argsLength() > 0 ? Math.max(1, args.getInteger(0)) : -1;
|
||||
|
||||
Vector origin = session.getPlacementPosition(player);
|
||||
int killed = player.getWorld().killMobs(origin, radius, args.hasFlag('p'));
|
||||
|
||||
int flags = 0;
|
||||
if (args.hasFlag('p')) flags |= KillFlags.PETS;
|
||||
if (args.hasFlag('n')) flags |= KillFlags.NPCS;
|
||||
|
||||
int killed = player.getWorld().killMobs(origin, radius, flags);
|
||||
player.print("Killed " + killed + " mobs.");
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user