Commit Graph

106 Commits

Author SHA1 Message Date
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
33f5322fda WIP merge (i'll finish this later) 2019-04-05 01:24:47 +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
122236f6c7 Too lazy to write a commit message 2019-04-02 23:36:32 -04:00
c820406e8c Fix binding order 2019-04-01 23:55:15 +11: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
4e66b9a336 Revert 6b3426e1.
Empty base blocks are always immutable. Fuzzy states don't have NBT.
2019-03-30 00:41:47 -04:00
699783ba72 Another selective merge 2019-03-28 15:02:37 -04:00
acc8eb0a99 Lambda's and References and Cleanups! Oh My! 2019-03-27 12:17:05 -04:00
6b3426e1de BaseBlock is technically mutable so that technically shouldn't use it. 2019-03-26 18:14:35 -04:00
2a194b0434 Add pattern that randomly chooses states.
Also works with fuzzy states.

Syntax is `*type`, e.g. `//set *stone_slab` or with states,
`//set *oak_fence[waterlogged=false]`
2019-03-26 18:11:32 -04:00
9fcf805148 Pattern doesn't need to be deprecated 2019-03-26 16:35:22 -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
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
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
0656ef1920 Fix LayerVisitor stopping early instead of skipping covered columns. 2019-03-01 19:25:10 -05:00
1b101740fe Use a proper registry for biomes 2019-02-16 17:27:00 +10: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
19796aa3be Added offset to ClipboardPattern.
Takes input like '//set #clipboard@-1,0,1' which shifts the pattern over.
It also now extends RepeatingExtentPattern, which was previously unused.
2019-02-12 17:11:57 -05:00
511c279153 Fixed issues regarding block transformations and using the BaseBlock to apply a function. 2019-02-07 09:04:14 -05:00
590b7e23a9 Remove all raw usages of BSH, improve API generics 2019-02-03 05:01:39 -05:00
e53535319d Plenty of changes to core block behavior to become more compatible with upstream WorldEdit (still more to be done!) 2019-01-31 10:08:58 -05:00
6046fa1cec Only copy entities from within the region 2019-01-28 17:36:39 +01:00
d48ea909b5 Actually filter out players, not everything else 2019-01-28 17:31:29 +01:00
271b45f3ba Final changes for the Vector update (probable fix for the "copying player entity" bug) 2019-01-17 05:23:47 -05:00
f74381b93f Merge remote-tracking branch 'refs/remotes/isfawe/new-vector-system' into new-vector-system 2019-01-13 02:00:14 -05:00
628c9cc0b7 Make BaseBlock more memory efficient, and make it clear in the API that it's not intended to be used for every single block. 2019-01-10 09:54:21 -05:00
4d6045813c Move vectors to static creators, for caching 2019-01-10 07:17:04 -05:00
ab6aed703d Merge current FAWE master (227d6d91) into new-vector-system
Signed-off-by: Byron Marohn <combustible@live.com>
2019-01-09 22:35:26 -08:00
a9919d130c Current progress #4 2019-01-09 03:32:38 -05:00
842b1307c7 Current Progress #3 2019-01-09 02:13:44 -05:00
3fefcbf971 Remove all raw usages of BSH, improve API generics 2018-12-26 16:39:10 -08:00
d4157b7e0e Current progress with update 2018-12-23 11:19:33 -05:00
cf96c478be change entity list to ignore player when pasting 2018-12-22 00:46:05 +01:00
c0fa1602ad Restore the formatting of many things to upstream WorldEdit - no code changes
This patch touches many files but changes absolutely no functionality.
The goal here is to make future merges with worldedit produce fewer
conflicts that have to be resolved.

This patch was made by painstakingly diff'ing files and copying changes
over from the last upstream merge commit (02c6f11b) into this codebase.

Signed-off-by: Byron Marohn <combustible@live.com>
2018-12-20 11:33:56 -08:00
2c8b2fe089 Move vectors to static creators, for caching 2018-11-03 23:00:24 -07:00
399e0ad5fa Refactor vector system to be cleaner
- Move Vector, etc. into `.math` package
- Drop many methods that will be auto-promoted anyways, eg. with
`divide(int)` and `divide(double)` the first is now gone.
- Take Block vectors into their own class hierarchy
- Make it clear throughout the API what takes blockvectors
- many more improvements
2018-11-03 23:00:23 -07:00
dd2fcbac23 Merge pull request #430 from sk89q/feature/chunk-batching-mode
Chunk Batching
2018-10-15 13:50:10 +10:00
1a12c065a1 Various minor fixes
Fix drain
Fix some messages lacking prefix
Fix non persistent brushes
2018-10-13 15:15:38 +11:00
0a149a796f Make distr operation based 2018-10-12 15:28:40 +10:00
ff391ca0b3 Update licenses 2018-10-10 11:38:23 -07:00
e059490cd1 Rework block-batching, create draft of chunk batching 2018-10-10 11:38:23 -07:00
cfbf7dbec0 Update from sk89q/master 2018-09-25 15:35:21 +10:00