Matthew Miller
38607f387a
Added a permission node to set NBT data, allowing servers to disallow NBT interactions.
2019-06-01 15:53:18 +10:00
wizjany
6ad274677f
Don't require command for CUI init.
2019-05-29 23:15:06 -04:00
wizjany
ec3648e521
Wrap and unwrap.
...
Exceptions are fun.
2019-05-29 23:15:05 -04:00
wizjany
27b58f4e85
Add suggestions for items.
2019-05-28 22:55:20 -04:00
wizjany
5e857b3547
Improve parsing from registries.
...
If multiple namespaces are present, suggestions will first suggest a
namespace, then once a namespace is selected, keys within that namespace.
Starting an argument with ":" will instead search across all namespaces
for matching keys.
2019-05-28 22:55:20 -04:00
wizjany
ab1e09fdaf
Give factories a default parser.
...
Later registered parsers will always come before the default, ensuring
that the default parser is used when no other parser can match the input,
and that errors may be thrown by it to signify the end of the line.
2019-05-28 22:55:20 -04:00
wizjany
6962b2e7b6
Add comprehensive suggestions to many commands.
...
All patterns now have suggestions, including recursive patterns.
Suggestions will suggest blocks and block states.
All masks now have suggestions, though mask intersections are not
yet supported due to issues with quotes strings.
EntityRemover and ItemFactory now also have completions, as well
as all RegistryConverters (though I am unsure how many are actually
used).
Also use paper's AsyncTabComplete event, if available.
2019-05-28 22:55:20 -04:00
wizjany
871c25e1cd
Initial support for 1.14.2.
2019-05-27 19:52:58 -04:00
wizjany
4b15439e03
Don't attempt to update empty or invalid flower pots.
2019-05-25 00:35:12 -04:00
Matthew Miller
4804fe64e3
Don't use a no-op suggester
2019-05-24 21:31:29 +10:00
Matthew Miller
a3ffb91917
Added suggestions to a lot of factory-related commands
2019-05-24 21:31:29 +10:00
wizjany
7b47d9a945
Add /tracemask. ( #474 )
...
Allows setting a mask used for block traces. This allows brush tools to
pass through various materials, such as water (e.g. `/tracemask #solid`
or `/tracemask !air,water`) before starting to build.
By default, a null mask is equivalent to #existing (original behavior).
https://gfycat.com/ImmaculateFrayedCockatiel
2019-05-23 21:12:31 -04:00
wizjany
b0777f6b06
Use DFUs for some additional data fixing.
...
Legacy mapper now uses the data fixers to upgrade blocks and item types
(e.g. signs, dyes that changed names in 1.14).
The sponge schematic reader can now attempt to use the data fixers to
upgrade blocks, block entities, biomes and entities. This has been
tested with the 1.13 -> 1.14 changes. It is yet to be seen if it will
continue to work because...
The mc edit schematic reader has code for using data fixers, but it is
currently disabled as there seem to be some issues with fixing up older
block entities.
2019-05-20 16:39:58 -04:00
Matthew Miller
8ee484fca8
Removed unused classes
2019-05-19 13:34:43 +10:00
wizjany
334d5cfaab
The "spawner|mobType" syntax once again makes functional mob spawners.
...
Also fix block parser context not being restricted.
2019-05-18 10:16:08 -04:00
Kenzie Togami
3173e26109
Fix //expand, improve //help
2019-05-17 22:24:31 -07:00
Kenzie Togami
e7613dd879
Stop using IAE to communicate parameter mis-use
2019-05-14 17:57:05 -07:00
wizjany
f9d0d340e7
Add DFUs. Currently used by //restore.
2019-05-13 23:07:53 -04:00
wizjany
10f7fb6a26
Add //br and //brush as aliases.
2019-05-13 18:49:43 -04:00
wizjany
9a913a93f6
Fix throwing uncaught exceptions in AsyncCommandBuilder.
2019-05-13 18:49:43 -04:00
wizjany
7b170d8193
Run schematic-file I/O in a task.
2019-05-12 16:01:22 -04:00
wizjany
fab21c3eea
Add AsyncCommandBuilder as replacement for AsyncCommandHelper.
...
See full explanation at https://github.com/EngineHub/WorldGuard/pull/408
2019-05-12 14:36:57 -04:00
Kenzie Togami
a2b67f8ddb
Re-write EventBus to be faster
2019-05-10 05:01:01 -07:00
wizjany
56908a7d62
Update to final Sponge schem v2 spec.
...
Read lenient, write strict.
2019-05-09 16:59:06 -04:00
wizjany
e2e903ca5e
Pass service to brush sub-commands too.
2019-05-09 11:14:10 -04:00
wizjany
c169d8f258
Re-use command manager service.
2019-05-09 10:28:08 -04:00
wizjany
31d4daf474
Don't compare null BlockStates.
2019-05-06 19:59:58 -04:00
Matthew Miller
9a5d45deed
Fixed direction error
2019-05-06 18:33:21 +10:00
Kenzie Togami
067a570df0
Implement basic Forge suggestions
2019-05-05 23:06:20 -07:00
Kenzie Togami
8a3e6a12b9
Implement suggestions for Bukkit + Sponge
2019-05-05 23:06:20 -07:00
Kenzie Togami
1c54a04fd1
Update Text to 3
2019-05-05 23:06:20 -07:00
Kenzie Togami
4355f8cbf7
Update Piston for suggestions, add hacky-pseudo-suggestions
2019-05-05 23:06:20 -07:00
wizjany
ceff17c4f7
Misc fixes.
...
Closes a few old youtrack issues which I don't remember because I had
like 30 tabs open, and a few other issues which I found while testing
some of those.
2019-05-05 15:15:03 -04:00
wizjany
bc8e477b1c
Fix error message with invalid //expand args.
2019-05-04 22:48:49 -04:00
wizjany
f279907616
Create CommandManagerService directly instead of service loading it.
2019-05-04 17:06:19 -04:00
wizjany
018b6bead8
Tweak removeabove/removebelow commands.
...
Fix misplaced negative.
Layer 0 will always be the current layer, plus <height> layers
above/below. No longer adds 1 arbitrarily to height.
2019-05-02 19:01:28 -04:00
wizjany
57c161a602
Actually initialize GameModes and WeatherTypes.
2019-05-02 00:08:19 -04:00
wizjany
5e81dd1c4c
Make registries Keyed.
2019-05-01 20:12:35 -04:00
Kenzie Togami
13a8c480e3
Insert Locale.ROOT into all case change methods
2019-05-01 15:24:32 -07:00
Kenzie Togami
fb4fb980e0
Condense some command packages
2019-04-30 15:03:18 -07:00
Kenzie Togami
743d7f08ab
Purge intake-like command system
2019-04-30 14:59:45 -07:00
Kenzie Togami
7c1764548d
Deprecate old system, still in use by WG/CB
2019-04-30 13:53:14 -07:00
Kenzie Togami
e06c8b84b4
Merge branch 'master' into feature/piston-commands
2019-04-29 22:44:15 -07:00
Kenzie Togami
b1c042b196
Add checkstyle validation for formatting, fix issues
2019-04-29 22:40:32 -07:00
Kenzie Togami
7188d27aaa
Fix minor bugs in converters
2019-04-29 22:11:15 -07:00
Kenzie Togami
d0f9a71d53
Re-implement many converters using Piston utility converters
2019-04-29 21:57:29 -07:00
wizjany
3c04a83852
Add nicer error when using player commands as console.
...
Also fix slash counts for Bukkit.
2019-04-29 17:39:30 -04:00
wizjany
8baf221c95
Hide help buttons in //sel selector box.
2019-04-29 17:38:26 -04:00
Kenzie Togami
6c21ae5c83
Drop old calc message
2019-04-28 22:09:48 -07:00
Kenzie Togami
462843c3df
Add license
2019-04-28 22:07:08 -07:00
Kenzie Togami
82c4846436
Add more variable args for expressions, quoting
2019-04-28 22:03:54 -07:00
Kenzie Togami
d4fce65abc
A few command fixes
2019-04-28 21:42:45 -07:00
Kenzie Togami
2580a0cf97
Use 'shape' instead of 'regionFactory' in user-facing ctx
2019-04-28 17:30:58 -07:00
Kenzie Togami
6255ccce38
Minor bug fixes
2019-04-28 17:27:33 -07:00
wizjany
d48702aad6
Fix schematic id conversion for entities with multiple renames.
2019-04-28 10:56:34 -04:00
Matthew Miller
f7670f7812
Temporary fix for forge having terrible classpath issues.
2019-04-28 18:47:28 +10:00
Matthew Miller
32d4b36419
Fixed //drawsel
2019-04-28 17:05:37 +10:00
Matthew Miller
6e016a66f0
Fixed //size on clipboards
2019-04-28 16:05:01 +10:00
wizjany
b3053f19ce
Pagination changes and cleanup.
...
Refactored PaginationBox to be abstract. Implementations can generate individual components as needed now.
Add lots of Component usage to schematic list, help listings, etc.
Fix a few schematic and file resolution issues.
2019-04-28 01:12:05 -04:00
Matthew Miller
62353a46db
Added a pagination box and use it in Biome List and Chunk List
2019-04-27 21:57:45 +10:00
Kenzie Togami
0960f70e6b
Update to latest Piston changes
2019-04-27 03:35:44 -07:00
Matthew Miller
7dcf8f5a45
Fixed //setbiome
2019-04-27 17:32:02 +10:00
Matthew Miller
f94093239f
Setup a registry converter
2019-04-27 16:46:13 +10:00
wizjany
b7ea46db2f
Re-add 1.13 entity renames.
...
Accidentally replaced the new ones with the old ones.
This is why we need DFUs.
2019-04-26 21:48:03 -04:00
Matthew Miller
968decf62e
Remove the -l lightning flag from butcher
2019-04-26 23:42:57 +10:00
Kenzie Togami
23279c007e
Fix intialization, rework registration
2019-04-26 01:38:06 -07:00
Kenzie Togami
7ff537138a
Merge master again
2019-04-26 01:25:42 -07:00
Kenzie Togami
b8c120e0c4
Finish porting commands
2019-04-26 01:18:02 -07:00
wizjany
648ecf2153
Add entity, biome, and mask flags to clipboard brush.
2019-04-26 16:41:39 +10:00
wizjany
31a8328fb5
Add data version to BukkitImplAdapter.
...
Also throttle unknown-block warning when loading MCEdit schematics.
2019-04-26 16:41:39 +10:00
wizjany
f0587354be
Cleanup, make copy/paste flags consistent, add status messages.
2019-04-26 16:41:39 +10:00
wizjany
17fba54305
Update SpongeSchematic format to version 2.
...
Allows saving and loading entities and biomes.
2019-04-26 16:41:39 +10:00
wizjany
af1af43ac1
Allow copy/pasting biomes.
...
Copy takes a -b flag to copy biomes.
Paste takes a -b flag to paste biomes (if available).
This allows flexibility to create/load schematics with/without biomes
(when schematic biome support is added).
Also added a -m mask flag to paste to set a source mask, and a -e flag
to skip pasting entities if they are loaded.
2019-04-26 16:41:39 +10:00
wizjany
26511bcc25
Add licenses.
2019-04-26 16:41:39 +10:00
wizjany
fcb42f05cf
Add skull handler.
2019-04-26 16:41:39 +10:00
wizjany
526b3366b5
Add more schematic compat, cleanup.
2019-04-26 16:41:39 +10:00
Kenzie Togami
bfc1fd8fd0
Add licenses
2019-04-26 16:41:39 +10:00
Kenzie Togami
56ef786415
Don't touch the Direction tag, as possibly only Facing changed.
2019-04-26 16:41:39 +10:00
Kenzie Togami
efc4ebe309
Fix 1.13 entity direction code, port old schematics
2019-04-26 16:41:39 +10:00
Kenzie Togami
46e0a7ba48
Port //set
2019-04-25 23:16:18 -07:00
Kenzie Togami
2486388e18
Fix help command suggestion
2019-04-25 23:02:23 -07:00
Kenzie Togami
853bfab022
Merge master, update to texts
2019-04-25 22:11:46 -07:00
Kenzie Togami
d8290cbd8f
Port worldedit commands
2019-04-25 21:03:28 -07:00
Kenzie Togami
9b0fda9f83
Port utility commands
2019-04-25 19:36:22 -07:00
Kenzie Togami
c05e1ed0cc
Fix a few bugs in tool commands
2019-04-25 13:30:16 -07:00
Kenzie Togami
8c2b725f42
Port toll / tool util commands, add more enums
2019-04-25 12:49:03 -07:00
Matthew Miller
f70557e3da
Provide a warning when an invalid property is entered rather than failing. Fixes WorldEdit entirely failing on new MC versions.
2019-04-25 22:48:15 +10:00
Matthew Miller
db4871f022
Merge pull request #462 from EngineHub/feature/expanded-styleset
...
feat(text): added modern text formatting to worldedit, and switch a few things over to it
2019-04-25 19:39:26 +10:00
Matthew Miller
b1e43b7561
wrap to TextComponent
2019-04-25 19:20:29 +10:00
Matthew Miller
5606e752c2
Use wrappers for the Format-type components
2019-04-25 19:11:58 +10:00
Kenzie Togami
e447ac55db
Port super pickaxe commands
2019-04-24 00:00:56 -07:00
Kenzie Togami
2ea30dc70e
Port snapshot commands, update some time stuff to new time
2019-04-23 23:47:22 -07:00
Kenzie Togami
ea3605204c
Fix licenses
2019-04-23 22:59:11 -07:00
Kenzie Togami
e07e0d10b0
Port selection commands
2019-04-23 22:58:30 -07:00
Kenzie Togami
c95fc06b82
Port scripting commands
2019-04-23 19:32:27 -07:00
Kenzie Togami
f81ffdde0c
Port region commands
2019-04-23 18:46:46 -07:00
Brokkonaut
6415d0d964
Fix typo
2019-04-23 18:24:32 -07:00
Kenzie Togami
f2283e8ad0
Port navigation commands
2019-04-23 16:14:21 -07:00
Kenzie Togami
6d4982f23a
Fix checkstyle/license/gen code
2019-04-23 15:44:33 -07:00
Kenzie Togami
20da6227d4
Port history commands
2019-04-23 15:35:05 -07:00
Kenzie Togami
31486cd473
Port generation commands
2019-04-23 10:11:54 -07:00
Matthew Miller
c52eb59d7f
Get it all working
2019-04-22 22:05:20 +10:00
Kenzie Togami
51be16ad81
Port GeneralCommands
2019-04-21 13:10:20 -07:00
Kenzie Togami
1e7b4fc835
Move shaded libraries to their own artifacts
2019-04-20 23:11:39 -07:00
wizjany
a9926328f1
Stop trying to redo when history runs out.
2019-04-20 12:14:11 -04:00
Matthew Miller
5b1573a24e
Replace the message system
2019-04-19 23:06:00 +10:00
Matthew Miller
55348346e9
Shade in Kashike's lib
2019-04-19 14:49:29 +10:00
Kenzie Togami
f481f7d26d
Handle lack of global injected value store
2019-04-18 19:59:53 -07:00
Kenzie Togami
48fcfeed35
Fix licenses
2019-04-18 19:12:09 -07:00
Kenzie Togami
ac03de89cc
Work on adding converters for some arguments
2019-04-18 19:11:57 -07:00
Kenzie Togami
37c993be16
Port ClipboardCommands, update to new Key
2019-04-18 12:34:57 -07:00
Kenzie Togami
f33140b327
Port ChunkCommands, fix up injection, simplify registration
2019-04-16 23:02:23 -07:00
Kenzie Togami
e127bb89e5
Align annotation formatting with brush command methods
2019-04-15 02:03:05 -07:00
Kenzie Togami
e4d8091432
Convert part of the brush commands
2019-04-15 02:01:25 -07:00
Kenzie Togami
2b10128720
Restore Logging for setbiome
2019-04-15 01:25:19 -07:00
Kenzie Togami
267ccf2298
First attempt at integrating Piston as the only command system
2019-04-15 01:21:15 -07:00
Matthew Miller
3e4004ad9e
Start work on improving the formatting system. May switch to Kashike's as Bukkit is shit
2019-04-14 19:33:44 +10:00
Kenzie Togami
f8c4f23658
Partial work on biome commands, need logging replacement
2019-04-14 01:30:40 -07:00
Jesse Boyd
b5e1f3dbc3
Remove the system property check for uuidOverride ( #459 )
...
as it caused a server timeout...
https://pastebin.com/z5ktU8r3
2019-04-10 22:39:56 -04:00
wizjany
ec0422d682
Avoid atan2 in Location cinit.
...
@kashike
2019-04-06 21:26:52 -04:00
wizjany
dcfb769d96
Fix TrueZip region stores.
...
I think. Someone tell me if this breaks their setup with truezip, but
it works for me now and didn't before. I'm assuming people using .zip
just used the normal zip store anyway.
2019-04-06 13:22:20 -04:00
wizjany
fa8139f4b3
Transfer Request to evaluation thread for Expressions.
2019-04-05 14:46:56 -04:00
Kenzie Togami
8ab6585815
Patch new cmds system into old system
2019-04-04 16:16:04 -07:00
Kenzie Togami
1966e5a8a2
Initial Piston conversion test. Non-functional.
2019-04-04 15:50:45 -07:00
Jesse Boyd
4de5487c51
Change Vector hash codes ( #456 )
...
And add additional unit vectors where needed.
2019-04-04 08:36:19 -04:00
Jesse Boyd
9ba1121592
swap order of checks
...
since a boolean check is faster than getting inventory item + string
comparison
2019-04-04 10:45:21 +11:00
Jesse Boyd
3d2054aa0a
WorldEdit accepts a pattern for these commands
...
update the message to reflect that.
2019-04-03 19:39:12 -04:00
wizjany
a80420d14b
Add biome storage to BlockArrayClipboard.
2019-03-30 00:42:28 -04:00
wizjany
4e66b9a336
Revert 6b3426e1
.
...
Empty base blocks are always immutable. Fuzzy states don't have NBT.
2019-03-30 00:41:47 -04:00
wizjany
42d0d6e79a
Use getTag instead of requireTag in a few places.
2019-03-29 23:44:18 -04:00
wizjany
d7d2d03ee8
Clipboard offset pattern is now #copy@[x,y,z].
...
Since the parsers were changed around, unescaped commas are parsed as
separate blocks now.
2019-03-27 23:36:59 -04:00
wizjany
74bff83e38
Don't let items types be null.
...
Better fail-fast if registry doesn't load? or why-ever else this happens
2019-03-26 22:30:46 -04:00
wizjany
6b3426e1de
BaseBlock is technically mutable so that technically shouldn't use it.
2019-03-26 18:14:35 -04:00
wizjany
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
wizjany
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
wizjany
692ba6fda3
Checkstyle.
2019-03-22 14:03:43 -04:00
wizjany
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
wizjany
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
wizjany
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
Matthew Miller
d186cce393
Merge remote-tracking branch 'origin/feature/slf4j-logging'
2019-03-19 20:32:21 +10:00
wizjany
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
wizjany
18414fe3b5
Fix symlink detection.
2019-03-15 09:10:51 -04:00
Kenzie Togami
d6804737cf
Switch to SLF4J logging.
2019-03-13 19:51:48 -07:00
wizjany
1c5d3368a0
Defer permissions check when making LocalSession.
...
Also use Java7 Paths to get rid of some funky logic.
2019-03-11 21:31:43 -04:00
Matthew Miller
a5cec7728d
Merge pull request #452 from EngineHub/forge-1.13
...
Added support for Forge 1.13
2019-03-11 22:52:30 +10:00
wizjany
a59d994d84
Hook up the biome registry.
2019-03-11 00:15:21 -04:00
wizjany
a22b5535fe
Shh checkstyle, I'm a C# dev now.
2019-03-08 16:14:16 -05:00
wizjany
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
wizjany
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
Kenzie Togami
4878f38250
Fix platform registration, config setup
2019-03-04 19:36:06 -08:00