Commit Graph

1098 Commits

Author SHA1 Message Date
Gerber Lóránt Viktor
1d98922bb2 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.
2024-03-19 17:28:17 +01:00
Gerber Lóránt Viktor
fca5da42f4 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.
2024-03-19 17:22:11 +01:00
Gerber Lóránt Viktor
574bc6f9e8 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.
2024-03-19 17:09:39 +01:00
Gerber Lóránt Viktor
b10d15657a 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.
2024-03-18 21:10:59 +01:00
Gerber Lóránt Viktor
10fb88df4b
Make TextureVariable references align with game behaviour (#525)
While the current implementation of reference handling in
this class was the correct way to go (only handling
texture names starting with # as references), the game is
happy to accept references without a leading hashtag, since
it just chops it off and continues on the same code path
regardless.

This commit makes the reference handling in BlueMap align
with this behaviour, potentially allowing "broken" models
to render as they do in game.

This method works for reference resolving, since if a string
passed into the texture field contains a ':' then it must be
a namespaced key, and if it contains a '/' it has to be a
resource key, because the 'minecraft' namespace is implied
in these cases. The other way around, if someone were to pass
in a string like 'oak_planks', it is safe to assume it is a
reference, since the implied resource key would be
'minecraft:oak_planks', but textures aren't at the root level
in that namespace.
2024-03-17 14:56:32 +01:00
Lukas Rieger (Blue)
9fca7b9361
preserve lf lineseparator for config templates 2024-03-17 13:15:07 +01:00
Lukas Rieger (Blue)
a0e9180360
Fix paper-implementation not saving the world on the main thread 2024-03-14 09:17:22 +01:00
Lukas Rieger (Blue)
e9e7042aed
Fix spotless testing for root-modules 2024-03-04 13:10:00 +01:00
Lukas Rieger (Blue)
b27aedc4c2
Fix spotless error 2024-03-04 12:57:49 +01:00
Lukas Rieger (Blue)
0613037093
Fix paper-implementation not detecting additional worlds correctly 2024-03-04 12:50:03 +01:00
Lukas Rieger (Blue)
aecbd23ba7
Implement animated textures 2024-02-26 01:59:28 +01:00
Lukas Rieger (Blue)
2899646adc
Swap chunk-scan direction for future stuff :) 2024-02-25 18:12:27 +01:00
Lukas Rieger (Blue)
c9a8c83d6e
Fix map hires sometimes not loading when loading a map 2024-02-25 15:09:10 +01:00
Lukas Rieger (Blue)
ceb31b68eb
Add more cache-control headers to sql.php 2024-02-25 02:19:40 +01:00
Lukas Rieger (Blue)
b625af695c
Merge branch 'master' of https://github.com/BlueMap-Minecraft/BlueMap 2024-02-25 02:15:45 +01:00
Lukas Rieger (Blue)
908789a815
Add more cache-control headers to integrated webserver 2024-02-25 02:15:34 +01:00
Nikita
c0c946d154
Update ru translation (#515)
Co-authored-by: NikitaCartes-forks <66517597+NikitaCartes-forks@users.noreply.github.com>
2024-02-25 01:26:08 +01:00
Lukas Rieger (Blue)
b02b91d3bb
Use the global cache-hash for settings and textures .json requests 2024-02-25 01:00:20 +01:00
Antti Ellilä
b437684dbb
Workflow to check translations for outdated data and missing strings (#514)
* Workflow to check translations for outdated data and missing strings

* Run the workflow when checker changes too
2024-02-24 23:58:21 +01:00
Lukas Rieger (Blue)
5bb7a77fb9
Actually fix NPE when loading chunks sometimes 2024-02-24 23:51:23 +01:00
Lukas Rieger (Blue)
0d36a0f70b
Fix region file watcher ignoring linear files 2024-02-24 22:09:25 +01:00
Lukas Rieger (Blue)
35c236e9ce
Turn storage-enum into a registry 2024-02-24 14:11:56 +01:00
Lukas Rieger (Blue)
79ea7baba7
Fix biomes-packed array sometimes sized incorrectly 2024-02-24 13:37:02 +01:00
Lukas Rieger (Blue)
122ba83ebb
Correct content-type header and response for empty map tiles 2024-02-24 10:44:25 +01:00
Lukas Rieger (Blue)
d1aba560da
Fix possible self-supression 2024-02-23 23:55:17 +01:00
Lukas Rieger (Blue)
9e8dc8e5a8
Tentative fix for heightmap data being null 2024-02-23 23:55:01 +01:00
Lukas Rieger (Blue)
ec101feb94
Add relocation for bluenbt 2024-02-23 21:58:50 +01:00
Lukas Rieger (Blue)
97c6640721
Change metrics implementation key for paper and spigot 2024-02-23 21:52:41 +01:00
Lukas Rieger (Blue)
2c341fc894
Apply spotless fixes 2024-02-23 21:51:29 +01:00
Lukas Rieger (Blue)
40119127ee
Pack normals into one byte instead of 4 to save space :) 2024-02-23 18:02:29 +01:00
Lukas Rieger (Blue)
6e68a8f0e0
[breaking] Switch hires tile format to prbm (modified prwm) 2024-02-23 17:32:07 +01:00
Lukas Rieger (Blue)
3a1e723a51
Improve linear region efficiency by caching the whole region-file data 2024-02-23 00:55:11 +01:00
Lukas Rieger (Blue)
dbde93c9f5
Reimplement Linear region file format support 2024-02-22 23:23:56 +01:00
Lukas Rieger (Blue)
ff1e38a7e1
Fix Map-Updates not working correctly 2024-02-22 12:58:57 +01:00
TechnicJelle
2dd7a0a9c2
Log user-added Scrips & Styles when they load in (#506) 2024-02-14 21:23:27 +01:00
Lukas Rieger (Blue)
cc50e05262
Use floats for model-positions instead of doubles 2024-02-09 15:30:23 +01:00
Lukas Rieger (Blue)
73a77e5e0e
Do light/cave testing before face-culling to improve performance 2024-02-08 15:26:45 +01:00
Lukas Rieger (Blue)
81e8da3b70
Fix storage performance 2024-02-08 13:18:49 +01:00
Lukas Rieger (Blue)
e02a43a521
Tidy up buildscript and dependencies, fix spongeworld world-folder being wrong 2024-02-07 23:01:31 +01:00
Lukas Rieger (Blue)
74c68c3428
Drop support for fabric 1.15-1.17 and forge 1.17 2024-02-07 20:51:09 +01:00
Lukas Rieger (Blue)
584883444a
Push BlueMapAPI 2024-02-07 20:50:21 +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)
efd45658d5
Fix empty blockstates having the wrong block-properties 2024-02-03 00:59:41 +01:00
Lukas Rieger (Blue)
b3c4f3737d
Webapp: Fix screen-pos calculation on click 2024-01-25 15:28:33 +01:00
Lukas Rieger (Blue)
61f883b134
Add -m option to cli, which allows to filter the maps that should be loaded and rendered 2024-01-23 19:35:25 +01:00
Lukas Rieger (Blue)
6a10fac624
Merge branch 'master' of https://github.com/BlueMap-Minecraft/BlueMap 2024-01-22 09:52:07 +01:00
Lukas Rieger (Blue)
039a95c813
Update vite 2024-01-22 09:52:02 +01:00
jhqwqmc
b1aba76d09
Update zh_CN.conf (#501) 2024-01-18 13:43:33 +01:00
Lukas Rieger (Blue)
a703a92357
Remove pretty-printing from settings.json 2024-01-17 18:27:44 +01:00
Lukas Rieger (Blue)
50b7f3670e
Merge branch 'master' of https://github.com/BlueMap-Minecraft/BlueMap 2024-01-14 10:05:05 +01:00