From 4ab500afabc637fa9794b223a9ed80d0c856029d Mon Sep 17 00:00:00 2001 From: NikitaCartes Date: Thu, 19 Dec 2024 03:56:11 +0100 Subject: [PATCH] Add a log message when a resource is missing for block states --- .../core/map/hires/blockmodel/BlockRendererType.java | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/core/src/main/java/de/bluecolored/bluemap/core/map/hires/blockmodel/BlockRendererType.java b/core/src/main/java/de/bluecolored/bluemap/core/map/hires/blockmodel/BlockRendererType.java index 82622f343..9826daffe 100644 --- a/core/src/main/java/de/bluecolored/bluemap/core/map/hires/blockmodel/BlockRendererType.java +++ b/core/src/main/java/de/bluecolored/bluemap/core/map/hires/blockmodel/BlockRendererType.java @@ -24,6 +24,7 @@ */ package de.bluecolored.bluemap.core.map.hires.blockmodel; +import de.bluecolored.bluemap.core.logger.Logger; import de.bluecolored.bluemap.core.map.TextureGallery; import de.bluecolored.bluemap.core.map.hires.RenderSettings; import de.bluecolored.bluemap.core.resources.pack.resourcepack.ResourcePack; @@ -34,11 +35,14 @@ import lombok.Getter; import lombok.RequiredArgsConstructor; +import java.util.HashSet; + public interface BlockRendererType extends Keyed, BlockRendererFactory { BlockRendererType DEFAULT = new Impl(Key.bluemap("default"), ResourceModelRenderer::new); BlockRendererType LIQUID = new Impl(Key.bluemap("liquid"), LiquidModelRenderer::new); BlockRendererType MISSING = new Impl(Key.bluemap("missing"), MissingModelRenderer::new); + HashSet missingBlockStates = new HashSet<>(); Registry REGISTRY = new Registry<>( DEFAULT, @@ -61,6 +65,9 @@ public interface BlockRendererType extends Keyed, BlockRendererFactory { * @return true if this renderer-type can render the provided {@link BlockState} despite missing resources. */ default boolean isFallbackFor(BlockState blockState) { + if (missingBlockStates.contains(blockState)) return false; + missingBlockStates.add(blockState); + Logger.global.logDebug("Missing resources for blockState: " + blockState); return false; }