Submodule pymclevel:
> ce70e8b - Fixed: Dimensions check the parent world's session instead of creating their own. (xxx)
> 1540076 - Added: Infinite worlds can now be opened read-only. This doesn't acquire the session lock.
> 4d1d968 - Catch struct errors when checking session lock.
> e0f1ca1 - Fixed: Session lock is checked before all chunk writes.
Operation now has `editor` and `level` as required arguments to init. Operation has a default `undo` implementation that copies all chunks from `undoLevel`. `undoSchematic` renamed to `undoLevel`
Use getChunkSlicesForBox to compute slices.
blockReplaceTable is moved to block_fill.py
adjustCopyParameters is moved to block_copy
info() was accidentally imported from some unknown module (wat? stop using wildcard imports!)
Submodule pymclevel:
> 35bbbdc - Refactor: Change log statements to use `log.info()` instead of `info=log.info; info()`
> ecac4fa - Refactor: Move fillBlocks into its own file and remove "fillBlocksFinite" implementation.
> a7fd3ed - Refactor: Move copyEntitiesFrom logic into copyBlocksFrom and remove "copyEntitiesFromFinite" implementation.
> b0ef494 - Test: copyBlocksFrom no longer fails if the requested box is partially out of the source level's bounds.
> 459b208 - Indev: Now separates LocalPlayer from Entities on load and reinserts it on save.
> 14f5343 - Test: Improve copyConvertBlocks to count entities copied
> ea585d7 - Test: test_mcr no longer re-runs TestAnvilLevel.
> cf51ef4 - Refactor: infiniteworld.py: Change log statements to use `log.info()` instead of `info=log.info; info()`
> f36634b - Refactor: Move copyBlocksFrom and supporting methods to its own file and simplify them.
> ded3b8f - Refactor: Remove redundant code for setting an anvil world's Height.
> 93ccf9d - Refactor: Change a chunk's Height to reference the Height of its containing world.
> fe03b70 - Entities: Fixed Tile positions when copying and rotating ItemFrames
This reduces the number of calls to getChunk which can avoid causing chunks to be loaded and unloaded constantly.
BrushMode.performAtPoint is split up into apply, applyToChunk, and applyToChunkSlices
Some modes need to use apply to just loop over the points without looping over any chunks.
dirtyBoxForPointAndOptions renamed to brushBoxForPointAndOptions
MCServerChunkGenerator was moved to minecraft_server.py
Some strings were changed from single- to double-quoted while removing statically declared tag names.Submodule pymclevel updated.
Submodule pymclevel:
> f4b4091 - Fixed: Statement seems to have no effect
> b7ce019 - Fixed: Remove redundant parentheses
> 55c2369 - Fixed: Incorrect call arguments
> bca5e18 - Fixed: Default argument value is mutable
> 6fa9249 - Refactor: Remove dead class members.
> 79f4e1a - Refactor: Remove dead function.
> a749389 - Fixed: Comparison with None performed with equality operators
> 670bb46 - Refactor: Move MCServerChunkGenerator and related classes and functions to a new file minecraft_server.py
> 0b55db7 - Refactor: Remove tag names statically declared as string constants.
> 50f9ee5 - Add .gitattributes with core.autocrlf
> 78e45ae - Refactor: Remove compressedChunks and related methods and data from MCInfdevOldLevel and AnvilChunk