Commit Graph

290 Commits

Author SHA1 Message Date
Matthew Miller
1b101740fe Use a proper registry for biomes 2019-02-16 17:27:00 +10:00
Matthew Miller
d6bc85ccbe Speed up the BlockState hashCode method by caching (As it's Immutable). Allows some better optimisations in the future by using them as map keys 2019-02-16 12:46:10 +10:00
wizjany
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
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
wizjany
287be0209c Slight readability and usability improvements.
Also no longer allows trailing strings (e.g. //set #clipboardasdf).
2019-02-12 17:11:57 -05:00
wizjany
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
Wizjany
76400e533d
Add missing flags to clipboard brush usage. 2019-02-11 12:50:51 -05:00
Matthew Miller
3e988e7ffe Fixed parsing fuzzy blocks failing. 2019-02-11 20:30:42 +10:00
wizjany
6708e8292f Restore generation of hollow shapes.
Unfortunately this is a bit slower than before since we can't cache block
id & data values. However, applying patterns generally isn't too expensive,
and hollow regions were entirely broken before.
2019-02-09 20:30:57 -05:00
wizjany
cdd71178f5 Ensure BlockCategories are initialized.
We should probably have a way to initialize all these catalog classes ahead of time.
2019-02-04 22:34:25 -05:00
wizjany
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
Matthew Miller
f3ec5bbdde Added a ##tag parser Pattern. gives a random combination using the blocks from the tag with an equal distribution. 2019-01-31 22:28:04 +10:00
Matthew Miller
2f9c7f19f5 Added support for 'rotation' BlockState values. 2019-01-22 21:59:20 +10:00
Matthew Miller
2e0fa300b7 Actually support disabling chunk loading extent 2019-01-22 21:34:37 +10:00
Brokkonaut
432a201266 Make biome changes undoable 2019-01-21 19:07:29 +01:00
Matthew Miller
871541d8c0 Tweak the last access extent cache to provide better caching 2018-12-29 19:21:45 +10:00
Kenzie Togami
2f8bdccf65
Clarify state when asking for caps with no platforms 2018-12-28 22:20:12 -08:00
Matthew Miller
862b63d43a Can't query the row directly 2018-12-28 18:06:41 +10:00
Matthew Miller
54b6e57186 Few minor improvements to the fuzzy system. 2018-12-28 15:05:05 +10:00
Matthew Miller
b544782f3b Make the base fuzzy cached per block type 2018-12-27 15:33:19 +10:00
Matthew Miller
8da984d9f9 Fuzzier fuzzies 2018-12-27 15:19:58 +10:00
Kenzie Togami
386668d221
Clean up other compiler warnings 2018-12-26 16:50:24 -08:00
Kenzie Togami
3fefcbf971
Remove all raw usages of BSH, improve API generics 2018-12-26 16:39:10 -08:00
Matthew Miller
a88f6b8430 Minor improvements to the server side CUI 2018-12-26 18:15:17 +10:00
Matthew Miller
b75d5149eb Fixed the bundle being directly used outside of the registry system. 2018-12-23 21:43:20 +10:00
Matthew Miller
1d5e9b7d04 Few fixes 2018-12-23 21:24:58 +10:00
Matthew Miller
645fd682b6 Finish porting all the old masks across 2018-12-23 19:10:05 +10:00
Matthew Miller
6312bcecf6 Fixed the item parser not using the ItemRegistry 2018-12-23 19:02:58 +10:00
Matthew Miller
c5d9aadab8 Start work on modularising masks and patterns 2018-12-23 18:56:26 +10:00
Matthew Miller
d6977aeae4 Allow a pattern for the leave-id of //move 2018-12-22 17:26:02 +10:00
Matthew Miller
8d07877463 Pass the exception converter through more. 2018-12-21 17:31:27 +10:00
Matthew Miller
ea30578781 Added a way to get the spawn position of a world 2018-12-21 17:05:30 +10:00
Matthew Miller
c949b07df1 Added a method to teleport entities across worlds. 2018-12-21 16:56:10 +10:00
Matthew Miller
b300c21185 Update draw.js and roof.js 2018-12-20 13:43:01 +10:00
Matthew Miller
5eb9b779d7 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. 2018-12-18 19:28:55 +10:00
Matthew Miller
8f236afae9 Added a display name to Actors 2018-12-18 17:36:53 +10:00
Matthew Miller
700e41b706 Remove the final stage committer from the MultiStageReorder extent, as it caused issues and no longer appears to be entirely necessary. 2018-12-13 20:30:54 +10:00
Matthew Miller
926f6a6ab8 Flush undo/redo 2018-12-09 16:28:01 +10: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
4e5e9f609e Added the multi-staging from the multipass2 branch 2018-12-09 16:27:02 +10:00
JOO200
a73faf0c8b Check by setting blocks with BlockBagExtend for changed materials. 2018-12-05 17:09:06 +01:00
Matthew Miller
be0d21e2a9 Filter out commands that the player doesn't have permissions for. Workaround for a Spigot issue. 2018-12-05 16:32:20 +10:00
Matthew Miller
8e18ecb645
Merge pull request #330 from Europia79/vpcmdfix
Fixes issue 3315 with VirtualPlayers
2018-11-24 13:16:56 +10:00
Matthew Miller
2dc9321da6 Added support for axis rotations. 2018-11-17 12:00:19 +10:00