Commit Graph

381 Commits

Author SHA1 Message Date
Jesse Boyd
1b07846746
some adapter refactoring 2019-11-19 04:40:40 +00:00
Jesse Boyd
0087a0d6ab
Various minor
fix undo null sections
fix cancel for certain parallel jobs
optimize schem paste
2019-11-17 22:47:56 +00:00
Matthew Miller
96e56bdd0c Rebase translation work for easier rebasing 2019-11-16 22:42:14 +10:00
Jesse Boyd
3dde61cee6
Legacy schem reader offset 2019-11-14 19:23:41 +00:00
Jesse Boyd
ac6f4ae358
Use BlockArrayClipboard for schem load 2019-11-12 12:41:39 +00: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
Jesse Boyd
cfa147cf76
WIP clipboard offsets
TODO schem load -> BlockArrayClipboard
2019-11-11 22:34:33 +00:00
Jesse Boyd
eac1f8f73d
Remove debug (again) 2019-11-11 21:12:32 +00:00
Jesse Boyd
6cbbefc0de
Merge branch 'commanding-pipeline' of https://github.com/IntellectualSites/FastAsyncWorldEdit-1.13 into commanding-pipeline 2019-11-11 21:06:22 +00:00
Jesse Boyd
53ad3d3cd2
Fix schem save order 2019-11-11 21:06:10 +00:00
MattBDev
1ffe05464f Merge remote-tracking branch 'origin/commanding-pipeline' into commanding-pipeline 2019-11-11 16:02:41 -05:00
MattBDev
a23a4e5496 misc changes. 2019-11-11 16:02:28 -05:00
Jesse Boyd
032942c0e8
Remove debug 2019-11-11 20:18:22 +00:00
Jesse Boyd
751e6a5dd4
Update SpongeSchematicReader.java 2019-11-11 19:56:55 +00:00
Jesse Boyd
19a7c54341
Fix schem save 2019-11-11 18:48:15 +00:00
Jesse Boyd
7aa0d9c122
Various minor
Disable P2's we region restrictions (so that it uses FAWE's)
Fix extent binding
Fix filtering on null sections
2019-11-11 16:49:13 +00:00
Jesse Boyd
240b2de90c
Update to PlotSquared-we branch 2019-11-06 09:29:20 +00:00
Jesse Boyd
0bfb1dbdd1
Fix BlockArrayClipboard offset 2019-11-05 15:08:44 +00:00
Jesse Boyd
32d837414b
static blocktype initialization
instead of using hacky reflection
2019-11-02 20:35:51 +01:00
Jesse Boyd
df9e9e510a
Limit processing 2019-11-02 12:13:42 +01:00
Jesse Boyd
ed7df341b4
Make mca file reusable 2019-11-02 08:07:40 +01:00
Jesse Boyd
2f3c6769c8
Legacy clipboards 2019-11-02 07:15:56 +01:00
Jesse Boyd
c2cb463dae
Fix schem load 2019-11-01 23:48:52 +01:00
Jesse Boyd
0c1fdcc498
remove broken debug 2019-11-01 22:56:07 +01:00
Jesse Boyd
23e0b0ef02
Update SpongeSchematicReader.java 2019-11-01 22:26:39 +01:00
Jesse Boyd
88b6d60f8e
schem v2 biomes 2019-11-01 22:09:50 +01:00
Jesse Boyd
1ad040f7d0
fix compile 2019-11-01 18:36:40 +01:00
Jesse Boyd
f0ab1d5f18
finish overhaul of NBT stream api 2019-11-01 18:29:13 +01:00
Jesse Boyd
9cf02fe654
WIP Anvil API 2019-10-31 21:04:02 +01:00
Jesse Boyd
b533408022
wip clipboard migration 2019-10-31 14:12:23 +01:00
Jesse Boyd
0296d566ed
wip remove faweclipboard 2019-10-31 04:04:15 +01:00
MattBDev
1b28dcda40 Minor changes to match upstream more closely 2019-10-23 14:29:37 -04:00
MattBDev
fd408c64ed Selective merge of commanding branch. 2019-10-23 12:58:36 -04:00
Jesse Boyd
8768085479
schem list is still broken
clickEvent and hoverEvent don't seem to work, I'm probably doing something wrong
2019-10-23 15:35:04 +01:00
Jesse Boyd
2080e9786b
commanding-pipeline diff 2019-10-23 05:23:52 +01:00
MattBDev
f963e63f58 Attempt to fix compiling 2019-10-03 19:35:55 -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
MattBDev
24a147465d Fixed a bunch of extends and removed slottableblockbag 2019-09-21 21:00:45 -04:00
MattBDev
8b96cdc9a5 *
A tribute to Jesse
2019-09-20 21:52:35 -04:00
MattBDev
cafb4120ef More upstream compatibility fixes 2019-09-03 15:21:53 -04: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
MattBDev
cbbe8b5dfa upstream changes 2019-08-15 15:24:18 -04: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
Jesse Boyd
7a57a5dd8c
minor
idk it compiles now
2019-08-10 16:01:42 +10:00
Jesse Boyd
3b879477b6
more compiling 2019-08-07 10:25:57 +10:00
Jesse Boyd
3c626ef25a
Differentiate passthrough / abstract delegate
AbstractDelegateExtent allows overriding just the basic set/get to change behavior - at performance cost

Passthrough passes all operation, so each must be individually overrided.
2019-08-07 06:38:25 +10:00
Jesse Boyd
4c2b753687
merge 2019-08-07 01:32:05 +10:00
Jesse Boyd
b6bc09226c
conflicts 2019-08-07 01:25:53 +10: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
4b54c32f3a Skip invalid blocks in schematics. 2019-08-04 15:56:16 -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
MattBDev
0d2b0025ce Merge branch 'commanding' of https://github.com/IntellectualSites/FastAsyncWorldEdit-1.13 into commanding
# Conflicts:
#	worldedit-core/src/main/java/com/sk89q/worldedit/command/MaskCommands.java
2019-07-29 21:06:11 -04:00
MattBDev
198427dc3d fix more compile errors 2019-07-29 21:05:31 -04:00
Jesse Boyd
7967ef4db4
ff586011 2019-07-30 07:39:18 +10:00
wizjany
f4c238c3da Load chunks when setting biomes too. 2019-07-28 10:21:29 -04:00
MattBDev
ff5860113d It started on work with commands then I got carried away. 2019-07-25 14:44:10 -04: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
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
MattBDev
01c371df9c Minor upstream changes and obviously more command work 2019-07-23 19:17:38 -04:00
MattBDev
46f5b12b36 Convert tabs to whitespace. 2019-07-22 16:42:40 -04:00
Jesse Boyd
4d8cf04be1
fix some more compilation issues 2019-07-22 19:05:14 +10: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
Jesse Boyd
85ebee7da7
brush settings 2019-07-20 01:29:49 +10:00
Jesse Boyd
e86e4c9c53
wip on FaweQueue 2019-07-19 06:49:29 +10:00
Jesse Boyd
0a924915c8
shift extent queue methods 2019-07-19 02:07:31 +10:00
Jesse Boyd
22a7ad7503
optimized biome streaming to schematics 2019-07-18 22:36:50 +10:00
Jesse Boyd
be8213d8ee
resolve conflicts 2019-07-18 16:56:57 +10:00
Jesse Boyd
dd38cbe750
. 2019-07-18 04:30:02 +10:00
Jesse Boyd
ff94a1e5ed
8108d0a9 2019-07-18 04:24:21 +10:00
Jesse Boyd
ae9efc3df1
Merge branch 'breaking-114' into filter-pipeline 2019-07-17 14:55:04 +10:00
MattBDev
8108d0a936 Major command changes that don't work yet. 2019-07-16 23:44:34 -04:00
wizjany
f75104f2ac Actually use fixed IDs in MCEdit reader.
Fixes WORLDEDIT-3947.
2019-07-16 19:45:27 -04:00
Jesse Boyd
71a9256617
Merge branch 'breaking' into breaking-114 2019-07-17 06:08:18 +10:00
Jesse Boyd
75f059fdc5
check length, not null 2019-07-17 05:28:55 +10:00
Jesse Boyd
b3e11d2094
patch for missing tile position data 2019-07-17 05:16:08 +10:00
Jesse Boyd
cfbde956f4
some refactoring to pipeline classes (WIP) 2019-07-17 05:10:39 +10:00
Jesse Boyd
14d5275e05
wip chunk based bitset 2019-07-12 02:10:32 +10:00
Jesse Boyd
cf09ca7f37
delete FaweQueue 2019-07-12 01:32:14 +10:00
Jesse Boyd
cf0c735cf3
Merge branch 'breaking' into breaking-114 2019-07-11 08:08:55 +10:00
Jesse Boyd
cafd4bfece
use Locale.ROOT for uppercase as well 2019-07-10 22:26:31 +10:00
Jesse Boyd
a98a91e066
Use Locale.ROOT 2019-07-10 21:03:00 +10:00
Jesse Boyd
b32d46b08a
Use Locale.ROOT 2019-07-10 21:01:56 +10:00
Jesse Boyd
50e649acb8
update items 2019-07-10 20:58:27 +10:00
MattBDev
4a40c7d99c Renaming and cleanup and a new method. 2019-07-09 15:50:13 -04:00
Jesse Boyd
f99d6e7478
wip on 1.14 2019-07-09 17:18:51 +10:00
Kenzie Togami
f2c47f3759
License for new class 2019-07-04 11:55:27 -07:00
Kenzie Togami
99ee32fe8e
Many fixes for buffered extents 2019-07-04 11:43:36 -07:00
Kenzie Togami
d27daefd3e
Implement getBlock for chunk batching extent
Also improve speed of comparators, by using ::comparingX and bitwise
ops.
2019-07-03 21:11:36 -07:00
Jesse Boyd
a4344fb2df
add 1.14 depend (non functional) 2019-06-29 14:06:19 +10:00
Jesse Boyd
13b602cb83
isAffectedBlock 2019-06-29 06:31:07 +10:00
Jesse Boyd
58c6b6278f
a69b239848 2019-06-29 04:20:48 +10:00
Jesse Boyd
a2efdbc488
a1c15e1c39 2019-06-29 03:10:47 +10:00
Jesse Boyd
7a9adacc32
Don't read the entire file to check the format 2019-06-29 01:42:22 +10:00
Jesse Boyd
55dad5a972
7f3c4c4828 2019-06-29 01:39:58 +10:00
Jesse Boyd
846a1b0769
6c94cca15e 2019-06-29 00:01:51 +10:00
MattBDev
d0a31691e1 Small changes 2019-06-26 20:14:00 -04:00
MattBDev
a69b239848 Upstream 2019-06-25 13:07:47 -04:00
MattBDev
a1c15e1c39 Many upstream changes. Should be non-breaking 2019-06-25 09:00:44 -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
902754ce8a Bit more cleanup for schematic handling. 2019-06-21 11:07:03 -04:00
wizjany
a3d23fdcea Fix requirements of sponge schematic spec.
Fixes WORLDEDIT-3929.
2019-06-20 18:51:29 -04:00
wizjany
0aa0dbfd11 Fix BlockTransformExtent rotating directional boolean properties.
Also add support for redstone dust, which is directional non-boolean.
(It's the only block like this atm.)
2019-06-15 13:35:23 -04:00
wizjany
213cadf093 Import cleanup, ensure gradle uses https for deps, bump deps. 2019-06-13 09:17:00 -04:00
MattBDev
1f14d4652e Upstream changes, prefix changes, formatting changes, variable name changes
I think that draining waterlogged items also works now?
2019-06-12 17:13:53 -04:00
NotMyFault
ec001b8d3b Revert "Upstream, generics, formatting"
This reverts commit cd88e513a8.
2019-06-12 15:45:41 +02:00
MattBDev
cd88e513a8 Upstream, generics, formatting 2019-06-11 20:31:56 -04:00
MattBDev
7f3c4c4828 A lot of removals, upstream merges, and maybe more. 2019-06-07 20:58:48 -04:00
MattBDev
6c94cca15e Selective upstream merge
Signed-off-by: MattBDev <4009945+MattBDev@users.noreply.github.com>
2019-06-04 12:40:11 -04:00
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
Jesse Boyd
6bc5b4a823
. 2019-05-29 06:31:22 +10:00
wizjany
4b15439e03 Don't attempt to update empty or invalid flower pots. 2019-05-25 00:35:12 -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
Jesse Boyd
43a6541763
shift some code to EditSessionBuilder 2019-05-13 00:21:01 +10:00
Jesse Boyd
c797dcb194
WIP filter patterns 2019-05-12 23:32:04 +10:00
wizjany
56908a7d62 Update to final Sponge schem v2 spec.
Read lenient, write strict.
2019-05-09 16:59:06 -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
wizjany
d48702aad6 Fix schematic id conversion for entities with multiple renames. 2019-04-28 10:56:34 -04: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
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
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
Jesse Boyd
f849caf655
Fix clipboard upload/download 2019-04-15 21:05:26 +10:00
Jesse Boyd
69e2ce6165
Avoid block vector creation for combine stages = false 2019-04-15 19:56:38 +10:00
Jesse Boyd
524b24eeae
Fixes #114 (untested) 2019-04-12 01:00:03 +10:00
Jesse Boyd
d61e5f33f1
some minor fixes
/br sspl - says to click same spot again to apply, clicked same spot and nothing happens
/br layer - gives an error message "there was an error handling a FAWE command: [See console]
/br clipboard - doesn't let me execute because of max radius of 5, however am unable to set a lower radius as there is no option for it
/br butcher - tried to kill some mobs, but didn't work (nothing happened)
/br splatter - tried to execute the command, nothing happened
2019-04-11 05:14:58 +10:00
Jesse Boyd
d7380781f4
Fix BlockTransformExtent 2019-04-10 02:31:05 +10:00
Jesse Boyd
093542c337
fix compile + use mutable vector for affine transform + fix bstats package 2019-04-07 20:43:59 +10:00
Jesse Boyd
1529c187d2
Merge branch 'breaking' of https://github.com/IntellectualSites/FastAsyncWorldEdit-1.13 into breaking 2019-04-07 17:41:51 +10:00
Jesse Boyd
31ac2b69d1
Fix block rotation 2019-04-07 17:41:26 +10:00
Jesse Boyd
c8529b0609
. 2019-04-07 10:52:30 +10:00
NotMyFault
ab3394c35e Add prefixes and make FAWE more translatable 2019-04-07 01:13:23 +02:00
Jesse Boyd
0afae082c2
Remove string switches for BlockType 2019-04-06 03:34:11 +11:00
Jesse Boyd
94d5d8df8e
Merge branch 'master' into breaking 2019-04-05 15:47:04 +11:00
Jesse Boyd
1beea3cd22
Some more upstream merge 2019-04-04 21:28:41 +11:00
Jesse Boyd
8897109dc4
wip upstream merge 2019-04-04 00:25:16 +11:00
Jesse Boyd
7086eb8b3e
continue with merge 2019-04-03 22:28:57 +11:00
Jesse Boyd
8aef06b29e
*
haven't done one of these in a while
*continuing with merge in previous commit
2019-04-03 17:00:59 +11:00
Jesse Boyd
f361619037
Merge remote-tracking branch 'upstream/master' into breaking 2019-04-03 16:53:34 +11:00
matt
29692f3fbe Migrate to SLF4J 2019-04-02 18:21:02 -04:00
Jesse Boyd
f87e31683e
don't use origin as the region bounds 2019-04-02 00:19:32 +11:00