Commit Graph

198 Commits

Author SHA1 Message Date
d49c5ebe74 translate a few utility commands 2019-04-06 03:04:27 +11:00
f7cdae5e56 Disable undo if fastmode 2019-04-06 00:53:00 +11:00
be5541b61b revert some changes 2019-04-05 15:48:41 +11:00
94d5d8df8e Merge branch 'master' into breaking 2019-04-05 15:47:04 +11:00
140809c903 Working now 2019-04-05 15:15:10 +11:00
1beea3cd22 Some more upstream merge 2019-04-04 21:28:41 +11:00
8897109dc4 wip upstream merge 2019-04-04 00:25:16 +11:00
7086eb8b3e continue with merge 2019-04-03 22:28:57 +11:00
4cd8d08134 merge with upstream (broken) 2019-04-03 16:53:58 +11:00
f361619037 Merge remote-tracking branch 'upstream/master' into breaking 2019-04-03 16:53:34 +11:00
9fbcbc7cea <pattern> not <block>
As there are actual commands that will only accept blocks
2019-04-03 15:40:31 +11:00
29692f3fbe Migrate to SLF4J 2019-04-02 18:21:02 -04:00
47e66913e3 Selective upstream merge 2019-04-02 16:26:51 -04:00
64a134a9ee Merge remote-tracking branch 'refs/remotes/origin/master' into new-vector-system
# Conflicts:
#	build.gradle
#	worldedit-core/build.gradle
#	worldedit-core/src/main/java/com/boydti/fawe/util/IncendoPaster.java

#	worldedit-core/src/main/java/com/sk89q/worldedit/command/WorldEditCommands.java

#	worldedit-core/src/main/java/com/sk89q/worldedit/extent/clipboard/io/SpongeSchematicReader.java
2019-04-01 23:50:16 +11:00
92a7bd5e44 minor tweak for mutable vectors 2019-04-01 03:09:20 +11:00
699783ba72 Another selective merge 2019-03-28 15:02:37 -04:00
1424998327 Simplified switch statements and minor formatting 2019-03-27 11:36:26 -04:00
67fd0668ee ocd 2019-03-27 15:40:53 +01:00
8623dd0009 Fixes #80 2019-03-27 15:38:21 +01:00
0d88a6bce2 Merging upstream changes 2019-03-26 13:27:09 -04:00
8eccdc7444 Add -f flag to //count to allow fuzzy inputs.
Also re-implement //distr -c. And remove outdated help text on //copy.
2019-03-25 22:38:51 -04:00
85bfd16d7c Code cleaning
Most notable change: Remove redundant type parameters and replaced with <>. This is a small step to bring us closer to upstream parity.
2019-03-25 19:55:32 -04:00
3236bdd78e Changes to NBT-handling in operations and extents, changes to match the widely supported setBlock functionality, minor code cleanup 2019-03-25 13:42:11 -04:00
68c8950cdc Add IncendoPaster
Co-Authored-By: Alexander Söderberg <citymonstret@hotmail.com>
2019-03-24 23:02:32 +01:00
9b473cecbd Fixes and changes to forest/forestgen.
* Sync up implementations of the two commands.
* Fix generating trees in spots with replaceable blocks.
* Make message when you mistype tree-type arg more correct.

Fixes WORLDEDIT-3869.
2019-03-20 21:05:11 -04:00
1934006d14 Better enforce the Request lifetime.
Previously, the current request would just get a new EditSession when
one was created. Now, a Request is reset before and after:
 - a command is used and
 - an interact is fired with the platform
This means each action taken will get a single, non-reusable Request.

Note that this only applies to actions taken through the platform.
API users will not be using requests anyway, since things like Masks,
etc. will be constructed directly instead of being passed through the
platform's parsers and so on. (e.g. if a plugin loads a schematic into
the world with a mask, they should create the EditSession and mask it
directly, and not use that Mask again for another EditSession in another
World).

Also, get rid of a bunch of (some now-)unnecessary EditSession creation
during command dispatching.

Note that this also fixed the dynamic selection mask, which apparently
has been broken for some unknown amount of time.
2019-03-20 19:13:54 -04:00
25631af31c Add RequestExtent to be used when a delayed EditSession is needed.
For example, if you set a mask that takes an extent (many of them),
and then move to another world, the mask will test blocks in the old
world and return bad results.
2019-03-20 19:13:54 -04:00
83bdb3c8e8 Merge pull request #11 from IntellectualSites/incendo-paste
Make debugpaste use Incendo Paste Viewer, rather than Hastebin.
2019-03-19 10:36:21 -04:00
d186cce393 Merge remote-tracking branch 'origin/feature/slf4j-logging' 2019-03-19 20:32:21 +10:00
9d2d43f0db Add -f to //schem save to confirm overwriting.
Overwriting existing schematics now checks delete perm.
Also allow delete to be run from console.

Fixes WORLDEDIT-3868.
2019-03-15 17:08:11 -04:00
d6804737cf Switch to SLF4J logging. 2019-03-13 19:51:48 -07:00
7c89ece96e Few tweaks to schematic loading and error fixes.
* Not all EntityTypes in Bukkit have the correct enum name.
* Don't read entire schematic files to list. Go off file extension only.
   (Reading in files is more accurate, but slow.)
* Enforce extensions. (Due to the above, while you can technically make a
   schematic called 'test.txt', it's better that we save it as
   'test.txt.schem'.)
* Fix a few minor warnings.
2019-03-08 16:00:49 -05:00
de08c8b8c7 Add better control over expression timeouts. (#451)
Add better control over expression timeouts.
* //timeout command can be used to change player's current timeout.
* Config now also has a max timeout, can be bypassed with permission
* Timeout of < 0 will let expressions run indefinitely.
* Said expressions won't run on a separate thread, slightly reducing the
  overhead from context switching. For large //gen commands, for example,
  this can actually increase speed.
2019-03-06 19:58:32 -05:00
e53962dadd Apply source function after source mask in ForwardExtentCopy.
The source function should only get applied to actually copied blocks.
2019-03-01 21:15:21 -05:00
3ffb5ff00d Changes to fix some PlotSquared compatibility issues, plus fix block Mask parsing 2019-02-27 08:09:04 -05:00
243d6476ac Re-add smooth filtering via a mask.
Instead of trying to maintain a list of "natural terrain blocks", just
let the user specify a mask of blocks to use for the height map filter.

https://gfycat.com/severaljauntycondor
2019-02-26 23:54:53 -05:00
9eeb0acffe Add radius checks to a few more utility commands. 2019-02-25 18:41:20 -05:00
2f734d4570 Check radius instead of diameter for clipboard brush.
This brings it more in line with other brushes in terms of allowable size.
2019-02-25 18:41:19 -05:00
1b101740fe Use a proper registry for biomes 2019-02-16 17:27:00 +10:00
de9d202681 Clear shaped brush material on command.
The initial material is held in the factory, but if a brush was previously bound, that pattern is used.
Now, using `//br set` will clear the previous material, allowing the OperationFactory's material to work.
This can be changed later with `/mat`, which will once again set the fill on the tool, overriding the factory's context.
2019-02-15 14:51:26 -05:00
88014b18a3 Added a few new things using block states.
* `//set ##*tag` sets all states in the tag (not just default state per type)
* `//set ^type` is a pattern changing block type but copying all valid existing states
* `//set ^[prop=val,...]` sets the property `prop` to `val` wherever the existing block has that property
* `//set ^type[prop=val,...]` does both of the above
Those work anywhere a pattern is taken, of course.

* The mask syntax `^[prop=val]` matches blocks with the property `prop` set to `val`, or blocks that don't have the property at all.
* The mask syntax `^=[prop=val]` only matches blocks that have the property.
Those work anywhere a mask is taken, of course. (`//mask`, `//gmask`, `//replace`, etc)

The `//drain` command now takes `-w` flag that removes the waterlogged state from blocks (in addition to removing water, as before).
2019-02-14 17:21:01 -05:00
76400e533d Add missing flags to clipboard brush usage. 2019-02-11 12:50:51 -05:00
0763e4c05c Pull changes from upstream to match cdd7117 2019-02-07 09:11:51 -05:00
dddf2b963a Fix long-range build tool.
Blocks were always placed around 0,0,0 since the trace direction was being used as a position.
Also the message was backwards.
2019-02-03 19:27:30 -05:00
4a8931a55a Added a ##tag parser Pattern. gives a random combination using the blocks from the tag with an equal distribution. 2019-02-03 07:59:06 -05:00
590b7e23a9 Remove all raw usages of BSH, improve API generics 2019-02-03 05:01:39 -05:00
53308416ff Start work on modularising masks and patterns 2019-02-03 03:33:52 -05:00
d80ac24c63 Pass the exception converter through more. 2019-02-02 11:36:55 -05:00
45f1de6009 Move the pasting system over to WorldEdit, and add a /we report command. Currently only reports system status and the config. Need to add a platform reporter system. 2019-02-02 11:20:36 -05:00
f3c633582e Finish removal of PlayerDirection, and partially added diagonal support back to commands. (Other minor changes to WorldEdit-Sponge and FAVS) 2019-02-02 08:43:57 -05:00