Commit Graph

3173 Commits

Author SHA1 Message Date
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
319f2efe43 Ignore synthetic classes when loading BukkitImplAdapter. 2019-02-14 18:07:07 -05:00
wizjany
39131eb1e5 Revert "Remove synthetic classes from adapters."
This reverts commit 1ae0e88b
2019-02-14 17:56:48 -05:00
wizjany
313cd20b14 Make legacy compat layer return straight stairs. 2019-02-14 17:53:30 -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
Matthew Miller
1ae0e88b63 Remove synthetic classes from adapters. 2019-02-13 21:06:25 +10: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
Matthew Miller
c53a40b577 Bypass the Spigot API for block setting for speed boosts on non-Paper platforms. 2019-02-11 20:17:36 +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
IronApollo
0763e4c05c Pull changes from upstream to match cdd7117 2019-02-07 09:11:51 -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
Byron Marohn
f6788f16e4 Fix sponge schematics not correctly setting dimensions if there are no entities
Signed-off-by: Byron Marohn <combustible@live.com>
2019-02-06 20:48:30 -08: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
IronApollo
0e5847e1ce Various fixes 2019-02-03 09:22:10 -05:00
IronApollo
2d586ff53e Registry changes & additions 2019-02-03 08:53:04 -05:00
Matthew Miller
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
Brokkonaut
2bae161e5c Make biome changes undoable 2019-02-03 07:38:11 -05:00
orthoplex64
0b9607affd Use 3 wool block variables instead of array 2019-02-03 07:36:15 -05:00
orthoplex64
8b3659248f Update maze.js 2019-02-03 07:35:58 -05:00
Matthew Miller
b27913324b Tweak the last access extent cache to provide better caching 2019-02-03 07:35:38 -05:00
Kenzie Togami
8f11d0469b Clarify state when asking for caps with no platforms (+ fuzzy system changes) 2019-02-03 07:30:18 -05:00
Matthew Miller
7d7da78dbc Fuzzier fuzzies 2019-02-03 07:13:21 -05:00
Kenzie Togami
4b5b7b8003 Clean up other compiler warnings 2019-02-03 06:06:07 -05:00
Kenzie Togami
94ebb81e92 Add generics to other rawtypes 2019-02-03 05:54:05 -05:00
Kenzie Togami
590b7e23a9 Remove all raw usages of BSH, improve API generics 2019-02-03 05:01:39 -05:00
Matthew Miller
1d87642b52 Minor improvements to the server side CUI 2019-02-03 03:54:04 -05:00
gamerforEA
22f8372b89 Fix BlockType and ItemType registration for Sponge distributive 2019-02-03 03:51:36 -05:00
gamerforEA
ea0ca470f1 Fix Metrics injection 2019-02-03 03:51:15 -05:00
Matthew Miller
26d4ea101e Fixed the bundle being directly used outside of the registry system. 2019-02-03 03:44:10 -05:00
Matthew Miller
53308416ff Start work on modularising masks and patterns 2019-02-03 03:33:52 -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
9c3964d330 Added a way to get the spawn position of a world 2019-02-02 11:29:51 -05:00
Matthew Miller
c935e381b7 Added a method to teleport entities across worlds. 2019-02-02 11:23:02 -05:00
Matthew Miller
7a9bd226ce Update draw.js and roof.js 2019-02-02 11:21:43 -05:00
Matthew Miller
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
Matthew Miller
54142c8669 Added a display name to Actors 2019-02-02 09:37:14 -05:00
Matthew Miller
bc3562eb57 Few fixes for FastModeExtent. 2019-02-02 09:26:18 -05:00
Matthew Miller
e88b8c961d Added "fast mode corrections" 2019-02-02 09:21:16 -05:00
Matthew Miller
346eee8953 Added the multi-staging from the multipass2 branch 2019-02-02 09:12:30 -05:00
JOO200
63bf01fdaf Check by setting blocks with BlockBagExtend for changed materials. 2019-02-02 09:05:59 -05:00
Matthew Miller
b276907dcd Filter out commands that the player doesn't have permissions for. Workaround for a Spigot issue. 2019-02-02 08:54:36 -05:00
Kenzie Togami
e9fbde3ac8 Remove recursion in VaultResolver
Correctly call into `perms` instead of creating an infinite recursion.
2019-02-02 08:53:31 -05:00
Matthew Miller
10484eb58b Added a Vault resolver to WEPIF. Means any Vault-enabled perm plugin will theoretically work with it 2019-02-02 08:49:53 -05:00
Matthew Miller
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