Commit Graph

11 Commits

Author SHA1 Message Date
Gerber Lóránt Viktor a847e247e5
Add mechanism for retrieving BlockEntity data (#524)
* Add mechanism for retrieving BlockEntity data

This commit adds a mechanism for retrieving block entity data.
Block entity data is required to support for example text on signs,
banner patterns, or mods such as Domum Ornamentum.

* Fix the coordinate-packing for block entity-loading

This commit fixes the incorrect shifting of bits when
packing the chunk-local coordinates of a block entity
into a 64-bit long for lookups.

* Change mapping type of BlockEntity lookups

This commit changes the type stored for BlockEntity
mappings from a class of the type associated with the
ID to a method reference to its constructor.

* Tidy BlockEntity mappings

This commit introduces a small functional interface
to make the type less ungodly. Also silences the warning
about referencing subclasses in the superclass, it is
fine in this case, we're just storing a reference to
the constructor.

* Add missing license headers

The license headers were missing. Oops.
2024-03-20 23:23:03 +01:00
Lukas Rieger 16981f2797
Refactor World-Management and Region/Chunk-Loading (#496)
* Implement PackedIntArrayAccess

* First working render with BlueNBT

* Progress converting chunkloaders

* Core rewrite done

* WIP - Restructuring configs and world-map mapping

* WIP - Compiling and starting without exceptions :)

* Fix cave detection

* Ensure configuration backwards compatibility (resolve dimension from configured world if missing)

* Implement support for 1.16+ chunks

* Implement support for 1.15+ chunks

* Implement support for 1.13+ chunks and some fixes

* Also find worlds based on their id again in BlueMapAPI

* Improve autogenerated config names

* Implement equals for all ServerWorld implementations

* Get rid of var usage
2024-02-07 20:43:37 +01:00
Lukas Rieger (Blue) b3875597a4
Generalize MCA implementation a bit more 2023-04-12 18:06:50 +02:00
Lukas Rieger (Blue) ff100e2656
Add option to use ocean-floor-heightmap to improve cave-detection 2022-10-23 00:52:39 +02:00
Lukas Rieger (Blue) 83806641ac
Add minimum inhabitedTime configuration to maps 2022-08-15 11:43:16 +02:00
Blue (Lukas Rieger) ae00af5860
Support 1.18 worlds, add fabric 1.18 support, start adding forge 1.17.1 2021-11-20 12:31:18 +01:00
Blue (Lukas Rieger) 31910382b0
Apply spotless fixes 2021-09-19 22:15:50 +02:00
Blue (Lukas Rieger) e178f935aa
Rewrite of the render-engine and big performance improvements
- changed most immutable vectors with mutable ones
- dropped 1.12.2 support
- improved caching and block/chunk access
- much more smaller tweaks
2021-07-25 13:08:40 +02:00
Blue (Lukas Rieger) d88a25ad47
Model-Rewrite: Complete, further performance improvements in progress 2021-07-17 16:06:50 +02:00
Blue (Lukas Rieger) 16237d292a
Implement file-watchers and remove events that are not needed anymore 2021-05-02 14:51:42 +02:00
Blue (Lukas Rieger) 27295cb988
Intermediate commit: Lots of redesigning with the RenderManager and Render-Tasks 2021-04-24 22:11:26 +02:00