Commit Graph

105 Commits

Author SHA1 Message Date
wizjany
a2b3aabbbf Typo fixes and command clarifications/cleanup.
Also re-disable the gradle daemon. It doesn't always play nice with
ForgeGradle and hogs ram.
2019-07-04 19:28:42 -04:00
wizjany
79910c57d7
Add 1.14 blocks, items, entities, and tags. (#490)
Should remain backwards compatible with 1.13. Removed blocks/items will
be forwarded to the "replacement" block/item. (e.g. BlockTypes.SIGN will
find OAK_SIGN on 1.14.)
2019-06-24 23:15:07 -04:00
wizjany
d763ab374c
Re-add delchunks command (#481)
The new command now writes a json file to WorldEdit's working directory with instructions on which chunks to delete, which is read by the plugin/mod at startup and calls the ChunkDeleter.
The chunk deleter parses the json and iterates the instructions, backing up .mca files as it goes and overwriting the offset headers with 0 wherever a chunk needs to be deleted.
This allows Minecraft to reclaim the space used for that chunk, as well as forcing it to be generated from scratch next time the area is loaded.
2019-06-22 14:20:14 -04:00
Kenzie Togami
27c7d488a2 Add perf. improvments for Forge 2019-06-15 17:33:17 +10:00
Kenzie Togami
8c17aab9c5 Clean-up some misc. parts of the code 2019-06-15 17:33:17 +10:00
wizjany
dc21b4df58 This does something idk. 2019-06-15 17:33:17 +10:00
Matthew Miller
2571efb5c3 Few fixes for worldedit changes 2019-06-15 17:33:17 +10:00
Kenzie Togami
a3a175ab8c Initial attempt at binding state IDs 2019-06-15 17:33:17 +10:00
wizjany
6f7927bc5a Skip poi folders for snapshot restores.
New to 1.14, Mojang stores .mca files which don't contain chunks in the
poi folder.

Note: we explicitly filter *out* the poi folder, instead of filtering
*to* the regions folder, since old versions of minecraft had regions
directly in the world folder (instead of a regions subfolder).
2019-06-12 21:51:22 -04:00
wizjany
f2f9c26602 Expanded the scope of item brushes (/br apply item, /br paint item).
They now additionally take a direction in which the simulated item usage
should be facing.
Also allow the item parser to parse "hand" and "offhand" as items, to
allow platforms with NBT item support return items with NBT (since
parsing is a slightly more complex task).
2019-06-09 20:44:30 -04:00
wizjany
351fd6771a Restore ability to restore old MCRegion files. 2019-06-06 10:34:12 -04:00
wizjany
3a6b3dc75c Fix restore for 1.14 chunk format.
Top-most chunk can now have lighting without have a palette or blocks.
2019-06-02 21:56:29 -04:00
wizjany
9099a17fe5 Some command refactoring. Switch usages of page args to -p flag. 2019-06-01 07:04:07 -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
wizjany
f9d0d340e7 Add DFUs. Currently used by //restore. 2019-05-13 23:07:53 -04:00
wizjany
31d4daf474 Don't compare null BlockStates. 2019-05-06 19:59:58 -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
e06c8b84b4
Merge branch 'master' into feature/piston-commands 2019-04-29 22:44:15 -07:00
Matthew Miller
f7670f7812 Temporary fix for forge having terrible classpath issues. 2019-04-28 18:47:28 +10:00
Kenzie Togami
7ff537138a
Merge master again 2019-04-26 01:25:42 -07:00
wizjany
17fba54305 Update SpongeSchematic format to version 2.
Allows saving and loading entities and biomes.
2019-04-26 16:41:39 +10:00
Kenzie Togami
853bfab022
Merge master, update to texts 2019-04-25 22:11:46 -07:00
Kenzie Togami
2ea30dc70e
Port snapshot commands, update some time stuff to new time 2019-04-23 23:47:22 -07: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
Kenzie Togami
d6804737cf
Switch to SLF4J logging. 2019-03-13 19:51:48 -07:00
Kenzie Togami
4878f38250
Fix platform registration, config setup 2019-03-04 19:36:06 -08:00
wizjany
aafb854e4f More useful names for block ItemTypes. 2019-03-02 12:26:26 -05:00
Matthew Miller
5de8e0852c Treat categories as empty when missing 2019-02-18 21:17:36 +10:00
Matthew Miller
50a286b070 Update the block/item category registries - this won't build until a Spigot PR is merged though. 2019-02-17 13:30:40 +10:00
Matthew Miller
db1315e043 Refactor registries to entirely use the platform 2019-02-16 19:35:13 +10:00
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
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
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
b75d5149eb Fixed the bundle being directly used outside of the registry system. 2018-12-23 21:43:20 +10:00
Matthew Miller
6312bcecf6 Fixed the item parser not using the ItemRegistry 2018-12-23 19:02:58 +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
7d468357e3 Added "fast mode corrections" 2018-12-09 16:27:02 +10:00
Kenzie Togami
2c8b2fe089
Move vectors to static creators, for caching 2018-11-03 23:00:24 -07:00
Kenzie Togami
399e0ad5fa
Refactor vector system to be cleaner
- Move Vector, etc. into `.math` package
- Drop many methods that will be auto-promoted anyways, eg. with
`divide(int)` and `divide(double)` the first is now gone.
- Take Block vectors into their own class hierarchy
- Make it clear throughout the API what takes blockvectors
- many more improvements
2018-11-03 23:00:23 -07:00
Matthew Miller
f8bf547c9e Added some missing bukkit registries 2018-10-14 17:55:57 +10:00
Matthew Miller
0a149a796f Make distr operation based 2018-10-12 15:28:40 +10:00
Kenzie Togami
ff877ec03b
Make BlockType#getDefaultState like other fields 2018-10-04 17:20:07 -07:00