Commit Graph

135 Commits

Author SHA1 Message Date
Matthew Miller
1b101740fe Use a proper registry for biomes 2019-02-16 17:27:00 +10:00
wizjany
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
IronApollo
511c279153 Fixed issues regarding block transformations and using the BaseBlock to apply a function. 2019-02-07 09:04:14 -05:00
IronApollo
0e5847e1ce Various fixes 2019-02-03 09:22:10 -05:00
Kenzie Togami
590b7e23a9 Remove all raw usages of BSH, improve API generics 2019-02-03 05:01:39 -05:00
Matthew Miller
d5e4c76bfe Allow a pattern for the leave-id of //move 2019-02-03 02:47:32 -05:00
Matthew Miller
d80ac24c63 Pass the exception converter through more. 2019-02-02 11:36:55 -05:00
Matthew Miller
e88b8c961d Added "fast mode corrections" 2019-02-02 09:21:16 -05:00
IronApollo
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
IronApollo
f74381b93f Merge remote-tracking branch 'refs/remotes/isfawe/new-vector-system' into new-vector-system 2019-01-13 02:00:14 -05:00
Matthew Miller
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
Kenzie Togami
4d6045813c Move vectors to static creators, for caching 2019-01-10 07:17:04 -05:00
Byron Marohn
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
IronApollo
842b1307c7 Current Progress #3 2019-01-09 02:13:44 -05:00
Kenzie Togami
3fefcbf971
Remove all raw usages of BSH, improve API generics 2018-12-26 16:39:10 -08:00
IronApollo
d4157b7e0e Current progress with update 2018-12-23 11:19:33 -05:00
Matthew Miller
d6977aeae4 Allow a pattern for the leave-id of //move 2018-12-22 17:26:02 +10:00
Byron Marohn
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
Matthew Miller
6f3016c7f0 Fixed up the commitRequired checks. 2018-12-09 16:28:01 +10:00
Matthew Miller
5f2c77b719 Further work on this. Currently fast mode breaks doors, gotta work out why applying physics to doors breaks them. 2018-12-09 16:28:01 +10:00
Matthew Miller
618cbd2250 Few small fixes 2018-12-09 16:28:01 +10:00
Matthew Miller
59f9864ba3 Set fast to the default 2018-12-09 16:28:01 +10:00
Matthew Miller
7f11b2800d Added an option to switch reorder modes 2018-12-09 16:28:01 +10:00
Matthew Miller
b3f5bc030e Few fixes for FastModeExtent. 2018-12-09 16:28:01 +10:00
Matthew Miller
7d468357e3 Added "fast mode corrections" 2018-12-09 16:27:02 +10:00
Matthew Miller
4e4ed6c893 Fixed missing BaseBlock import 2018-11-04 17:27:36 +10:00
Matthew Miller
53bc730909
Merge pull request #435 from sk89q/feature/trace-unflushed-sessions
Add tracing for unflushed EditSessions
2018-11-04 17:21:25 +10:00
Kenzie Togami
2c8b2fe089
Move vectors to static creators, for caching 2018-11-03 23:00:24 -07:00
Kenzie Togami
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
Kenzie Togami
e202348dac
Simplify commit-required detection 2018-11-03 22:22:43 -07:00
Kenzie Togami
e1fbaaff59
Add tracing for unflushed EditSessions 2018-10-30 18:39:51 -07:00
Kenzie Togami
d1312c66e1
Ensure we flush iff it is needed 2018-10-20 19:54:13 -07:00
Kenzie Togami
a3f1c71d97
Make EditSession closeable for easy flushing 2018-10-20 19:50:35 -07:00
Kenzie Togami
1fa1ff895b
Flush or disable buffers in tools 2018-10-20 19:47:17 -07:00
Matthew Miller
dd2fcbac23
Merge pull request #430 from sk89q/feature/chunk-batching-mode
Chunk Batching
2018-10-15 13:50:10 +10:00
Jesse Boyd
7cf7c0712f
fix fixwater/lava + tile paste 2018-10-13 19:50:13 +11:00
Jesse Boyd
1a12c065a1
Various minor fixes
Fix drain
Fix some messages lacking prefix
Fix non persistent brushes
2018-10-13 15:15:38 +11:00
Matthew Miller
0a149a796f Make distr operation based 2018-10-12 15:28:40 +10:00
Kenzie Togami
2824a92c19
Fix some minor ordering bugs 2018-10-10 12:23:00 -07:00
Kenzie Togami
7d4906cfe9
Add chunk batching flag, enable by default 2018-10-10 11:38:23 -07:00
Jesse Boyd
cfbf7dbec0
Update from sk89q/master 2018-09-25 15:35:21 +10:00
Jesse Boyd
8ed67f66ad
Merge boy0001/FastAsyncWorldEdit 2018-09-14 02:42:55 +10:00
Jesse Boyd
82ede1d42b
freebuild region restrictions 2018-09-05 05:10:15 +10:00
Jesse Boyd
b24d322d29
Update from sk89q/master 2018-09-03 00:10:38 +10:00
Matthew Miller
8bfbc55c71 Enable experimental //walls for non-cuboid regions. 2018-08-30 16:42:50 +10:00
Jesse Boyd
c55353e5b1
Various command (use es6 if java9 + nashorn) 2018-08-22 03:22:37 +10:00
Matthew Miller
69ab1781c6 Replace FuzzyBlockMask with BlockMask, and added BlockTypeMask as a more performant mask for just block types. 2018-08-20 15:57:42 +10:00
Jesse Boyd
43d5459595
Fix __reserved__ being solid 2018-08-17 19:21:45 +10:00
Jesse Boyd
177bfaa930
Rename setCopyEntities to setCopyingEntities 2018-08-17 18:33:37 +10:00
Jesse Boyd
36ede1b27d
Fixes boy0001/FastAsyncWorldedit#1078 2018-08-17 18:27:48 +10:00
Jesse Boyd
4ffb9bce6c
Various minor
Fix image brush
Fix some java 9 issues
Fix metrics being disabled
Fix compile: duplicate method in SimpleBlockMaterial
Load as both FastAsyncWorldEdit and WorldEdit
2018-08-16 23:21:39 +10:00
Jesse Boyd
6ebdc00fba
Merge remote-tracking branch 'refs/remotes/sk89q/master'
# Conflicts:

#	worldedit-bukkit/src/main/java/com/sk89q/worldedit/bukkit/BukkitBlockRegistry.java
#	worldedit-core/src/main/java/com/sk89q/worldedit/EditSession.java

#	worldedit-core/src/main/java/com/sk89q/worldedit/blocks/BlockMaterial.java

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

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

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

#	worldedit-core/src/main/java/com/sk89q/worldedit/command/tool/brush/GravityBrush.java

#	worldedit-core/src/main/java/com/sk89q/worldedit/extension/platform/AbstractPlayerActor.java

#	worldedit-core/src/main/java/com/sk89q/worldedit/extent/inventory/BlockBagExtent.java
#	worldedit-core/src/main/java/com/sk89q/worldedit/util/TargetBlock.java

#	worldedit-core/src/main/java/com/sk89q/worldedit/world/chunk/OldChunk.java

#	worldedit-core/src/main/java/com/sk89q/worldedit/world/registry/PassthroughBlockMaterial.java
2018-08-16 20:06:27 +10:00
Matthew Miller
bc5609114b Add a material to check if air is air, because there are now 3 types of air. 2018-08-16 15:42:11 +10:00
Jesse Boyd
131fd39f63
Various minor
Add entity registry
Re-add AbstractLoggingExtent
Fill in missing nbt on entity load
2018-08-14 19:24:10 +10:00
Jesse Boyd
e7c27b08bf
Remove stub injector methods 2018-08-13 02:36:39 +10:00
Jesse Boyd
a629d15c74
Copy paste/merge FAWE classes to this WorldEdit fork
- so certain people can look at the diff and complain about my sloppy code :(

Signed-off-by: Jesse Boyd <jessepaleg@gmail.com>
2018-08-13 00:03:07 +10:00
Matthew Miller
f96487a2d1 Use BlockStateHolder for setBlocks 2018-08-10 20:36:00 +10:00
Matthew Miller
f54d6afb65 Make BaseBlock more memory efficient, and make it clear in the API that it's not intended to be used for every single block. 2018-08-10 20:29:06 +10:00
Matthew Miller
5f4cc3e694 Cleanup a little bit more code. 2018-08-06 19:08:15 +10:00
Matthew Miller
2f3bc59e1b Fixed //move 2018-08-04 11:43:42 +10:00
Matthew Miller
1480606b52 Fixed a few more issues found looking over the changeset. 2018-08-04 11:43:42 +10:00
Matthew Miller
db21f51a18 Fixed up data cycler command, and the fixwater & fixlava commands. 2018-08-04 11:43:41 +10:00
kashike
a48c319e7e package move 2018-08-04 11:43:40 +10:00
Matthew Miller
efa09001c2 Remove the 'natural only' smooth brush feature due to inaccuracies. 2018-08-04 11:43:40 +10:00
Matthew Miller
57c13ef8f4 Continue moving out of legacy BlockType 2018-08-04 11:43:40 +10:00
Matthew Miller
11f5d05e7b Update BlockState to remove legacy ID usage. 2018-08-04 11:43:40 +10:00
Matthew Miller
93b225ca3c Expose a way of switching between ItemType and BlockType for ItemBlocks. 2018-08-04 11:43:39 +10:00
Matthew Miller
b06937d1c8 Setup a legacy mapper system. The file does not exist yet. 2018-08-04 11:43:39 +10:00
Matthew Miller
66d70f00e7 Removed more deprecated code 2018-08-04 11:43:39 +10:00
Matthew Miller
416480c16d Separated out fluids and blocks - they're different now 2018-08-04 11:43:39 +10:00
Matthew Miller
70aceb3837 Use default state a bit more. 2018-08-04 11:43:39 +10:00
Matthew Miller
282eca7663 Added a category system and refactored registries 2018-08-04 11:43:39 +10:00
Matthew Miller
484687a49d Further work on BlockState transition 2018-08-04 11:43:39 +10:00
Matthew Miller
e99190225e Further BaseBlock modernisation 2018-08-04 11:43:39 +10:00
Matthew Miller
c43109bde5 Start work on the new BaseBlock/BlockState split 2018-08-04 11:43:39 +10:00
Matthew Miller
aaaf2d5678 More deprecation removal 2018-08-04 11:43:38 +10:00
Matthew Miller
20bf6e079b Continue the great purge 2018-08-04 11:43:38 +10:00
Matthew Miller
c537a2e948 Remove a tonne of code from WorldEdit. This breaks backwards compatibility. More will be removed. Sorry :) 2018-08-04 11:43:38 +10:00
Matthew Miller
41a80064f5 I guarantee this is broken. Start some form of string ID for blocks 2018-08-04 11:43:14 +10:00
Brokkonaut
701d80c757 LEAVES2 should have snow on it too 2018-03-25 08:38:47 +02:00
SlimSoftware
099987d439
Fix //snow didn't put snow on all types of leaves
For example, //snow didn't work on Oak leaves while it did work as you would expect on Dark Oak leaves. Fixed by adding leaves2 to translucent block list and checking if the block to put snow on is a leaf block when executing //snow.
2017-12-14 21:00:38 +01:00
wizjany
b2fb73582f Fixed //center not working in some cases.
Due to odd rounding and math issues, using //center on a region with an edge of even
length in quadrants with negative coordinates would only fill one of the two center blocks.

Thanks to Griffrez and up201406036 for the original PR.

Fixes WORDLEDIT-2986.
2017-06-08 10:01:23 -04:00
wizjany
c957ffb95a Fix NPE when //genbiome expression was false.
Fixes WORLDEDIT-3467.
2016-07-06 11:14:11 -04:00
sk89q
98a7257c47 Fix a typo in EditSession.java 2015-01-12 21:52:06 -08:00
sk89q
7192780251 Switch to Gradle. Use git log --follow for history.
This converts the project into a multi-module Gradle build.

By default, Git does not show history past a rename, so use git log
--follow to see further history.
2014-11-14 11:27:39 -08:00