Commit Graph

634 Commits

Author SHA1 Message Date
Wyatt Childers
1c3277648f Add a ItemMaterial for use by CraftBook & CommandBook 2019-12-30 22:48:27 -05:00
Octavia Togami
ad55387a40
Deprecate entire old commands package 2019-12-19 21:59:31 -08:00
Octavia Togami
7039dc8306 Clean up handling of sel/nav wand tool (#540) 2019-12-18 19:11:43 +10:00
wizjany
2fb8bc627f Don't leave 0b files when attempting to save old .schematics.
Also fix messages/error propagation.
2019-12-16 14:06:15 -05:00
Octavia Togami
18a55bc14e Add new experimental snapshot API (#524)
* Add new experimental snapshot API

This API intends to replace the existing snapshot API in WorldEdit 8.

It is currently experimental, and the old API is soft-deprecated. Once
it is determined to be stable, the old API will be removed and replaced
with this new one.

It uses TrueVFS instead of TrueZIP, due to the latter's status as
matinence-only, and the face that TrueVFS is NIO-FileSystem compatible,
allowing us to integrate it with NIO's native zipfs. The TrueVFS system
does encompass multiple modules, but users and download + install
truevfs-profile-default as a fatjar. We depend on that profile to show
this as the intended solution.

* Port commands to experimental snapshots. Legacy ones are in sibling classes.

* Add many tests, fix bugs

* Clean up imports

* Verify sorting behaviors, fix bugs

* Add license to test

* Add support for DIM region folders

* Fix tests for Windows paths

* Rewrite tests for even more coverage, fix bugs

* Clean up naming on tests

* Add test for legacy format

* Stop trying to abuse `file://`, use `snapfs:` instead

* Simplify iterPaths

* Use File.separator in FS snap tests

* Fix some bugs from T9N PR (#538)

* Use printInfo/printError to keep colors right

* Escape quotes before they go in the map

* I18N-ify new snapshot code
2019-12-16 21:00:12 +10:00
Matthew Miller
42cf205311 Added 1.15 bundled data 2019-12-11 21:13:51 +10:00
Octavia Togami
9ede68deb5
Increase expr test timeout to 1 second 2019-12-10 18:35:17 -08:00
wizjany
28dbf19182 Bypass bukkit api for regeneration.
Done in impl adapter now.
2019-12-10 18:21:27 -05:00
Matthew Miller
679b00bde6
feat(i18n): add support for translatable text replacement (#478)
* Rebase translation work for easier rebasing

* Fixed gradle setup

* Further translations

* Add a few more strings

* Remove support for pluralisation to match Minecraft and alleviate issues with over-complexity

* Further translations

* Added a tonne more translations

* Added the remaining translation nodes

* When custom files are found, use the base files for default values.

* Only download translations if a key is provided

* Fixed typo in brush radius too large

* Allow translation files to be missing entries, and use the english version in place.

* Fixed issues brought up in review

* Reverse translation order (#533)

* Fix a lot of PR comments

* Add JD to the Operation warned field due to no private fields in J8

* Only warn when there are messages
2019-12-09 12:46:18 +10:00
Octavia Togami
d132f08bc4
Merge pull request #536 from enveeed/feature/line-convex-selection
Add //line support for convex polyhedral selections
2019-12-06 23:21:17 -08:00
Octavia Togami
c93fb82da1
Use ImmutableList instead of ArrayList, cleanup logic 2019-12-06 23:09:27 -08:00
Matthew Miller
0354edc145
Use commandblock name as session key (#535)
* Use commandblock name as session key

* Use a UUIDv3 with a given session prefix

* Use a UUIDv3

* Prefix the UUID and use a charset

* Fixed a few issues with using CommandBlocks

* Remove /worldedit:/ workaround
2019-12-07 16:27:04 +10:00
enveeed
275ecb05a5 restored command description to be more close to the original 2019-12-06 20:51:16 +01:00
enveeed
c5a07388a5 added overload to avoid breaking method signature for drawLine() 2019-12-06 18:47:39 +01:00
enveeed
f22f5332aa fixed changes to be within code conventions 2019-12-06 14:34:09 +01:00
enveeed
093902b0c1 added //line support for convex polyhedral selections 2019-12-06 13:29:46 +01:00
MicleBrick
b425649df0 Fix legacy import (#534)
* always use data fixer

* undo reformat

* fixer -> no fixer -> fail

* extract variable
2019-11-27 20:29:30 -08:00
Brokkonaut
89bc664f69 Fix flipping of chests and stairs (#526)
* Fix flipping of chests and stairs

* Check if the new property value is valid before updating

* Only for horizontal flips double chests/stairs should be modified
2019-11-12 21:09:28 +10:00
wizjany
fc5c625f02 Add -n flag to //paste to select without pasting. 2019-11-09 20:58:47 -05:00
wizjany
2b1a7ed943 Make lrbuild tool use history. 2019-11-09 20:58:47 -05:00
wizjany
e5fe051340 Use persistent leaves for garden patch generator (/pumpkins) 2019-11-09 20:58:39 -05:00
wizjany
575463a8e9 Make a few more selection commands usable from console. 2019-11-09 11:31:51 -05:00
Kenzie Togami
1fbb7a70f9
Merge pull request #527 from EngineHub/feature/extended-expressions
Expressions Part 1: ANTLR
2019-11-07 16:23:43 -08:00
Pieter12345
bf3b91aaa7
Fix stack command diagonal shifting with -s flag
Fix `//stack -s [num]` shifting the selection to unexpected places. This fix causes `//stack -s [num]` behavior in diagonal directions to be consistent with the behavior in non-diagonal directions, which means that the last stack will be selected.
2019-10-28 15:02:24 +01:00
Kenzie Togami
257988b149
Add tests for expressions listed on the docs 2019-10-27 15:15:59 -07:00
Kenzie Togami
777b132a04
Catch small edge-case in parser 2019-10-27 12:58:32 -07:00
Kenzie Togami
ae71c2a51b
Clean up formatting on ANTLR grammar 2019-10-26 16:51:13 -07:00
Kenzie Togami
fa42e40281
Limit expression thread count to processor count. 2019-10-26 16:44:23 -07:00
Kenzie Togami
b0528f157a
Improve timeout tracking for expressions 2019-10-26 16:18:59 -07:00
Kenzie Togami
a273e55e7a
Fix gradle build 2019-10-18 22:39:52 -07:00
Kenzie Togami
1ba02c54b7
Completely rewrite the expression parser in ANTLR. 2019-10-18 22:27:31 -07:00
Kenzie Togami
9f1e7cdaaf
Small modifications for better visitors 2019-10-13 02:20:10 -07:00
Kenzie Togami
7d52374fc0
Add initial ANTLR setup + lex/parser 2019-10-13 02:02:47 -07:00
Matt
ffbb25f1ea
Fixed snapshot typo 2019-10-11 13:42:07 -04:00
Kenzie Togami
03c0cce53e Update to Piston 0.5.2 + Doctools/Deprecation improvements (#523)
* Update to Piston 0.5.2

* [Doctools] Fix output, be verbose about deprecations

* Improve deprecation system, doctools output
2019-10-05 19:06:18 +10:00
wizjany
91f92a46fe Apply watchdog mode to undo/redo. Abstract EditSession creation logic. 2019-09-30 18:28:13 -04:00
Kenzie Togami
7e3fc6c8e7
Disable watchdog ticking by default, //watchdog to turn on 2019-09-29 22:10:04 -07:00
Kenzie Togami
8af68fc884
Initial watchdog setup. Bukkit needs adapters, everything needs testing. 2019-09-29 22:09:55 -07:00
Kenzie Togami
fa25ad22cd
Harden JsonFileSessionStore against nulls/Gson oddities 2019-09-23 11:46:24 -07:00
Kenzie Togami
1832d08d92
Merge pull request #520 from EngineHub/feature/tool-command
Add /tool back, deprecate global tool commands
2019-09-22 13:27:43 -07:00
Kenzie Togami
6162a47002
Force non-Locatable actors to use placeAtPos1 2019-09-21 18:21:22 -07:00
wizjany
44dc926c49 Fix console command usage. 2019-09-19 20:53:47 -04:00
Kenzie Togami
ba26d788af
Add /brush none and unbind aliases 2019-09-09 18:13:57 -07:00
Kenzie Togami
0e9fee3b60
Add /tool back, deprecate global tool commands 2019-09-08 17:46:29 -07:00
Matthew Miller
a73a45ce43
Create parser context data for factory converter in non-user-mode 2019-08-31 16:30:51 +10:00
Kenzie Togami
299d703f24
[Doctools] Fix //expand listing, ensure no missed commands 2019-08-29 19:58:00 -07:00
Matthew Miller
44bffc5a86 Use https for the pastebin service 2019-08-27 21:54:53 +10:00
Kenzie Togami
45bfa0d140
[Doctools] Add command-topic for CSS markup 2019-08-26 00:45:08 -07:00
Kenzie Togami
7af397bd56
[Doctools] Fix //rotate description quoting 2019-08-26 00:17:22 -07:00
Matthew Miller
0620478763
feature(cli): Added a CLI version of WorldEdit, and allowed most commands to be run from console (#508)
* Re-do commits to avoid awful rebase

* You can load and save a schematic file now. Still gotta setup ability to use commands as a console actor.

* Add a world override concept to LocalSession, and allow a lot more commands to be performed by actors.

* Fixed commands, and set the loaded schematic as the world override in CLI

* Properly load tags

* Added 1.14.4 data values

* Allow a majority of commands to be performed by the console.

* Fixed a lot of PR requested changes

* Added a Locatable interface and use that for getting the location of the player in commands.

* Added script support. Currently requires a newline at the end of the script.

* Shade everything to allow this to run locally - should probably minimize this to an extent later.

* Actually hook up the version

* Added a //world command to set the override

* Fixed a missed checkstyle issue

* Added CommandBlock support to Bukkit

* Make command block support configurable

* Minor cleanup and implementing a few of the final functions

* Fixed most issues from PR

* Improve UX, saving is now automatic and unknown command messages show

* Better save docs and support any clipboard format

* Include the entire formats list

* Arrays.copyOf

* Clear the world override if the selector is called on another world.

* Update logging extent to allow basic logging with non-player actors
2019-08-25 19:58:28 +10:00