Commit Graph

226 Commits

Author SHA1 Message Date
Hannes Greule
428f8e201d
Upstream changes (#717)
* Perform part of the move of //fast to //perf (#1377)

This re-adds a deprecated `//fast` and moves the current logic to
`//perf`. Later `//perf` will have its syntax reworked, when Piston
finally supports sub-commands properly!

* Names via Translation (#1268)

* Deprecate BiomeRegistry, etc.

* Update some libraries, e.g. text

* Move to new translation renderer

* Revert "Deprecate BiomeRegistry, etc."

This reverts commit 59a5d6c92aec52739a8dc68ac3d23898af7593dd.

This was not a good idea for potential mod shenanigans.

* Move BiomeData#getName to BiomeRegistry, use i18n

* Use getRichName instead of getName

* Implement getRichName for NullBiomeRegistry

* Add getRichName for blocks

* Relocate net.kyori.minecraft

* Update adapters for getRichBlockName

* Add getRichName for items

* Update adapters for getRichItemName

* Update adapters JAR for merge

(cherry picked from commit cfd26253b6fb59ff6c65a0157a6780be7db4ea5a)

* Follow-up fixes for 92f877679622a27b16b9e5cd61cfec1a6545be33

* Don't send deprecation warning and improve info message

* Fix click command for perf box

(cherry picked from commit 7ee60060c31df2f8b41212b430a0875312189339)

* update R3 adapter§

Co-authored-by: Octavia Togami <octavia.togami@gmail.com>
Co-authored-by: NotMyFault <mc.cache@web.de>
Co-authored-by: Aurora <21148213+aurorasmiles@users.noreply.github.com>
Co-authored-by: Aurora <aurora@relanet.eu>
2020-11-09 10:38:10 +01:00
MattBDev
02886b0387 Updated the WorldEdit license using find and replace 2020-08-24 21:31:47 -04:00
Octavia Togami
4c299bc0b8 Replace setPosition with trySetPosition (#1403)
Allows cancellation information to be fed back into the ascend/descend
algorithms.

(cherry picked from commit 71e104bcb187a5313e88dda5df79059c8ffbc1fe)
2020-07-10 13:22:48 -04:00
Matthew Miller
4604aa5920 Additional work towards 1.16 compatibility
- Very basic implementation of the SideEffects system. Will definitely need fine tuning for it to be functional, but is not considered a priority in my opinion.
- Minor changes to the World interface and World implementations related to the SideEffects system. Shouldn't be the cause of any new bugs but be on the lookout.
- Included debug in BukkitImplLoader.java to assist contributors in understanding what needs to be implemented for the adapter to load properly.

Still very WIP but we're a few steps closer. So far, this is coming along better than I anticipated. Hopefully we can keep the momentum.
2020-06-29 22:08:16 -04:00
Octavia Togami
ff47e6f717 Cherry-pick to fix EntryMaker issue 2020-04-16 20:26:55 -04:00
Octavia Togami
692caeea8a Read WE version from manifest ourselves
(cherry picked from commit 947775b5e54aa9dd89d68ee0b382939796301902)
2020-03-23 19:31:56 -04:00
MattBDev
9f07894f28 Performance improvement based on case study by @me4502 2020-03-19 13:08:25 -04:00
NotMyFault
80d7b0582f i18n upstream merge 2019-12-09 20:07:57 +01:00
Jesse Boyd
66744bfaa4
Merge remote-tracking branch 'upstream/feature/translatable-text' into i18n-merge 2019-11-21 13:50:05 +00:00
Jesse Boyd
2c9f192baf
Merge remote-tracking branch 'upstream/master' into merge 2019-11-19 21:23:47 +00:00
Matthew Miller
ded86d4872 Fixed issues brought up in review 2019-11-18 19:50:52 +10:00
Matthew Miller
96e56bdd0c Rebase translation work for easier rebasing 2019-11-16 22:42:14 +10: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
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
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
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
MattBDev
8108d0a936 Major command changes that don't work yet. 2019-07-16 23:44:34 -04:00
Kenzie Togami
5a14693aa9
Migrate Sponge, Libs to Kotlin DSL 2019-07-12 13:49:45 -07:00
Kenzie Togami
19802e478c
Re-write root and libs to Kotlin DSL 2019-07-12 13:49:45 -07:00
Kenzie Togami
eccbad92e8
Move away from deprecation, move dependencies towards buildSrc 2019-07-12 13:49:45 -07: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
wizjany
213cadf093 Import cleanup, ensure gradle uses https for deps, bump deps. 2019-06-13 09:17:00 -04:00
wizjany
fd1178a3d0 Fix item interact event. 2019-06-11 18:02:24 -04:00
wizjany
8022d8e911 Use ItemInteract for item right clicks in Sponge.
They don't fire for InteractBlock.

# Conflicts:
#	worldedit-sponge/src/main/java/com/sk89q/worldedit/sponge/SpongeWorldEdit.java
2019-06-06 13:22:18 -04:00
wizjany
a3ca670a32 Fix sponge perms too.
Untested tho cuz 1.13 lol
2019-06-01 09:48:45 -04:00
wizjany
6ad274677f Don't require command for CUI init. 2019-05-29 23:15:06 -04:00
Kenzie Togami
8a3e6a12b9 Implement suggestions for Bukkit + Sponge 2019-05-05 23:06:20 -07:00
Kenzie Togami
743d7f08ab
Purge intake-like command system 2019-04-30 14:59:45 -07: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
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
5c19866809
Some fixes for new libs shading 2019-04-20 23:33:54 -07:00
Kenzie Togami
1e7b4fc835
Move shaded libraries to their own artifacts 2019-04-20 23:11:39 -07: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
267ccf2298
First attempt at integrating Piston as the only command system 2019-04-15 01:21:15 -07:00
Jesse Boyd
f361619037
Merge remote-tracking branch 'upstream/master' into breaking 2019-04-03 16:53:34 +11:00
Kenzie Togami
d6804737cf
Switch to SLF4J logging. 2019-03-13 19:51:48 -07: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
Kenzie Togami
94ebb81e92 Add generics to other rawtypes 2019-02-03 05:54:05 -05:00
Kenzie Togami
590b7e23a9 Remove all raw usages of BSH, improve API generics 2019-02-03 05:01:39 -05:00
gamerforEA
22f8372b89 Fix BlockType and ItemType registration for Sponge distributive 2019-02-03 03:51:36 -05:00
gamerforEA
ea0ca470f1 Fix Metrics injection 2019-02-03 03:51:15 -05:00
Matthew Miller
9c3964d330 Added a way to get the spawn position of a world 2019-02-02 11:29:51 -05:00
Matthew Miller
c935e381b7 Added a method to teleport entities across worlds. 2019-02-02 11:23:02 -05:00
Matthew Miller
45f1de6009 Move the pasting system over to WorldEdit, and add a /we report command. Currently only reports system status and the config. Need to add a platform reporter system. 2019-02-02 11:20:36 -05:00
Matthew Miller
54142c8669 Added a display name to Actors 2019-02-02 09:37:14 -05:00
Matthew Miller
e88b8c961d Added "fast mode corrections" 2019-02-02 09:21:16 -05:00
Matthew Miller
f3c633582e Finish removal of PlayerDirection, and partially added diagonal support back to commands. (Other minor changes to WorldEdit-Sponge and FAVS) 2019-02-02 08:43:57 -05:00
Matthew Miller
628c9cc0b7 Make BaseBlock more memory efficient, and make it clear in the API that it's not intended to be used for every single block. 2019-01-10 09:54:21 -05:00
Kenzie Togami
4d6045813c Move vectors to static creators, for caching 2019-01-10 07:17:04 -05:00
Kenzie Togami
de7d9421b1
Add generics to other rawtypes 2018-12-26 16:45:46 -08:00
Kenzie Togami
3fefcbf971
Remove all raw usages of BSH, improve API generics 2018-12-26 16:39:10 -08:00
gamerforEA
66415dfa34 Fix BlockType and ItemType registration for Sponge distributive 2018-12-24 22:19:05 +04:00
gamerforEA
2e62389bdc Update SpongeAPI 2018-12-24 16:07:09 +04:00
gamerforEA
53ddc3fac0 Fix Metrics injection 2018-12-24 16:02:13 +04:00
IronApollo
d4157b7e0e Current progress with update 2018-12-23 11:19:33 -05: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
c949b07df1 Added a method to teleport entities across worlds. 2018-12-21 16:56:10 +10:00
Matthew Miller
5eb9b779d7 Move the pasting system over to WorldEdit, and add a /we report command. Currently only reports system status and the config. Need to add a platform reporter system. 2018-12-18 19:28:55 +10:00
Matthew Miller
8f236afae9 Added a display name to Actors 2018-12-18 17:36:53 +10:00
Matthew Miller
7d468357e3 Added "fast mode corrections" 2018-12-09 16:27:02 +10:00
Matthew Miller
e0dcd2e9c2 Disable signing task when not signing. 2018-11-18 14:28:37 +10:00
Matthew Miller
bf98dcff09 Updated bStats 2018-11-10 19:26:46 +10:00
Matthew Miller
53bc730909
Merge pull request #435 from sk89q/feature/trace-unflushed-sessions
Add tracing for unflushed EditSessions
2018-11-04 17:21:25 +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
Kenzie Togami
351a8bbc6c
Align configurate with yaml config 2018-10-30 18:45:53 -07:00
Kenzie Togami
e1fbaaff59
Add tracing for unflushed EditSessions 2018-10-30 18:39:51 -07:00
Matthew Miller
d1cb6e2156 compileOnly breaks shadowJar. bStats needs to fix their repos. 2018-10-10 23:22:38 +10:00
Matthew Miller
e3001586e5 Make bStats compileOnly so transitive projects won't load it, Jitpack has issues. 2018-10-10 19:39:09 +10:00
Matthew Miller
cf7ce70802 Skip signing in artefactory publish 2018-10-10 17:09:20 +10:00
Matthew Miller
bf38b371d8 Update bStats because they deleted their old repo. 2018-10-10 16:59:18 +10:00
Matthew Miller
6ecbf19406 Properly rotate fences etc 2018-10-08 22:32:26 +10:00
Jesse Boyd
cfbf7dbec0
Update from sk89q/master 2018-09-25 15:35:21 +10:00
Matthew Miller
02c6f11bb9 Added bStats 2018-09-20 22:59:42 +10:00
Matthew Miller
4969dac39c Potential minor performance improvements when checking fuzzy equality. 2018-09-20 16:56:46 +10:00
Matthew Miller
4d0df10f88 Fixed sessions not saving on shutdown 2018-08-19 13:01:08 +10:00
Matthew Miller
eba91cac5f Added a config option to entirely disable server side cui. 2018-08-18 19:42:45 +10:00
Matthew Miller
0cbfc9308e Add base of sendFakeBlock to Sponge and Forge impls 2018-08-18 19:35:53 +10:00
Jesse Boyd
1740c845d2
What are the dud BlockCategories? 2018-08-14 11:00:44 +10:00
Matthew Miller
f54d6afb65 Make BaseBlock more memory efficient, and make it clear in the API that it's not intended to be used for every single block. 2018-08-10 20:29:06 +10:00
Matthew Miller
1480606b52 Fixed a few more issues found looking over the changeset. 2018-08-04 11:43:42 +10:00
Matthew Miller
663dd1f4d8 Added an entity, weathertype, and gamemode registry. 2018-08-04 11:43:41 +10:00
Matthew Miller
39c6a5e958 Fixed items not being registered 2018-08-04 11:43:40 +10:00
Matthew Miller
ca06a05117 Update the Bukkit adapter to the Spigot API Preview 2018-08-04 11:43:40 +10:00
kashike
ee6af8ee76 state stuff 2018-08-04 11:43:40 +10:00
kashike
40a665a509 package move 2018-08-04 11:43:40 +10:00
Matthew Miller
e1c2ea3a3b Update configs, and remove unused BlockData methods. 2018-08-04 11:43:40 +10:00
kashike
d33e2e98aa registry changes 2018-08-04 11:43:40 +10:00
kashike
a48c319e7e package move 2018-08-04 11:43:40 +10:00
Matthew Miller
7db443a69a Migrate the logic for which pass a block goes into. Also updated it and made it use tags where possible. 2018-08-04 11:43:40 +10:00
Matthew Miller
e291cccb94 Move simulateBlockMine up to the platforms. 2018-08-04 11:43:40 +10:00
Matthew Miller
b06937d1c8 Setup a legacy mapper system. The file does not exist yet. 2018-08-04 11:43:39 +10:00
Matthew Miller
282eca7663 Added a category system and refactored registries 2018-08-04 11:43:39 +10:00
Matthew Miller
484687a49d Further work on BlockState transition 2018-08-04 11:43:39 +10:00
Matthew Miller
e99190225e Further BaseBlock modernisation 2018-08-04 11:43:39 +10:00