ZAP - Change All Adjacent Blocks At Once Version: v1.3 Just like the paint bucket tool in graphics editing software, you can now change a whole set of adjacent blocks of the same type using the ZAP command. Beware, this tool can eat your entire world if you're not careful! You can remove blocks entirely by replacing them with air (block type 0). Features: Change the blocktype (relative to the target block) of adjacent blocks, adjacent floor blocks, ceiling blocks, wall blocks, or all of the above. Usage: All command-based, see below. I will add Permissions support sometime soon. ** BEWARE THE GIANT EXPANDING TETRAHEDRON OF DOOM ** - /zrl is your friend. Commands: /zap <block id#> - changes all block(s) of the same type, adjacent to the target block, into block id# block(s)./zap <block name> - useful if you cannot remember the block id#./zapwall <block id#> - Same as /zap but only works on adjacent vertical wall surface - shortcut is /zw <block id#>./zapfloor <block id#> - Same as /zap but only works on adjacent floor blocks (i.e., blocks with air above them) - shortcut is /zf <block id#>./zapceiling <block id#> - Same as /zap but only works on adjacent ceiling blocks - shortcut is /zc <block id#>./zapsurface <block id#> - Same as /zap but only works on blocks exposed to air - shortcut is /zs <block id#>./zrl - Cancels a paint operation if accidentally clicked the wrong block! (Zap ReLoad) - shortcut is /zz./zstat - Shows you how many blocks are in the queue. This number will change as the painting operation runs. Download: Download The Plugin (JAR) v1.3Download The Plugin (ZIP) v1.3Download The Source (JAR) v1.3 • GitHub Changelog: Spoiler (Move your mouse to the spoiler area to reveal the content) Show Spoiler Hide Spoiler Version 1.3 09-Jun-2011 Added command shortcuts: /zf /zc /zw /zs /zz Recompiled against latest recommended Craftbukkit build #818. Added a check to see if a zap operation is still enqueued when the player issues another zap command. Version 1.21 26-Apr-2011 Added parsing of block type IDs by name. Version 1.2 26-Apr-2011 Recompiled against latest recommended Craftbukkit build #733. Version 1.1 25-Apr-2011 Added zapwall, zapfloor, and zapceiling commands. Version 1.0 07-Apr-2011 Created plugin To Do: Make a limit to the number of zapped blocks Allow user-definable max zap size along the Y-axis
So if you zapped some Stone underground you would delete your whole map? No thanks! Make a max block limit defiable in config.
That's a good idea, will do that in the next release. For some reason, org.bukkit.BukkitScheduler isn't working for me, at least not on my server. I changed it to use java.util.Timer instead and it's MUCH faster (but seems to function not-quite-synchronously with the Minecraft ticks). Also doesn't seem to eat too much CPU since it's executing on a separate thread. Incidentally, you wouldn't delete your WHOLE map, you'd just end up with a ridiculously huge hollow space beneath the dirt, and all the sand and gravel in your map would fall, so your beaches would become big gaping holes into the hollow undervoid and your oceans would become big freaky water columns.. Might be fun to try on a freshly-generated junk map..
Well, of course it wouldnt delete your whole map, but rock is probably about 90% of whats underground. So yeah, you would get a really crazy world!
I got this error when using a block name... Code: 23:06:36 [SEVERE] null org.bukkit.command.CommandException: Unhandled exception executing command 'zap' in plugin Zap v1.3 at org.bukkit.command.PluginCommand.execute(PluginCommand.java:37) at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:128) at org.bukkit.craftbukkit.CraftServer.dispatchCommand(CraftServer.java:281) at net.minecraft.server.NetServerHandler.handleCommand(NetServerHandler.java:718) at net.minecraft.server.NetServerHandler.chat(NetServerHandler.java:684) at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:677) at net.minecraft.server.Packet3Chat.a(Packet3Chat.java:32) at net.minecraft.server.NetworkManager.b(NetworkManager.java:217) at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:75) at net.minecraft.server.NetworkListenThread.a(SourceFile:105) at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:401) at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:311) at net.minecraft.server.ThreadServerApplication.run(SourceFile:422) Caused by: java.lang.NumberFormatException: For input string: "brick" at java.lang.NumberFormatException.forInputString(NumberFormatException.java:48) at java.lang.Integer.parseInt(Integer.java:449) at java.lang.Integer.parseInt(Integer.java:499) at net.weasel.Zap.Zap.onCommand(Zap.java:107) at org.bukkit.command.PluginCommand.execute(PluginCommand.java:35) ... 12 more It was working before the update that I received from CraftBukkitUpToDate. Zap at least still works if I put in the item id...
I just updated now, but I'm still getting the error... In game chat console replies with "An internal error occurred while attempting to perform this command" Doesn't seem to like to parse the item names anymore... oh well.