Commit Graph

602 Commits

Author SHA1 Message Date
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
Kenzie Togami
a0b9810c44
[Doctools] Read source files for command ordering 2019-08-13 20:06:15 -07:00
Kenzie Togami
33633acbe7
Add validator extent to every entry point, fix extent ordering 2019-08-12 10:04:29 -07:00
Kenzie Togami
f472c20bfb Memory optimizations (#505)
* Remove LocatedBlock overhead in LBL map

* Add new space-efficient block map, with thourough testing

* Drop ordering property, add full insertion test

* Add licenses

* Fix mocked platform conflicts

* Disable full block map testing for faster builds

* Re-implement BlockMap with fastutil maps

* Re-write chunk batching to be memory efficient

* Make MultiStageReorder use BlockMap

* Increase LBL load factor, fix long-pack limit detection

* Fix infinite loop in chunk batching

* Save memory in history by cleaning up MSR

* Re-implement LocatedBlockList in BlockMap

* Fix data race with BlockType lazy fields

* Make IDs ALWAYS present, only runtime-consistent. Use for memory efficiency in BlockMap

* Remap inner structure of BlockMap for smaller maps

* Remove containedBlocks fields, not very efficient

* Fix minor de-optimizing bug in stage reorder

* Make long packed y signed

* Add extended Y limit configuration option

* Add licenses

* Store 3 ints for unoptimized BV list

* Add final to BitMath

* Correct int-cast for long-packing
2019-08-12 22:06:40 +10:00
wizjany
61bc012f6f
Fix source masks using EditSession instead of clipboard. (#515) 2019-08-10 11:54:22 -04:00
Kenzie Togami
f83de2a703
Fix bug with spaces at end of suggestions. 2019-08-08 16:28:00 -07:00
wizjany
0e25839490
Fix schematic list box loading schems with spaces in path. 2019-08-08 10:14:16 -04:00
wizjany
95d5adb30c Update docs links to point to enginehub. 2019-08-06 21:49:43 -04:00
wizjany
d822ccc9e5 This is how Mojang checks if trees can grow.
Subject to changes.
2019-08-05 23:16:42 -04:00
wizjany
e25a6d21cd Add -e/-b/-m flags to //stack and //move, to match copy and paste.
Fixes WORLDEDIT-3935.
2019-08-05 22:47:57 -04:00
wizjany
a1465c02ed Make EditSession#center (//center) set even y blocks.
At some point this was fixed for x and z but never for y...
2019-08-05 22:44:51 -04:00
wizjany
6ab74dc7e5 Add missing radius checks.
Courtesy @mathiascode.
2019-08-05 17:39:00 -04:00
wizjany
4b54c32f3a Skip invalid blocks in schematics. 2019-08-04 15:56:16 -04:00
wizjany
df9d766eb3
Merge pull request #513 from EngineHub/bugfix/reloadable-internal-state-ids
Re-load internal state IDs when WORLD_EDITING cap is re-loaded
2019-08-03 09:59:10 -04:00
Kenzie Togami
f848d3114f
Re-load internal state IDs when WORLD_EDITING cap is re-loaded 2019-08-02 15:47:29 -07:00
wizjany
9a133c05d1
Merge pull request #510 from EngineHub/feature/blocks-are-patterns
Make BlockStateHolder extend Pattern.
2019-08-02 17:42:14 -04:00
wizjany
afae2b0784 Make TE tag optional for MCEdit schems too.
And name our threads here too.
2019-08-01 20:15:34 -04:00
wizjany
9d9e3ea065 Remove overrides. 2019-07-28 22:50:42 -04:00
wizjany
6631b6bdf0 Make BlockStateHolder extend Pattern.
Removes the need for wrapping them in BlockPattern.
2019-07-28 18:20:00 -04:00
wizjany
f4c238c3da Load chunks when setting biomes too. 2019-07-28 10:21:29 -04:00
wizjany
c93e5ccfdf Don't suggest ##* for masks. 2019-07-28 10:02:47 -04:00
Kenzie Togami
50cea37439
Fix other minor suggestion bugs 2019-07-27 23:49:11 -07:00
Kenzie Togami
76b608f90b
Fix suggestions on Bukkit for good 2019-07-27 23:31:38 -07:00
Kenzie Togami
3a5170a0e8
Potenially fix quoted string completion 2019-07-27 18:12:18 -07:00
Kenzie Togami
d134820bcb
Merge branch 'master' into fix/quoted 2019-07-27 17:41:44 -07:00
wizjany
8f33e0d550 Make a bunch of paginations internal, generify command boxes. (#509) 2019-07-27 14:35:38 +10:00
wizjany
415cdc0ab2 Output to debug only if we have a valid DFU for schematics.
Warn for backwards (since we can't DFU) and info for missing DFU
(since it might still be compatible).
Under normal circumstances, a DFU should be available so we'll only
log to debug (which is generally off).
2019-07-24 19:05:39 -04:00
wizjany
78488d9b76
Merge pull request #495 from EngineHub/hotfix/nav
Pass through wall improvements
2019-07-23 22:17:15 -04:00
wizjany
4ee2d3b47c Move isAllowedToFly and setFlying to AbstractPlayer, protect them. 2019-07-23 22:16:26 -04:00
wizjany
2cc6a367c6 Move floatAt logic to AbstractPlayer, add isAllowedToFly and setFlying. 2019-07-23 22:16:26 -04:00
wizjany
8545417b3a Fix error in /up when used out of bounds.
Also reduce calls to Entity#getLocation() all over since it's
more expensive than it needs to be (adapts world/vector every time).
2019-07-23 22:16:26 -04:00
Wyatt Childers
917f8a1842 Pass through wall improvements
This change simplifies the algorithm greatly.

Additionally, this fixes a bug where if standing in a non-solid block
i.e. a glass pane, //thru, and the nav wand would not work.
2019-07-23 12:53:10 -04:00
wizjany
edb2e919e7 Add more id conversions.
Bukkit apparently lower cases these for us, but not Forge.
(And invalid block entities are fine - invalid keys are not).
2019-07-19 21:45:25 -04:00