Commit graph

1717 Commits

Autor SHA1 Nachricht Datum
sk89q
09ca5c3131 Cleaned up Javadocs for CuboidRegion; added preconditions. 2014-03-28 00:16:24 -07:00
sk89q
9cd164ae98 Removed mask support from BlockCount.
RegionMaskFilter handles it.
2014-03-27 21:11:02 -07:00
sk89q
a6e979ec6c Moved visitors to com.sk89q.worldedit.visitor. 2014-03-27 21:07:38 -07:00
sk89q
e022804c27 Changed //center to use visitors. 2014-03-27 21:04:07 -07:00
sk89q
570b4ebd93 Made CuboidRegions in EditSession clamp Y to world. 2014-03-27 20:57:20 -07:00
sk89q
d9ad0014f0 Made CuboidRegion(world, ...) constructor clamp to world. 2014-03-27 20:54:35 -07:00
sk89q
5cfc05c616 Converted /removenear, //replace to visitors. 2014-03-27 20:48:36 -07:00
sk89q
2311964b82 Added RegionMaskFilter to filter a RegionFunction. 2014-03-27 20:47:25 -07:00
sk89q
8c3912b5e7 Added FuzzyBlockMask(BaseBlock... block) constructor. 2014-03-27 20:47:01 -07:00
sk89q
b21f944570 Changed /remove[above|below], //set to use visitors. 2014-03-27 19:57:24 -07:00
sk89q
dbb7b085f0 Changed //count, //fill, //fillr to use visitors. 2014-03-27 08:22:18 +01:00
sk89q
2562a2f577 Added OperationHelper.completeBlindly(). 2014-03-27 08:22:18 +01:00
sk89q
45c2868d4c Added various visitors (BFS, Downward, Recursive, Region). 2014-03-27 08:22:18 +01:00
sk89q
a7300cf9ef Aded BlockReplace, which replaces blocks with a pattern. 2014-03-27 08:22:18 +01:00
sk89q
79643790cc Added BlockCount, which counts the number of blocks matching a mask. 2014-03-27 08:22:17 +01:00
sk89q
c7fcbb299d Added FuzzyBlockMask, which uses BaseBlock.containsFuzzy. 2014-03-27 08:22:17 +01:00
sk89q
0cafe4abb8 Added BoundedYMask that requires that Y is in a range. 2014-03-27 08:22:17 +01:00
sk89q
52bbbb1797 Added CombinedMask(Mask ...mask) constructor. 2014-03-27 08:22:17 +01:00
sk89q
7c4a67d32b FlatRegionApplicator -> FlatRegionVisitor. 2014-03-27 08:22:17 +01:00
TomyLobo
8868aa94d3 The /butcher command no longer kills mobs with a name tag.
This behaviour can be overridden with the new -t flag.
The -f flag encompasses this flag.
2014-03-27 08:21:07 +01:00
TomyLobo
d18a20dafa Clarified some comments. 2014-03-27 08:21:06 +01:00
TomyLobo
6262fe35bd Fixed some javadocs. 2014-03-23 22:26:08 +01:00
sk89q
b3e03f59ac Don't grow pumpkin patches on non-grass blocks. 2014-03-01 16:57:14 -08:00
sk89q
c5fdfa7a0d Made GroundScatterFunction use a NoiseGenerator. 2014-03-01 16:52:36 -08:00
sk89q
d2e93dfe23 Added GardenPatchGenerator, GroundScatterFunction.
/pumpkins now uses the new classes.
2014-03-01 15:46:00 -08:00
sk89q
fb634ef95b Delegate flora creation to new FloraGenerator.
Sadly, no biome-specific flowers because the biome API in WorldEdit apparently needs some improvement.
2014-03-01 14:37:08 -08:00
sk89q
0402faa839 Added GroundFindingFunction.shouldPassThrough(). 2014-03-01 14:08:17 -08:00
sk89q
31060e1e0c Moved FlatRegion cast code to FlatRegionApplicator's constructor. 2014-03-01 13:54:44 -08:00
sk89q
c87b1acbad Added FlatRegionApplicator for FlatRegionFunctions. 2014-03-01 12:37:18 -08:00
sk89q
504c7a5ff1 Have upperY and lowerY on GroundFindingFunction be set via mutators. 2014-03-01 12:03:10 -08:00
sk89q
6f116cd564 Added FloraPlacer FlatRegionFunction and //flora. 2014-03-01 10:41:32 -08:00
sk89q
bc711d9036 Implemented ForestGenerator that performs the "forestgen" or "//forest" commands. 2014-03-01 02:51:50 -08:00
sk89q
c9d93d12a1 Added FlatRegionFunction and GroundFindingFunction.
FlatRegionFunction takes apply(Vector2D) and GroundFindingFunction is an implementation of FlatRegionFunction that searches for the first ground block.
2014-03-01 02:51:50 -08:00
sk89q
086533e6bc Fixed incorrect arg shifting on //forest. 2014-03-01 02:51:50 -08:00
sk89q
7cf093ad40 Fixed pattern "X%Y" with no Y defined throwing an exception.
Fixes WORLDEDIT-2897.
2014-02-28 16:20:54 -08:00
sk89q
513940a80b Fixed /we help to always check the lowercase command name.
Fixes WORLDEDIT-2876.
2014-02-28 16:18:07 -08:00
sk89q
0e615e5bf7 Added //forest that generates a forest in a selection.
Fixes WORLDEDIT-2958.
2014-02-28 16:15:51 -08:00
sk89q
9627d830d7 Added CuboidRegion.makeCuboid(Region). 2014-02-28 16:15:14 -08:00
sk89q
6bfcaca6d3 Added EditSession.forestGen() that takes Iterable<Vector2D>. 2014-02-28 16:14:44 -08:00
sk89q
2e2d432d11 Removed the /fill command as an alias of /material.
Fixes WORLDEDIT-3016.
2014-02-28 15:42:28 -08:00
ReneZeidler
be8bb784f8 Only enable CUI support when the message is valid.
Also the check if support isn't already enabled is not really needed, as it will just overwrite the field with the same value.
2014-02-01 08:30:40 -08:00
ReneZeidler
c47f50696d Fix indentation 2014-02-01 08:25:43 -08:00
ReneZeidler
e25e1bfe67 Let the handshake packet refresh the CUI protocol version (it happens that players join with another client before the previous session expires) and also send the current selection when receiving a handshake packet (for when the player joins and the previous session did not expire) 2014-02-01 08:21:59 -08:00
ReneZeidler
747de4cab7 That check is also done in the LocalSession, let the LocalSession decide what to do with multiple packets. 2014-02-01 07:24:29 -08:00
ReneZeidler
e70c82c7c0 Don't send SelectionShapeEvent events in the describeCUI/describeLegacyCUI methods, that event is already sent in dispatchCUISelection in LocalSession 2014-02-01 07:23:01 -08:00
TomyLobo
743a5ea869 Renamed a parameter in BukkitUtil. 2014-01-28 08:33:46 +01:00
wizjany
ab0d170d9a Added -s flag to //paste to select the pasted area.
Also undeprecated a method that shouldn't have been.
2014-01-12 15:57:19 -05:00
wizjany
ca44ee073a Added new log/leaves to floating tree remover tool. 2014-01-07 18:34:15 -05:00
Martin
359b8abfe3 ADD: CylinderSelection for worldguard to be able to create regions
MOD: moved polygonize method of CylinderRegion to RegionUtil so it can be
reused later on
2014-01-07 01:44:28 +01:00
ItsHarry
ae0b2df66e Allow use of InputStream, this allows schematics to be loaded e.g. as a resource. 2014-01-05 21:49:06 +01:00
TomyLobo
c25b9a53f2 Added config option to set the default for the /up and /ceil commands.
The config option defaults to glass as that is consistent across gamemodes.
Use -f to force flight (if available).
Use -g to force glass.
2013-12-31 19:04:19 +01:00
wizjany
99fae3e716 Revert /up and /ceil command to use glass block by default. Flight can be done via -f flag now. 2013-12-29 13:28:22 -05:00
TomyLobo
61905527f8 The /green command no longer affects permadirt and podzol.
This behaviour can be overridden with -f.
2013-12-29 18:28:42 +01:00
wizjany
85035a2a24 Allow forest generator to make trees under snow tiles. 2013-12-24 18:53:03 -05:00
wizjany
611cb81cf8 Added rotate/flip/cycle data for 1.7.2 blocks. 2013-12-24 18:31:48 -05:00
wizjany
d5831ea37b Added 1.7.2 biomes and trees. 2013-12-24 18:31:45 -05:00
James Fitzpatrick
2a322afb2d Add support for listing schematics inside subdirectories 2013-12-19 17:33:50 +00:00
TomyLobo
b3f2c10f79 Fixed some javadocs and deprecated isNaturalTerrainBlock(int). 2013-12-10 07:13:41 +01:00
wizjany
7b539dade6 Added 1.7 blocks and items. 2013-12-09 23:21:47 -05:00
TomyLobo
68b8218bea Moved containsFuzzy from EditSession to BaseBlock. 2013-12-03 23:53:44 +01:00
TomyLobo
d467bf1386 Added data value mappings for certain blocks and made all other block types wildcard matches. 2013-12-03 23:53:33 +01:00
TomyLobo
ef43e141ee Typo fix. 2013-12-02 10:35:01 +01:00
TomyLobo
da37f5424c Improved the readability of BaseBlock.equals. 2013-12-02 10:35:00 +01:00
wizjany
9a000de7cf Added nmsblock classes for MCPC 1.6.x. Untested 2013-12-01 18:22:32 -05:00
wizjany
8574f7bb36 Update NMS access to 1.7.2. 2013-12-01 15:29:05 -05:00
TomyLobo
1b9445b6f2 Added a "pos1" pseudo block type, which uses the block type from the "primary position". 2013-11-30 17:21:38 +01:00
TomyLobo
768adee389 Added a "hand" pseudo block type that uses the currently selected block. 2013-11-30 17:21:37 +01:00
TomyLobo
8319eb6d91 Added an item->block mapping for LocalPlayer.getBlockInHand(). 2013-11-30 17:21:36 +01:00
TomyLobo
66253ff891 Added BlockType.getBlockForItem. 2013-11-30 17:21:36 +01:00
TomyLobo
1a96847f88 Added LocalPlayer.getBlockInHand().
Also added an appropriate overload to BukkitPlayer.
2013-11-30 17:21:35 +01:00
TomyLobo
cd0bc62931 WorldEdit.getBlock (and its callers) can now throw any WorldEditException. 2013-11-30 17:21:34 +01:00
TomyLobo
79bcfd815b Fixed //deform not doing anything at all. 2013-11-30 17:18:53 +01:00
TomyLobo
8dbabe344d Reduced indentation level in some methods in WorldEdit.java and made WorldEdit.getBlock less confusing. 2013-11-30 00:00:02 +01:00
wizjany
3acc82e97b Removed the allow-extra-data-values option.
This reverts parts of e477141.
Data values could never go past 15 anyway,
making the option pointless and misleading.
2013-11-26 10:53:23 -05:00
TomyLobo
3fa9a4e309 Attached ascending rails to the block they're ascending towards, in addition to the block below them. 2013-11-17 23:43:38 +01:00
TomyLobo
b6ab34f23b Attachments for the 21st century! 2013-11-17 21:21:36 +01:00
TomyLobo
728dd52b0d Fixed a javadoc. 2013-11-17 18:31:12 +01:00
TomyLobo
bef5c8e3e7 Removed flower pots from canPassThrough. 2013-11-14 18:40:36 +01:00
TomyLobo
b299632d00 Fixed some warnings. 2013-11-10 13:52:56 +01:00
TomyLobo
164601644a //walls on non-cuboid regions no longer introduces gaps in walls beyond 45 degrees (aka slanted roofs :)).
This is a better way to solve #273.
2013-11-03 10:20:49 +01:00
orthoplex64
22d6c51976 Added /curve. 2013-11-01 20:24:09 +01:00
orthoplex64
f4277c126d Hollow lines; modified line-drawing; EditSession utility methods
Made hypot() and getHollowed() static
2013-11-01 20:24:08 +01:00
orthoplex64
f38b6c484c Line thickness support 2013-11-01 20:24:08 +01:00
orthoplex64
91c6c69551 Add //line command and EditSession method
The EditSession method comes with javadoc.
2013-11-01 20:24:07 +01:00
Albert Pham
9930fb7338 Merge pull request #269 from sk89q/generatebiome
Added a //generatebiome command, which uses formulae to generate free-form biomes.
2013-11-01 12:23:27 -07:00
TomyLobo
f7c7292f79 Added a //generatebiome command, which uses formulae to generate free-form biomes.
Shorthands: //genbiome, //gb
2013-11-01 20:09:30 +01:00
TomyLobo
1746dd2e1a Snapshot restore now obeys masks again. 2013-11-01 20:09:28 +01:00
TomyLobo
803b4df72e Masks are now checked in setBlock instead of rawSetBlock.
Untested!!!
2013-11-01 20:09:27 +01:00
Albert Pham
69bcaa7133 Merge pull request #272 from sk89q/solidmask
Added a #solid mask
2013-11-01 12:08:29 -07:00
TomyLobo
961773ce5d Added non-cuboid support for //walls and //outline. 2013-11-01 19:05:49 +01:00
TomyLobo
627e029fbb Added a SolidBlockMask (#solid). 2013-10-30 08:49:14 +01:00
TomyLobo
02de320980 Introduced AbstractMask as a superclass to all implementors of the Mask interface. 2013-10-30 08:48:40 +01:00
TomyLobo
6e3d8395df Fixed UnderOverlayMask. 2013-10-30 08:48:13 +01:00
TomyLobo
ae6e59e8d0 Removed references to the deprecated BlockTypeMask class from UnderOverlayMask. 2013-10-30 08:48:12 +01:00
TomyLobo
f27d7e585d Moved ArbitraryShape and WorldEditExpressionEnvironment to a new "shape" package. 2013-10-26 12:33:24 +02:00
TomyLobo
dcd1c7cee8 Made /up and /ceil benefit from fly mode.
This avoids littering the world with floating glass blocks when possible.
2013-10-25 18:22:11 +02:00
TomyLobo
90e1788781 Refactored up-with-glass code into a helper function. 2013-10-24 22:07:31 +02:00
TomyLobo
a1fa32153c Code quality improvements. 2013-10-24 22:07:30 +02:00
TomyLobo
661484f858 Code quality improvements. 2013-10-23 18:54:45 +02:00
TomyLobo
7dca4d15ef Made hay blocks rotate like logs.
They're textured like them, too, so it fits.
Also, they no longer violate the "flip twice equals rotate twice" conditions.
2013-10-20 16:31:50 +02:00
TomyLobo
696a2819a7 Fixed head rotation. 2013-10-20 16:31:50 +02:00
TomyLobo
6c4d2e2d8e Fixed lever rotation. 2013-10-20 16:31:49 +02:00
TomyLobo
c750cc6871 Fixed bed rotation. 2013-10-20 16:31:48 +02:00
TomyLobo
9220831ea4 Fixed door rotation and disabled door y flipping.
Mojang radically changd the way doors work, so y flipping on a per-block
basis is now impossible.
2013-10-20 16:31:48 +02:00
TomyLobo
06ef568bdd Code formatting. 2013-10-20 16:31:47 +02:00
TomyLobo
73bf2bd215 Fixed not flipping the center plane blocks.
Added regression test so we'll never have to deal with it again.
2013-10-20 16:31:46 +02:00
TomyLobo
54dca39b07 Removed the .java file from the resources folder. 2013-10-20 16:31:46 +02:00
TomyLobo
9e708b70a9 Fixed some warnings. 2013-10-20 16:30:22 +02:00
TomyLobo
2fdc76a3f9 Added centralTopLimit property for hoppers. 2013-10-20 00:24:55 +02:00
TomyLobo
43f9e517e7 BlockType adjustments
- Flagged all snow layers except single layers (data values 0 and 8) as "cannot be passed through".
- Fixed centralTopLimit for trap doors and fence gates and cake blocks with data values 6..15.
2013-10-17 11:03:56 +02:00
TomyLobo
1ec17b5a44 Made /ascend and /descend use centralTopLimit. 2013-10-17 11:03:55 +02:00
TomyLobo
921c354db7 Made everything that uses canPassThrough use data values. 2013-10-17 11:03:55 +02:00
TomyLobo
b612de3429 Added Block and id/data overloads to canPassThrough, centralTopLimit and isNaturalTerrainBlock. 2013-10-17 11:03:54 +02:00
TomyLobo
d2f51b27b5 Gave the function containing the code for the //gmask command a better name. 2013-10-17 11:03:27 +02:00
TomyLobo
aebaa921fd Fixed some general silliness. 2013-10-17 11:03:26 +02:00
wizjany
cb8df85cc7 Allow colors for stained clay and carpet data values. 2013-10-02 21:55:51 -04:00
davboecki
bd98e98698 Update Forge implementation and added build script.
Including:
* Update to new MCP names
* Adding of an build script (see maven 'forge' profile)
* Adding of an regeneration code
* Simplifying of the command registration
* Added command usage description to avoid empty help pages
* Added missing raw information
* Used a WeakReference as world reference to avoid keeping a world in memory
* Added mcmod.info
* Fixed player orientation
* Fixed printRaw not splitting the message correct
2013-09-29 23:48:11 -04:00
zml
4daef4aff2 Check both superperms and PEX directly to support older versions of PEX with inGroup
Older versions didn't set the group nodes correctly, so they were only
accessible through getEffectivePermissions()
2013-09-25 19:35:27 -07:00
TomyLobo
e2f1abd7e4 Fixed the query functions not comparing data values at all for their return values.
Also made them accept RValue as well and added some test cases for them
and for the overloader bug i fixed last time.
2013-09-25 00:37:54 +02:00
TomyLobo
8badb09399 Added query{,Abs,Rel}(x,y,z,typevar,datavar) to the expression parser. 2013-09-21 19:44:56 +02:00
TomyLobo
eba1114b39 IntelliJ demanded attention. 2013-09-21 19:44:56 +02:00
TomyLobo
57bb5470eb Allowed usage of non-existant variables in all LValue expressions. 2013-09-21 19:44:55 +02:00
TomyLobo
4fa5daf974 Moved megabuf to the Functions class 2013-09-21 19:24:54 +02:00
TomyLobo
aef3b0024a Fixed the overloader 2013-09-21 19:24:53 +02:00
TomyLobo
cabced11a7 Removed some "final" qualifiers from static methods.
Also fixed some other warnings IntelliJ annoyed me with
2013-09-21 10:09:49 -04:00
wizjany
84598e220f Updated Craftbukkit package version for 1.6.4 2013-09-19 21:30:55 -04:00
zml
43b8c2cd9b Update PEX WEPIF resolver to use superperms where possible 2013-08-31 23:00:49 -07:00
TomyLobo
89e9829f28 Removed nonexistant parameter from javadoc. 2013-08-27 11:49:27 -04:00
TomyLobo
8ce14dc982 Made //copy and //cut copy only the blocks contained in the selection. 2013-08-27 08:03:14 +02:00
TomyLobo
77219a8b3e The Sphere selector can now also shrink the region.
The radius is set to ceil(distanceToCenter).
2013-08-24 10:59:23 +02:00
TomyLobo
878c26a8f0 Control flow improvements. 2013-08-24 10:59:22 +02:00
TomyLobo
eacd147694 Optimized EditSession.countBlocks.
Also fixed the questionable semantics for that anonymous class' "contains" method.
2013-08-16 08:18:37 +02:00
TomyLobo
28047894c4 BlockType adjustments
- Flagged heads as "cannot be passed through".
- Adjusted shouldPlaceLast (Added anvils, removed heads).
- Fixed portal frame height and added a few new blocks to centralTopLimit
- Made cobblestone wall 1.5 high.
2013-08-16 08:18:37 +02:00
TomyLobo
2a4e6ac93a Added a separate point maximum for polyhedral selections. 2013-08-16 08:18:36 +02:00
wizjany
eb669ff834 Moved properties.yml to spout profile and directory. 2013-08-12 22:21:28 -04:00
wizjany
bfd13a4140 Updated forge code to 1.6.2.
Note that this is untested (although it compiles) since
I don't currently have a 1.6 forge installation set up.
2013-08-12 21:55:59 -04:00
TomyLobo
60f44be298 Minor polyhedron changes. 2013-08-08 08:28:26 +02:00
wizjany
a669ef95c6 Tabs. 2013-08-06 23:50:02 -04:00
zml
bf2c8ebed4 Only show nested commands in the Bukkit help if the player has permission to use at least one of the children 2013-08-06 20:09:47 -07:00
Wizjany
63f2f96a8c Add convex to the @Command usage info for //sel. 2013-08-06 11:50:42 -04:00
TomyLobo
d4a7f7b48a ConvexPolyhedralRegions now preserve the order of their vertices. 2013-08-06 11:50:41 -04:00
TomyLobo
d7d8930cd4 Made BlockWorldVector.equals accept all kinds of Vectors, not just WorldVectors.
This should make all those compareTo==0 things unnecessary.
2013-08-06 11:50:40 -04:00
TomyLobo
b28fdbfe4e Used vector constants in all appropriate placed. 2013-08-06 11:50:39 -04:00
TomyLobo
4c496bfaac Added constants to Vector2D, BlockVector and BlockVector2D and made the ones in Vector final. 2013-08-06 11:50:38 -04:00
TomyLobo
37373976f5 Added the polyhedral selector to //sel. 2013-08-06 11:50:36 -04:00
TomyLobo
731c8a0ce7 Added a ConvexPolyhedralRegion and selector 2013-08-06 11:50:35 -04:00
TomyLobo
22798f49c8 Reduced some code duplication in the regions. 2013-08-06 11:50:34 -04:00
TomyLobo
c838ef7b25 Moved the polygonization code to the specific regions that are being polygonized.
Also, maxPoints no longer has confusing semantics.
2013-08-06 11:50:33 -04:00
TomyLobo
34093884bc Replaced an if-else tree in /rement by an equivalent switch. 2013-08-04 10:12:16 +02:00
TomyLobo
b710f919d5 Added static ZERO, UNIT_X, UNIT_Y, UNIT_Z, and ONE fields to Vector. 2013-08-04 10:12:15 +02:00
TomyLobo
e787013bad Fixed a typo. 2013-08-04 10:12:15 +02:00
TomyLobo
9f4d470f7d Made //move operate on the actual region instead of its bounding box. 2013-08-04 01:34:55 +02:00
TomyLobo
c1396a2468 Added EditSession.moveRegion. 2013-08-04 01:34:54 +02:00
wizjany
cd5f832adf Added methods to CommandContext to get slices excluding flags et al. 2013-08-03 09:46:17 -04:00
TomyLobo
98e466d371 Fixed a typo. 2013-08-03 15:29:33 +02:00
TomyLobo
9b37fb98ac Fixed some warnings. 2013-08-03 14:46:37 +02:00
wizjany
65c3614e7b Support for listing in expand, contract, and shift.
Support listing in these commands by replacing a single Vector with a
List<Vector> and then iterating through it in a foreach loop. Region
changes are still performed individually, no extra complicated math
involved.
2013-08-02 22:55:38 -04:00
wizjany
5f47ede05a Made generation commands respect the max-radius config setting. 2013-08-02 22:50:14 -04:00
wizjany
d7324f6b13 Made a checkMaxBrushRadius method for centralized use. 2013-08-02 21:34:20 -04:00
wizjany
bc39a913ea Fix logic error when checking for use-inventory overrides. 2013-07-26 08:33:52 -04:00
wizjany
d61dec2ee7 Removed outdated reference to redmine tracker.
Seriously, why was this here in the first place?
2013-07-25 14:38:05 -04:00
wizjany
4d89b67b25 Update to MC 1.6.2 2013-07-12 02:04:20 -04:00
wizjany
cba246a2a5 Fix some maven tests 2013-07-02 08:09:14 -04:00
wizjany
930e2e7107 Update MobType list, even though it's almost never used. 2013-07-02 07:34:42 -04:00
wizjany
7a757ccdb2 Added blocks and items for MC 1.6 2013-07-02 07:34:41 -04:00
wizjany
48bff509dd Bukkit package naming changes for 1.6.1. 2013-07-02 07:34:20 -04:00
TomyLobo
6f3fbdc963 Removed some debug prints. 2013-07-02 07:30:00 -04:00
TomyLobo
d7837f6121 Added cylinder->polygon conversion. 2013-07-02 07:29:59 -04:00
TomyLobo
610fa40e2a Removed some javadocs for nonexistant parameters in Vector2D methods. 2013-07-02 07:29:58 -04:00
TomyLobo
3e875b7936 Fixed some warnings. 2013-07-02 07:29:58 -04:00
TomyLobo
5db504aed2 @Deprecated 2 deprecated constructors. 2013-06-22 05:56:02 +02:00
Albert Pham
142f5c8e5c Changed WorldEdit to use the new dispatcher. 2013-06-18 14:51:42 -07:00
Albert Pham
04c31262f7 Added a new command dispatcher that injects different parameters dynamically.
This reduces the boilerplate code needed to parse arguments in each command, and reduces the need to maintain command documentation with @Command.

Example:

@Command(aliases = "/set", desc = "Set all the blocks inside the selection to a block")
@CommandPermissions("worldedit.region.set")
@Logging(REGION)
void setBlocks(LocalPlayer player, EditSession editSession, @Selection Region region, Pattern replaceWith) {
    // Perform command
}
2013-06-18 14:50:46 -07:00
Lucas Tan
80536d85ca Update Minecraft Forge compatibility for 1.5.2. 2013-06-10 17:02:41 -04:00
me4502
70ccac620f Use equalsIgnoreCase to check for perm plugins, and check for GroupManager
Using equalsIgnoreCase fixes a few weird issues with bPerms, and adding GroupManager fixes a metric tonne of issues with GroupManager.. Like it being randomly disabled, it not working, etc.
2013-06-10 17:02:30 -04:00
wizjany
5895b492da Horrible 0-day fix. Super important to upgrade.
Actually just a typo.
2013-06-03 16:54:14 -04:00
wizjany
fb96ced3bf Add coordinate argument to //chunk command. 2013-06-03 15:55:17 -04:00
Albert Pham
10c43a9c9f Made McRegionReader.getChunkInputStream() throw a DataException instead of returning a null when an ungenerated chunk is encountered. 2013-06-02 12:14:56 -07:00
TomyLobo
321e2246fc Added some comments to BlockDataTest.testCycle. 2013-05-24 02:03:08 +03:00
Trevor Wilson
7c98cc0e01 Made CommandManager registration with parent public so hooks can be made to existing commands 2013-05-19 02:32:06 -05:00
wizjany
ca06489e11 Don't spam chat when a different type of vector is given to the Selector. 2013-05-16 02:02:09 -04:00
wizjany
94dbfa3b85 Be less lazy handling MobSpawnerBlock tags. (Although once again, no one should actually being using this class.) 2013-05-12 13:23:31 -04:00
wizjany
fad30ff23b Update for CraftBukkit 1.5.2 package. 2013-04-30 20:54:59 -04:00
wizjany
f213bb73e8 Added pistons (retracted only) to cycler tool. 2013-04-18 16:56:09 -04:00
wizjany
102a149dbb Fix setbiome issue and tweak a few block names. 2013-04-09 17:17:15 -04:00
wizjany
e7ae3b4ddf Fix setting blocks that used multiple TileEntities on one block id.
Since forge added support for this feature, we need to double-pass
on setting block data values to preserve both TileEntity type and
block orientations.
Users using MCPC may need to remove their old MCPC nmsblock class
before the new one is used correctly. (Although it was only added
in a dev build)
2013-03-30 15:50:21 -04:00
wizjany
2846119f08 Make //setbiome respect global mask, if set to a biome mask 2013-03-28 19:53:42 -04:00
wizjany
e7d55ca87d Add compatibility for MCPC-Plus 1.5.1 2013-03-26 11:55:10 -04:00
wizjany
51515473bc Allow remove command to be used from console 2013-03-26 00:56:42 -04:00
wizjany
0e8508847e Added hoppers to block data info 2013-03-25 10:24:18 -04:00
wizjany
58a7a2ed4f Prepare for MC 1.5.1 (specifically, Bukkit renames). 2013-03-20 17:40:22 -04:00
wizjany
422cba101d Fix NPE in mob spawner blocks on non-bukkit implementations 2013-03-17 22:11:29 -04:00
wizjany
1af61f827b Fix block setting while not in fast mode 2013-03-17 21:38:13 -04:00
wizjany
83d5e2fd22 Fix block rotations 2013-03-17 11:11:41 -04:00
wizjany
6c35d20306 Use correct method and mask to set blocks. 2013-03-16 17:15:00 -04:00
wizjany
0d52d22bd8 Fix for minecart naming 2013-03-16 12:23:22 -04:00
wizjany
3eb821ffed Added names for new items 2013-03-16 02:18:07 -04:00
wizjany
c042f7829a Fixed equalsFuzzy returning true when it shouldn't 2013-03-15 22:25:57 -04:00
wizjany
e1fac30e62 Updated changelog for 5.5.2 2013-03-15 15:38:02 -04:00
wizjany
db9808cfd1 Update nmsblock classes for 1.5 2013-03-15 15:10:23 -04:00
Wizjany
94ef1591e8 Update for MC 1.5 2013-03-14 21:03:14 -04:00
kgamecarter
ca1cecbdf4 Fix //flip using incorrect block directions. 2013-03-14 19:29:28 -04:00
Albert Pham
184d02d2e3 Updated BukkitWorld NMS fields to be static.
This prevents attempts at loading the proper NMS compatibility classes from occurring more than once.
2013-03-12 18:05:14 -07:00
Albert Pham
33d0d7cd6c Fixed WORLDEDIT-2717, max-blocks-changed . maximum overriden by default
min(default_limit, max_limit) meant that the max limit was really default_limit when the default was less than the max
2013-03-12 14:07:25 -07:00
wizjany
8efb995667 Use actual data for skull blocks 2013-03-09 19:33:31 -05:00
Wizjany
6c6f965ac7 Revert "Made //undo and //redo disregard global masks."
This does nothing and neither did the original code. Disregard previous notice.
This reverts commit cfb19eba9b.
2013-03-03 23:44:53 -05:00
Albert Pham
da6103c33e Fixed WORLDEDIT-2707, regex in WorldEdit.getBlockPattern()
Regex in WorldEdit.getBlockPattern() was overly complex.
2013-02-25 00:14:17 -08:00
Wizjany
c2932cc54f Cleanup forge code. Make it singleplayer friendly. 2013-02-25 01:22:05 -05:00
Wizjany
b2869058a9 Port WorldEdit to Forge. 2013-02-24 15:18:49 -05:00
Wizjany
1be3320bcf Fix 4096 block id support in restore and schematic. (for real this time) 2013-02-24 14:57:34 -05:00
Wizjany
31de2a3a09 Update PropertiesConfiguration. Catch potential NPE. 2013-02-24 01:53:14 -05:00
Albert Pham
e17a35bb15 Chunk's Add section stores the first block in the lowest nibble 2013-02-23 22:39:59 -08:00
Albert Pham
02abf41b83 Fixed AddBlocks (again) and simplified expression.
Herpy derpy, >> 2 is not divide by 2, and I am not sure what I was thinking with the double shift.
2013-02-23 22:19:51 -08:00
Wizjany
02b85a0034 Change cycler tool behavior with logs.
- Now works with jungle logs.
- Cycling forward (r-click) cycles through bark types (oak, spruce..)
- Cycling backward (l-click) cycles through orientations (upright, both
  sides, and the "all six sides" texture)
2013-02-21 21:57:54 -05:00
Wizjany
44ebc1e41d Re-add craftscripts to package.
Mistakenly removed this when messing with NmsBlocks.
2013-02-17 10:55:49 -05:00
me4502
75c5f1fa46 Make the getList related things in YAMLProcessor w
rite defaults. This fixes an issue in plugins that use this config system, where they are sometimes not written.

Most noticable in CraftBook, where all String Lists are not written to the config file.
2013-02-12 20:04:13 +10:00
zml2008
67178da4d3 Update for Spout entity changes 2013-02-02 14:03:09 -08:00
Wizjany
ef62a60fff Add new(ish) tags to MobSpawnerBlock (not supported by bukkit api atm) 2013-01-31 15:23:08 -05:00
Wizjany
eb489bd21d Add wooden buttons to BlockData 2013-01-31 12:46:32 -05:00
Wizjany
87daba207a The idea was not to spam.
Really, I don't care what's wrong with you, class file.
2013-01-27 03:03:50 -05:00
zml2008
b48c735d2e Correct handling of arguments where the arg is a quotation character followed by a space. Fixes WORLDEDIT-2633 2013-01-27 03:03:50 -05:00
Wizjany
9bb7968358 Make forest and pumpkin gens respect toggleplace. Make pumpkin gen have random faces. 2013-01-27 03:03:05 -05:00
Wizjany
60f2a4a816 Compile MCPC class on java 1.6 2013-01-23 23:26:37 -05:00
Wizjany
5b0af07c3c Don't spam if we can't find a Nms Block 2013-01-20 02:10:05 -05:00
Wizjany
19d7beaf39 Added NmsBlocks for MCPC+ running MC 1.4.7.
Also fixed an issue with creative mode inventory usage not updating when
gamemode changed.
2013-01-20 01:44:29 -05:00
zml2008
718457b1ff Now compiles on Spout and basic block setting works 2013-01-19 18:30:07 -08:00
Wizjany
a800ced4b9 Add nms blocks for Craftbukkit 1.4.5 and pre-1.4.5 (unversioned packages) 2013-01-19 20:11:26 -05:00
Wizjany
6abd48ab08 Add a config setting to allow creative mode players to override inventory setting. 2013-01-19 19:06:55 -05:00
Wizjany
89bdd8d9ba Tie up lose ends with NmsBlock class loading. 2013-01-19 18:33:23 -05:00
Wizjany
d64a16da48 Remove /search as an alias of //searchitem 2013-01-19 17:00:48 -05:00
OdiumxXx
0f77cb357b Fixed ContainerBlocks spilling items when edited.
Fixed ContainerBlocks spilling items when edited, which caused an Item Duplication Exploit.

http://youtrack.sk89q.com/issue/WORLDEDIT-2381 - [Now Resolved]
2013-01-19 09:41:04 -05:00
Wizjany
e5d34a9d2c Merge korikisulda's butcher brush.
Additionally made it work with //butcher flags (added as an argument)
as well as respecting the max butcher radius if the player has the permission.
2013-01-19 09:35:47 -05:00
Wizjany
d78bbc4f68 Merge Moo0's data flag for distr.
Also added data flag to //count.
  //count -d 35 will now only search for white wool.
  //count 35:5 will only search for green wool.
  //count 35 will work as normal.
  //count 35:-1 will also work.
2013-01-19 09:31:00 -05:00
DerFlash
c2154b0f86 Catch Exception when using converted maps with 128 blocks height 2013-01-18 21:18:08 -05:00
Wizjany
4320e1a201 Restore usage of pre-Anvil chunks for snapshots. 2013-01-18 21:16:45 -05:00
snowleo
0c38365100 WEPIF GroupManagerResolver implementation 2013-01-18 03:22:17 -05:00
Wizjany
ad349aecb1 Support different NMS block classes depending on version.
- The .class files in the contrib folder of the zip go in
  plugins/WorldEdit/nmsblocks
- This allows us to swap new class files in without releasing
a completely new version each time
- Whatever version the last release is for has an inbuilt fallback
- If the plugin and server are mismatched and you have nothing in
  nmsblocks you're screwed
2013-01-18 03:17:52 -05:00
Wizjany
83c71f30a8 Skulls should use underscores for player names, not spaces 2013-01-15 22:59:53 -05:00
Jim Bilbrey
2b29d1a253 update //flip axis to modern directions
tested and working with:
-no args when looking horizontally and vertically
-n/s/e/w
-f/b/l/r/u/d
2013-01-14 12:48:59 -05:00
Wizjany
57327fd37f Add support for skull blocks. 2013-01-13 04:37:36 -05:00
Ammar Askar
4b50e0e453 Pass LocalPlayers to the EditSession getters for easy external access 2013-01-12 01:00:06 -05:00
Silthus
94a549214d Added @NestedCommand(executeBody=true/false) annotation.
Setting this annotation to true will execute the method
body of the tagged method if the argument count is 0.
2013-01-12 00:57:40 -05:00
Wizjany
e75b0ab34c Use CraftBukkit version 1.4.6 2013-01-12 00:47:10 -05:00
Wizjany
090052df5a Fail silently if correct NMS version is not found.
This will fix errors when trying to set blocks when using the wrong
minecraft version. However, if users want support for schematics or
copy/pasting blocks with advanced data (eg things not yet supported by
Bukkit like mob spawner potentials or blocks from mods), they will
have to use the WorldEdit version corresponding to their Minecraft
version.
2013-01-11 22:39:13 -05:00
Wizjany
c634ad6d08 Add toString to Location 2013-01-02 19:43:32 -05:00
Wizjany
76a77f04e7 Log a few more things. Added BiomeCommands to doc printer. 2013-01-02 02:11:42 -05:00
Wizjany
e09a0c64ad Add amount of missing blocks to message when using inventory. 2012-12-29 14:56:10 -05:00
Wizjany
79802bd4b9 Fix command logging.
No seriously, was the previous code even supposed to work?
2012-12-27 11:47:07 -05:00
Wizjany
6c189c4ff9 Added butcher flag for ambient mobs. 2012-12-25 18:42:43 -05:00
Wizjany
e728445383 Prevent //snow from placing snow on some blocks that it shouldn't. 2012-12-25 18:42:20 -05:00
Wizjany
a54c7437fc Add config option to allow symbolic links for files. 2012-12-25 18:42:20 -05:00
Wizjany
a7b4913f6c Added -d and -n flags for //schem list, allowing sorting by date by oldest or newest, respectively. By default the command should now sort by file name alphabetically. 2012-12-25 17:37:12 -05:00
Wizjany
2aab0369b5 Added ALL and ITEM_FRAME to /remove'able entities 2012-12-25 16:44:54 -05:00
Wizjany
f9791d25ce Derp. 2012-12-24 02:08:38 -05:00
Wizjany
3f9404560e Remove old navigation perms for jumpto and thru 2012-12-24 01:42:55 -05:00
Wizjany
e4771416aa Added new items for 1.4.6
Fix permission for other help command (why are there two?)
- Made registerhelp read from yaml (not that the setting does anything)
Added an option to override data value limits.
- This should fix some mods which use data values above 16
- May cause issues if set to true and people mess with vanilla data values
2012-12-24 01:18:18 -05:00
Wizjany
24662d6365 Add permissions node for help command 2012-12-24 01:13:40 -05:00
Wizjany
fcaafe009c Fixes NPE when attempting to list schematics in an invalid directory. 2012-12-15 13:49:44 -05:00
Wizjany
3f1a2bfc39 Fix off by one error when calculating Poly2D region dimensions. 2012-12-05 18:32:16 -05:00
Jim Bilbrey
ab693a7521 update "forward" to match modern yaw 2012-12-02 01:19:38 +01:00
Jim Bilbrey
5e1836a0f8 update cardinal directions to match Minecraft 2012-12-02 01:19:37 +01:00
zml2008
d8636ec811 Correct spelling of message 2012-11-25 18:32:48 -08:00
zml2008
672e6fc584 Update for Spout changes 2012-11-25 17:16:35 -08:00
Wizjany
afd8ebe66f Made golden apples and heads unstackable. 2012-11-24 10:30:15 -05:00
Wizjany
56d534bf0d Use right config value for butcher radius. Add max radius for butcher. 2012-11-23 20:18:17 -05:00
Wizjany
aadfc30fbb Fix issues with 94619e3f. Closes WORLDEDIT-2221. 2012-11-22 13:32:51 -05:00
ragd
b2ff0fb2a2 Added support for rotating wooden logs 2012-11-16 19:03:05 +01:00
adamjones57
36fa04b739 Schematic, not Schemtic.
Typo fix.
2012-11-16 01:40:19 -08:00
aumgn
da400ffdeb Remove deprecated Region#contract/expand(Vector) methods
Those methods hid varargs versions which are not deprecated
2012-11-12 10:36:44 +01:00
aumgn
574f162019 Clean up warnings 2012-11-11 14:38:51 +01:00
manearrior
b352f7321f Added //size -c and //distr -c command options. Describes clipboard. 2012-11-09 19:12:04 +01:00
Wizjany
14aa9a524d Revert "Do not allow tool bindings to the hand"
This reverts commit a6f7055c7b.
This should be reimplemented with a configuration option or a warning
instead of completely blocking it.
2012-11-08 23:48:46 -05:00
Dark Arc
a6f7055c7b Do not allow tool bindings to the hand 2012-11-09 00:45:21 +01:00
sk89q
d198961e12 Updated for 5.4.5. 2012-11-03 12:58:04 -07:00
Ammar Askar
286e682902 Add missing spout WorldEditPlugin edit session factory call 2012-10-31 21:46:30 +05:00
Ammar Askar
04c00034cf Implement EditSessionFactory 2012-10-31 20:48:36 +05:00
sk89q
ae75061492 Updated item information database. 2012-10-28 20:50:36 -07:00
sk89q
ff0dd68a86 Updated block information database. 2012-10-28 20:49:26 -07:00
sk89q
74c456079a Updated item IDs for 1.4.x. 2012-10-28 12:51:39 -07:00
sk89q
417c9a2137 Moved Spout plugin to separate Maven profile.
This was done so that WorldEdit doesn't break during compilation out of the blue. To compile WorldEdit with spout, use "mvn -Pspout".
2012-10-28 12:35:24 -07:00
sk89q
caa5fcdcdf Fixed //limit being overridden each time a LocalSession is fetched. 2012-10-22 20:27:43 -07:00
sk89q
5402da6c70 Fixed issue with block IDs being returned negative in snapshots. 2012-10-20 23:38:26 -07:00
sk89q
5523e7e73d Removed NOTICE.txt. Some license used to require it but I don't think we use that library anymore. 2012-10-20 11:33:46 -07:00
sk89q
1fb69b06f7 Added support for 4096 ID blocks (theoretically) in snapshots.
Also cleaned up the mess that was AnvilChunk's code.
2012-10-20 00:54:21 -07:00
sk89q
2a93baf15b Modernized pom, readmes. 2012-10-19 21:10:39 -07:00
zml2008
73dc31b2bb Only get the world's tile entity if the block id has a tile entity 2012-10-19 17:23:51 -07:00
zml2008
29e823d136 Added some more aliases for 1.3 blocks 2012-10-19 17:01:45 -07:00
sk89q
f5be1eb44b Removed BukkitWorld caching. 2012-10-19 15:44:24 -07:00
sk89q
0f49186bf5 Fixed reported bug that block #0 (air) is not considered valid.
Fixed a reported bug that block #0 (air) is not considered valid. Also set skipNmsValidBlockCheck to true if the check fails (as I assume was originally intended).
2012-10-18 23:12:53 -07:00
zml2008
877f14f242 Fixed NMS block set to copy tile entity data even if the original block did not change its id or data 2012-10-18 19:38:56 -07:00
zml2008
2221eae36a Fixed valid block check to not include items 2012-10-18 19:38:15 -07:00
zml2008
a690d5782f Updated for SpoutAPI changes
Make SpoutAPI not horribly slow
2012-10-17 07:50:49 -07:00
zml2008
b4ac721a16 Fix missing imports 2012-09-02 14:47:47 -07:00
zml2008
20a5899d38 Update for the SpoutAPI changes of the past 30 seconds 2012-09-02 14:45:57 -07:00
sk89q
0f8e622678 Changed WorldEdit to refresh session permissions each call to getSession(), rather than one time. Cleaned up imports/etc. courtesy of Eclipse. 2012-09-02 14:07:08 -07:00
aumgn
7fd5d1b61c Add /center commmand 2012-08-29 11:51:57 +02:00
aumgn
c759b9062c Add BlockMask which is able to filter by data 2012-08-29 11:51:45 +02:00
aumgn
21d603ce4e Add RandomMask (not sure if really useful) 2012-08-29 11:51:34 +02:00
aumgn
77bc49e057 Add convenient constructors in *RegionSelector classes 2012-08-27 20:14:05 +02:00
aumgn
1fef255d77 Clean up some io close() calls 2012-08-27 20:10:35 +02:00