diff --git a/common/src/main/java/eu/midnightdust/visualoverhaul/FakeBlocks.java b/common/src/main/java/eu/midnightdust/visualoverhaul/FakeBlocks.java new file mode 100644 index 0000000..edf9475 --- /dev/null +++ b/common/src/main/java/eu/midnightdust/visualoverhaul/FakeBlocks.java @@ -0,0 +1,69 @@ +package eu.midnightdust.visualoverhaul; + +import eu.midnightdust.visualoverhaul.config.VOConfig; +import net.minecraft.block.Blocks; +import net.minecraft.client.MinecraftClient; +import net.minecraft.client.model.ModelNameSupplier; +import net.minecraft.client.model.SpriteGetter; +import net.minecraft.client.render.OverlayTexture; +import net.minecraft.client.render.VertexConsumer; +import net.minecraft.client.render.block.BlockRenderManager; +import net.minecraft.client.render.model.*; +import net.minecraft.client.render.model.json.JsonUnbakedModel; +import net.minecraft.client.texture.Sprite; +import net.minecraft.client.util.SpriteIdentifier; +import net.minecraft.client.util.math.MatrixStack; +import net.minecraft.resource.ResourceManager; +import net.minecraft.util.Identifier; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.random.Random; +import net.minecraft.world.BlockRenderView; + +import java.io.IOException; +import java.util.HashMap; +import java.util.Map; + +import static eu.midnightdust.visualoverhaul.VisualOverhaulCommon.LOGGER; + +public class FakeBlocks { + private static final Baker BAKER = new FakeBaker(); + private static final Map FAKE_MODELS = new HashMap<>(); + private static final BlockRenderManager renderManager = MinecraftClient.getInstance().getBlockRenderManager(); + + public static void reload(ResourceManager manager) { + manager.findResources("models", path -> path.getPath().startsWith("models/fakeblock") && path.getPath().endsWith(".json")).forEach((id, resource) -> { + try { + JsonUnbakedModel unbaked = JsonUnbakedModel.deserialize(resource.getReader()); + BakedModel baked = unbaked.bake(new ModelTextures.Builder().addFirst(unbaked.getTextures()).build(() -> "#fakeblock"), BAKER, + new ModelBakeSettings(){}, Boolean.TRUE.equals(unbaked.getAmbientOcclusion()), unbaked.getGuiLight() != null && unbaked.getGuiLight().isSide(), unbaked.getTransformation()); + Identifier fakeId = Identifier.of(id.getNamespace(), id.getPath().replace("models/fakeblock/", "").replace(".json", "")); + FAKE_MODELS.put(fakeId, baked); + if (VOConfig.debug) LOGGER.info("Successfully loaded fake block model: {}", fakeId); + } catch (IOException e) { + LOGGER.error("Error occurred while loading fake block model {}", id.toString(), e); + } + }); + } + public static void renderFakeBlock(Identifier id, BlockPos pos, BlockRenderView world, MatrixStack matrices, VertexConsumer vertexConsumer) { + renderManager.getModelRenderer().render(world, FAKE_MODELS.get(id), Blocks.DIRT.getDefaultState(), // State is just needed for a few generic checks + pos, matrices, vertexConsumer, false, Random.create(), 0, OverlayTexture.DEFAULT_UV); + } + + public static class FakeBaker implements Baker { + public BakedModel bake(Identifier id, ModelBakeSettings settings) { + return null; // Not used in Json models, so we just leave ít like this and cross our fingers. + } + + @Override + public SpriteGetter getSpriteGetter() { + return new SpriteGetter() { + static final SpriteIdentifier MISSING = new SpriteIdentifier(Identifier.ofVanilla("textures/atlas/blocks.png"), Identifier.ofVanilla("missingno")); + + @Override public Sprite get(SpriteIdentifier spriteId) { return spriteId.getSprite(); } + @Override public Sprite getMissing(String textureId) { return MISSING.getSprite(); } + }; + } + + public ModelNameSupplier getModelNameSupplier() { return () -> "#fakeblock"; } + } +} diff --git a/common/src/main/java/eu/midnightdust/visualoverhaul/IconicButtons.java b/common/src/main/java/eu/midnightdust/visualoverhaul/IconicButtons.java index d4b1fbb..ca89e14 100644 --- a/common/src/main/java/eu/midnightdust/visualoverhaul/IconicButtons.java +++ b/common/src/main/java/eu/midnightdust/visualoverhaul/IconicButtons.java @@ -26,6 +26,7 @@ import java.util.Map; import java.util.Properties; import java.util.function.Function; +import static eu.midnightdust.visualoverhaul.VisualOverhaulCommon.LOGGER; import static eu.midnightdust.visualoverhaul.util.VOColorUtil.alphaAndBrightness; public class IconicButtons { @@ -126,7 +127,7 @@ public class IconicButtons { ICONS.put(iconId, textureId); } } catch (Exception e) { - LogManager.getLogger("Iconic").error("Error occurred while loading texture.properties {}", id.toString(), e); + LOGGER.error("Error occurred while loading texture.properties for button icon {}", id.toString(), e); } }); } diff --git a/common/src/main/java/eu/midnightdust/visualoverhaul/VisualOverhaulClient.java b/common/src/main/java/eu/midnightdust/visualoverhaul/VisualOverhaulClient.java index 8ccd5c5..68d32b8 100755 --- a/common/src/main/java/eu/midnightdust/visualoverhaul/VisualOverhaulClient.java +++ b/common/src/main/java/eu/midnightdust/visualoverhaul/VisualOverhaulClient.java @@ -1,7 +1,6 @@ package eu.midnightdust.visualoverhaul; import eu.midnightdust.visualoverhaul.config.VOConfig; -import net.minecraft.block.Block; import static eu.midnightdust.visualoverhaul.VisualOverhaulCommon.MOD_ID; @@ -11,8 +10,6 @@ public class VisualOverhaulClient { public static int grassColor = -8934609; public static int potionColor = -13083194; - public static Block JukeBoxTop; - public static void onInitializeClient() { VOConfig.init(MOD_ID, VOConfig.class); } diff --git a/common/src/main/java/eu/midnightdust/visualoverhaul/VisualOverhaulCommon.java b/common/src/main/java/eu/midnightdust/visualoverhaul/VisualOverhaulCommon.java index 3e02b39..7dd3741 100755 --- a/common/src/main/java/eu/midnightdust/visualoverhaul/VisualOverhaulCommon.java +++ b/common/src/main/java/eu/midnightdust/visualoverhaul/VisualOverhaulCommon.java @@ -3,6 +3,8 @@ package eu.midnightdust.visualoverhaul; import net.minecraft.item.ItemStack; import net.minecraft.util.Identifier; import net.minecraft.util.math.BlockPos; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import java.util.List; import java.util.ArrayList; @@ -12,6 +14,7 @@ import java.util.UUID; public class VisualOverhaulCommon { public static final String MOD_ID = "visualoverhaul"; + public static final Logger LOGGER = LoggerFactory.getLogger("VisualOverhaul"); public static final List playersWithMod = new ArrayList<>(); public static final Map jukeboxItems = new HashMap<>(); diff --git a/common/src/main/java/eu/midnightdust/visualoverhaul/block/JukeboxTop.java b/common/src/main/java/eu/midnightdust/visualoverhaul/block/JukeboxTop.java deleted file mode 100755 index 4bcff1e..0000000 --- a/common/src/main/java/eu/midnightdust/visualoverhaul/block/JukeboxTop.java +++ /dev/null @@ -1,26 +0,0 @@ -package eu.midnightdust.visualoverhaul.block; - -import net.minecraft.block.AbstractBlock; -import net.minecraft.block.Block; -import net.minecraft.block.BlockState; -import net.minecraft.block.Blocks; -import net.minecraft.registry.RegistryKey; -import net.minecraft.registry.RegistryKeys; -import net.minecraft.state.StateManager; -import net.minecraft.state.property.BooleanProperty; -import net.minecraft.state.property.Properties; - -import static eu.midnightdust.visualoverhaul.VisualOverhaulCommon.id; - -public class JukeboxTop extends Block { - private static final BooleanProperty HAS_RECORD = Properties.HAS_RECORD; - - public JukeboxTop() { - super(AbstractBlock.Settings.copy(Blocks.JUKEBOX).registryKey(RegistryKey.of(RegistryKeys.BLOCK, id("jukebox_top")))); - this.setDefaultState(this.stateManager.getDefaultState().with(HAS_RECORD,false)); - } - @Override - protected void appendProperties(StateManager.Builder builder) { - builder.add(HAS_RECORD); - } -} diff --git a/common/src/main/resources/assets/visualoverhaul/blockstates/jukebox_top.json b/common/src/main/resources/assets/visualoverhaul/blockstates/jukebox_top.json deleted file mode 100755 index 0ba4dad..0000000 --- a/common/src/main/resources/assets/visualoverhaul/blockstates/jukebox_top.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "variants": { - "has_record=true": { - "model": "visualoverhaul:block/jukebox_top_playing" - }, - "has_record=false": { - "model": "visualoverhaul:block/jukebox_top_stopped" - } - } -} \ No newline at end of file diff --git a/common/src/main/resources/assets/visualoverhaul/blockstates/radio_jukebox_top.json b/common/src/main/resources/assets/visualoverhaul/blockstates/radio_jukebox_top.json deleted file mode 100755 index 0f3f921..0000000 --- a/common/src/main/resources/assets/visualoverhaul/blockstates/radio_jukebox_top.json +++ /dev/null @@ -1,44 +0,0 @@ -{ - "variants": { - "playing=true,channel=0": {"model": "visualoverhaul:block/phonos/jukebox_top_playing_0"}, - "playing=false,channel=0": {"model": "visualoverhaul:block/phonos/jukebox_top_stopped_0"}, - "playing=true,channel=1": {"model": "visualoverhaul:block/phonos/jukebox_top_playing_1"}, - "playing=false,channel=1": {"model": "visualoverhaul:block/phonos/jukebox_top_stopped_1"}, - "playing=true,channel=2": {"model": "visualoverhaul:block/phonos/jukebox_top_playing_2"}, - "playing=false,channel=2": {"model": "visualoverhaul:block/phonos/jukebox_top_stopped_2"}, - "playing=true,channel=3": {"model": "visualoverhaul:block/phonos/jukebox_top_playing_3"}, - "playing=false,channel=3": {"model": "visualoverhaul:block/phonos/jukebox_top_stopped_3"}, - "playing=true,channel=4": {"model": "visualoverhaul:block/phonos/jukebox_top_playing_4"}, - "playing=false,channel=4": {"model": "visualoverhaul:block/phonos/jukebox_top_stopped_4"}, - "playing=true,channel=5": {"model": "visualoverhaul:block/phonos/jukebox_top_playing_5"}, - "playing=false,channel=5": {"model": "visualoverhaul:block/phonos/jukebox_top_stopped_5"}, - "playing=true,channel=6": {"model": "visualoverhaul:block/phonos/jukebox_top_playing_6"}, - "playing=false,channel=6": {"model": "visualoverhaul:block/phonos/jukebox_top_stopped_6"}, - "playing=true,channel=7": {"model": "visualoverhaul:block/phonos/jukebox_top_playing_7"}, - "playing=false,channel=7": {"model": "visualoverhaul:block/phonos/jukebox_top_stopped_7"}, - "playing=true,channel=8": {"model": "visualoverhaul:block/phonos/jukebox_top_playing_8"}, - "playing=false,channel=8": {"model": "visualoverhaul:block/phonos/jukebox_top_stopped_8"}, - "playing=true,channel=9": {"model": "visualoverhaul:block/phonos/jukebox_top_playing_9"}, - "playing=false,channel=9": {"model": "visualoverhaul:block/phonos/jukebox_top_stopped_9"}, - "playing=true,channel=10": {"model": "visualoverhaul:block/phonos/jukebox_top_playing_10"}, - "playing=false,channel=10": {"model": "visualoverhaul:block/phonos/jukebox_top_stopped_10"}, - "playing=true,channel=11": {"model": "visualoverhaul:block/phonos/jukebox_top_playing_11"}, - "playing=false,channel=11": {"model": "visualoverhaul:block/phonos/jukebox_top_stopped_11"}, - "playing=true,channel=12": {"model": "visualoverhaul:block/phonos/jukebox_top_playing_12"}, - "playing=false,channel=12": {"model": "visualoverhaul:block/phonos/jukebox_top_stopped_12"}, - "playing=true,channel=13": {"model": "visualoverhaul:block/phonos/jukebox_top_playing_13"}, - "playing=false,channel=13": {"model": "visualoverhaul:block/phonos/jukebox_top_stopped_13"}, - "playing=true,channel=14": {"model": "visualoverhaul:block/phonos/jukebox_top_playing_14"}, - "playing=false,channel=14": {"model": "visualoverhaul:block/phonos/jukebox_top_stopped_14"}, - "playing=true,channel=15": {"model": "visualoverhaul:block/phonos/jukebox_top_playing_15"}, - "playing=false,channel=15": {"model": "visualoverhaul:block/phonos/jukebox_top_stopped_15"}, - "playing=true,channel=16": {"model": "visualoverhaul:block/phonos/jukebox_top_playing_16"}, - "playing=false,channel=16": {"model": "visualoverhaul:block/phonos/jukebox_top_stopped_16"}, - "playing=true,channel=17": {"model": "visualoverhaul:block/phonos/jukebox_top_playing_17"}, - "playing=false,channel=17": {"model": "visualoverhaul:block/phonos/jukebox_top_stopped_17"}, - "playing=true,channel=18": {"model": "visualoverhaul:block/phonos/jukebox_top_playing_18"}, - "playing=false,channel=18": {"model": "visualoverhaul:block/phonos/jukebox_top_stopped_18"}, - "playing=true,channel=19": {"model": "visualoverhaul:block/phonos/jukebox_top_playing_19"}, - "playing=false,channel=19": {"model": "visualoverhaul:block/phonos/jukebox_top_stopped_19"} - } -} \ No newline at end of file diff --git a/common/src/main/resources/assets/visualoverhaul/models/block/jukebox_top_playing.json b/common/src/main/resources/assets/visualoverhaul/models/fakeblock/jukebox_top_playing.json similarity index 100% rename from common/src/main/resources/assets/visualoverhaul/models/block/jukebox_top_playing.json rename to common/src/main/resources/assets/visualoverhaul/models/fakeblock/jukebox_top_playing.json diff --git a/common/src/main/resources/assets/visualoverhaul/models/block/jukebox_top_stopped.json b/common/src/main/resources/assets/visualoverhaul/models/fakeblock/jukebox_top_stopped.json similarity index 100% rename from common/src/main/resources/assets/visualoverhaul/models/block/jukebox_top_stopped.json rename to common/src/main/resources/assets/visualoverhaul/models/fakeblock/jukebox_top_stopped.json diff --git a/common/src/main/resources/assets/visualoverhaul/models/block/phonos/jukebox_top_playing_0.json b/common/src/main/resources/assets/visualoverhaul/models/fakeblock/phonos/jukebox_top_playing_0.json similarity index 100% rename from common/src/main/resources/assets/visualoverhaul/models/block/phonos/jukebox_top_playing_0.json rename to common/src/main/resources/assets/visualoverhaul/models/fakeblock/phonos/jukebox_top_playing_0.json diff --git a/common/src/main/resources/assets/visualoverhaul/models/block/phonos/jukebox_top_playing_1.json b/common/src/main/resources/assets/visualoverhaul/models/fakeblock/phonos/jukebox_top_playing_1.json similarity index 100% rename from common/src/main/resources/assets/visualoverhaul/models/block/phonos/jukebox_top_playing_1.json rename to common/src/main/resources/assets/visualoverhaul/models/fakeblock/phonos/jukebox_top_playing_1.json diff --git a/common/src/main/resources/assets/visualoverhaul/models/block/phonos/jukebox_top_playing_10.json b/common/src/main/resources/assets/visualoverhaul/models/fakeblock/phonos/jukebox_top_playing_10.json similarity index 100% rename from common/src/main/resources/assets/visualoverhaul/models/block/phonos/jukebox_top_playing_10.json rename to common/src/main/resources/assets/visualoverhaul/models/fakeblock/phonos/jukebox_top_playing_10.json diff --git a/common/src/main/resources/assets/visualoverhaul/models/block/phonos/jukebox_top_playing_11.json b/common/src/main/resources/assets/visualoverhaul/models/fakeblock/phonos/jukebox_top_playing_11.json similarity index 100% rename from common/src/main/resources/assets/visualoverhaul/models/block/phonos/jukebox_top_playing_11.json rename to common/src/main/resources/assets/visualoverhaul/models/fakeblock/phonos/jukebox_top_playing_11.json diff --git a/common/src/main/resources/assets/visualoverhaul/models/block/phonos/jukebox_top_playing_12.json b/common/src/main/resources/assets/visualoverhaul/models/fakeblock/phonos/jukebox_top_playing_12.json similarity index 100% rename from common/src/main/resources/assets/visualoverhaul/models/block/phonos/jukebox_top_playing_12.json rename to common/src/main/resources/assets/visualoverhaul/models/fakeblock/phonos/jukebox_top_playing_12.json diff --git a/common/src/main/resources/assets/visualoverhaul/models/block/phonos/jukebox_top_playing_13.json b/common/src/main/resources/assets/visualoverhaul/models/fakeblock/phonos/jukebox_top_playing_13.json similarity index 100% rename from common/src/main/resources/assets/visualoverhaul/models/block/phonos/jukebox_top_playing_13.json rename to common/src/main/resources/assets/visualoverhaul/models/fakeblock/phonos/jukebox_top_playing_13.json diff --git a/common/src/main/resources/assets/visualoverhaul/models/block/phonos/jukebox_top_playing_14.json b/common/src/main/resources/assets/visualoverhaul/models/fakeblock/phonos/jukebox_top_playing_14.json similarity index 100% rename from common/src/main/resources/assets/visualoverhaul/models/block/phonos/jukebox_top_playing_14.json rename to common/src/main/resources/assets/visualoverhaul/models/fakeblock/phonos/jukebox_top_playing_14.json diff --git a/common/src/main/resources/assets/visualoverhaul/models/block/phonos/jukebox_top_playing_15.json b/common/src/main/resources/assets/visualoverhaul/models/fakeblock/phonos/jukebox_top_playing_15.json similarity index 100% rename from common/src/main/resources/assets/visualoverhaul/models/block/phonos/jukebox_top_playing_15.json rename to common/src/main/resources/assets/visualoverhaul/models/fakeblock/phonos/jukebox_top_playing_15.json diff --git a/common/src/main/resources/assets/visualoverhaul/models/block/phonos/jukebox_top_playing_16.json b/common/src/main/resources/assets/visualoverhaul/models/fakeblock/phonos/jukebox_top_playing_16.json similarity index 100% rename from common/src/main/resources/assets/visualoverhaul/models/block/phonos/jukebox_top_playing_16.json rename to common/src/main/resources/assets/visualoverhaul/models/fakeblock/phonos/jukebox_top_playing_16.json diff --git a/common/src/main/resources/assets/visualoverhaul/models/block/phonos/jukebox_top_playing_17.json b/common/src/main/resources/assets/visualoverhaul/models/fakeblock/phonos/jukebox_top_playing_17.json similarity index 100% rename from common/src/main/resources/assets/visualoverhaul/models/block/phonos/jukebox_top_playing_17.json rename to common/src/main/resources/assets/visualoverhaul/models/fakeblock/phonos/jukebox_top_playing_17.json diff --git a/common/src/main/resources/assets/visualoverhaul/models/block/phonos/jukebox_top_playing_18.json b/common/src/main/resources/assets/visualoverhaul/models/fakeblock/phonos/jukebox_top_playing_18.json similarity index 100% rename from common/src/main/resources/assets/visualoverhaul/models/block/phonos/jukebox_top_playing_18.json rename to common/src/main/resources/assets/visualoverhaul/models/fakeblock/phonos/jukebox_top_playing_18.json diff --git a/common/src/main/resources/assets/visualoverhaul/models/block/phonos/jukebox_top_playing_19.json b/common/src/main/resources/assets/visualoverhaul/models/fakeblock/phonos/jukebox_top_playing_19.json similarity index 100% rename from common/src/main/resources/assets/visualoverhaul/models/block/phonos/jukebox_top_playing_19.json rename to common/src/main/resources/assets/visualoverhaul/models/fakeblock/phonos/jukebox_top_playing_19.json diff --git a/common/src/main/resources/assets/visualoverhaul/models/block/phonos/jukebox_top_playing_2.json b/common/src/main/resources/assets/visualoverhaul/models/fakeblock/phonos/jukebox_top_playing_2.json similarity index 100% rename from common/src/main/resources/assets/visualoverhaul/models/block/phonos/jukebox_top_playing_2.json rename to common/src/main/resources/assets/visualoverhaul/models/fakeblock/phonos/jukebox_top_playing_2.json diff --git a/common/src/main/resources/assets/visualoverhaul/models/block/phonos/jukebox_top_playing_3.json b/common/src/main/resources/assets/visualoverhaul/models/fakeblock/phonos/jukebox_top_playing_3.json similarity index 100% rename from common/src/main/resources/assets/visualoverhaul/models/block/phonos/jukebox_top_playing_3.json rename to common/src/main/resources/assets/visualoverhaul/models/fakeblock/phonos/jukebox_top_playing_3.json diff --git a/common/src/main/resources/assets/visualoverhaul/models/block/phonos/jukebox_top_playing_4.json b/common/src/main/resources/assets/visualoverhaul/models/fakeblock/phonos/jukebox_top_playing_4.json similarity index 100% rename from common/src/main/resources/assets/visualoverhaul/models/block/phonos/jukebox_top_playing_4.json rename to common/src/main/resources/assets/visualoverhaul/models/fakeblock/phonos/jukebox_top_playing_4.json diff --git a/common/src/main/resources/assets/visualoverhaul/models/block/phonos/jukebox_top_playing_5.json b/common/src/main/resources/assets/visualoverhaul/models/fakeblock/phonos/jukebox_top_playing_5.json similarity index 100% rename from common/src/main/resources/assets/visualoverhaul/models/block/phonos/jukebox_top_playing_5.json rename to common/src/main/resources/assets/visualoverhaul/models/fakeblock/phonos/jukebox_top_playing_5.json diff --git a/common/src/main/resources/assets/visualoverhaul/models/block/phonos/jukebox_top_playing_6.json b/common/src/main/resources/assets/visualoverhaul/models/fakeblock/phonos/jukebox_top_playing_6.json similarity index 100% rename from common/src/main/resources/assets/visualoverhaul/models/block/phonos/jukebox_top_playing_6.json rename to common/src/main/resources/assets/visualoverhaul/models/fakeblock/phonos/jukebox_top_playing_6.json diff --git a/common/src/main/resources/assets/visualoverhaul/models/block/phonos/jukebox_top_playing_7.json b/common/src/main/resources/assets/visualoverhaul/models/fakeblock/phonos/jukebox_top_playing_7.json similarity index 100% rename from common/src/main/resources/assets/visualoverhaul/models/block/phonos/jukebox_top_playing_7.json rename to common/src/main/resources/assets/visualoverhaul/models/fakeblock/phonos/jukebox_top_playing_7.json diff --git a/common/src/main/resources/assets/visualoverhaul/models/block/phonos/jukebox_top_playing_8.json b/common/src/main/resources/assets/visualoverhaul/models/fakeblock/phonos/jukebox_top_playing_8.json similarity index 100% rename from common/src/main/resources/assets/visualoverhaul/models/block/phonos/jukebox_top_playing_8.json rename to common/src/main/resources/assets/visualoverhaul/models/fakeblock/phonos/jukebox_top_playing_8.json diff --git a/common/src/main/resources/assets/visualoverhaul/models/block/phonos/jukebox_top_playing_9.json b/common/src/main/resources/assets/visualoverhaul/models/fakeblock/phonos/jukebox_top_playing_9.json similarity index 100% rename from common/src/main/resources/assets/visualoverhaul/models/block/phonos/jukebox_top_playing_9.json rename to common/src/main/resources/assets/visualoverhaul/models/fakeblock/phonos/jukebox_top_playing_9.json diff --git a/common/src/main/resources/assets/visualoverhaul/models/block/phonos/jukebox_top_stopped_0.json b/common/src/main/resources/assets/visualoverhaul/models/fakeblock/phonos/jukebox_top_stopped_0.json similarity index 100% rename from common/src/main/resources/assets/visualoverhaul/models/block/phonos/jukebox_top_stopped_0.json rename to common/src/main/resources/assets/visualoverhaul/models/fakeblock/phonos/jukebox_top_stopped_0.json diff --git a/common/src/main/resources/assets/visualoverhaul/models/block/phonos/jukebox_top_stopped_1.json b/common/src/main/resources/assets/visualoverhaul/models/fakeblock/phonos/jukebox_top_stopped_1.json similarity index 100% rename from common/src/main/resources/assets/visualoverhaul/models/block/phonos/jukebox_top_stopped_1.json rename to common/src/main/resources/assets/visualoverhaul/models/fakeblock/phonos/jukebox_top_stopped_1.json diff --git a/common/src/main/resources/assets/visualoverhaul/models/block/phonos/jukebox_top_stopped_10.json b/common/src/main/resources/assets/visualoverhaul/models/fakeblock/phonos/jukebox_top_stopped_10.json similarity index 100% rename from common/src/main/resources/assets/visualoverhaul/models/block/phonos/jukebox_top_stopped_10.json rename to common/src/main/resources/assets/visualoverhaul/models/fakeblock/phonos/jukebox_top_stopped_10.json diff --git a/common/src/main/resources/assets/visualoverhaul/models/block/phonos/jukebox_top_stopped_11.json b/common/src/main/resources/assets/visualoverhaul/models/fakeblock/phonos/jukebox_top_stopped_11.json similarity index 100% rename from common/src/main/resources/assets/visualoverhaul/models/block/phonos/jukebox_top_stopped_11.json rename to common/src/main/resources/assets/visualoverhaul/models/fakeblock/phonos/jukebox_top_stopped_11.json diff --git a/common/src/main/resources/assets/visualoverhaul/models/block/phonos/jukebox_top_stopped_12.json b/common/src/main/resources/assets/visualoverhaul/models/fakeblock/phonos/jukebox_top_stopped_12.json similarity index 100% rename from common/src/main/resources/assets/visualoverhaul/models/block/phonos/jukebox_top_stopped_12.json rename to common/src/main/resources/assets/visualoverhaul/models/fakeblock/phonos/jukebox_top_stopped_12.json diff --git a/common/src/main/resources/assets/visualoverhaul/models/block/phonos/jukebox_top_stopped_13.json b/common/src/main/resources/assets/visualoverhaul/models/fakeblock/phonos/jukebox_top_stopped_13.json similarity index 100% rename from common/src/main/resources/assets/visualoverhaul/models/block/phonos/jukebox_top_stopped_13.json rename to common/src/main/resources/assets/visualoverhaul/models/fakeblock/phonos/jukebox_top_stopped_13.json diff --git a/common/src/main/resources/assets/visualoverhaul/models/block/phonos/jukebox_top_stopped_14.json b/common/src/main/resources/assets/visualoverhaul/models/fakeblock/phonos/jukebox_top_stopped_14.json similarity index 100% rename from common/src/main/resources/assets/visualoverhaul/models/block/phonos/jukebox_top_stopped_14.json rename to common/src/main/resources/assets/visualoverhaul/models/fakeblock/phonos/jukebox_top_stopped_14.json diff --git a/common/src/main/resources/assets/visualoverhaul/models/block/phonos/jukebox_top_stopped_15.json b/common/src/main/resources/assets/visualoverhaul/models/fakeblock/phonos/jukebox_top_stopped_15.json similarity index 100% rename from common/src/main/resources/assets/visualoverhaul/models/block/phonos/jukebox_top_stopped_15.json rename to common/src/main/resources/assets/visualoverhaul/models/fakeblock/phonos/jukebox_top_stopped_15.json diff --git a/common/src/main/resources/assets/visualoverhaul/models/block/phonos/jukebox_top_stopped_16.json b/common/src/main/resources/assets/visualoverhaul/models/fakeblock/phonos/jukebox_top_stopped_16.json similarity index 100% rename from common/src/main/resources/assets/visualoverhaul/models/block/phonos/jukebox_top_stopped_16.json rename to common/src/main/resources/assets/visualoverhaul/models/fakeblock/phonos/jukebox_top_stopped_16.json diff --git a/common/src/main/resources/assets/visualoverhaul/models/block/phonos/jukebox_top_stopped_17.json b/common/src/main/resources/assets/visualoverhaul/models/fakeblock/phonos/jukebox_top_stopped_17.json similarity index 100% rename from common/src/main/resources/assets/visualoverhaul/models/block/phonos/jukebox_top_stopped_17.json rename to common/src/main/resources/assets/visualoverhaul/models/fakeblock/phonos/jukebox_top_stopped_17.json diff --git a/common/src/main/resources/assets/visualoverhaul/models/block/phonos/jukebox_top_stopped_18.json b/common/src/main/resources/assets/visualoverhaul/models/fakeblock/phonos/jukebox_top_stopped_18.json similarity index 100% rename from common/src/main/resources/assets/visualoverhaul/models/block/phonos/jukebox_top_stopped_18.json rename to common/src/main/resources/assets/visualoverhaul/models/fakeblock/phonos/jukebox_top_stopped_18.json diff --git a/common/src/main/resources/assets/visualoverhaul/models/block/phonos/jukebox_top_stopped_19.json b/common/src/main/resources/assets/visualoverhaul/models/fakeblock/phonos/jukebox_top_stopped_19.json similarity index 100% rename from common/src/main/resources/assets/visualoverhaul/models/block/phonos/jukebox_top_stopped_19.json rename to common/src/main/resources/assets/visualoverhaul/models/fakeblock/phonos/jukebox_top_stopped_19.json diff --git a/common/src/main/resources/assets/visualoverhaul/models/block/phonos/jukebox_top_stopped_2.json b/common/src/main/resources/assets/visualoverhaul/models/fakeblock/phonos/jukebox_top_stopped_2.json similarity index 100% rename from common/src/main/resources/assets/visualoverhaul/models/block/phonos/jukebox_top_stopped_2.json rename to common/src/main/resources/assets/visualoverhaul/models/fakeblock/phonos/jukebox_top_stopped_2.json diff --git a/common/src/main/resources/assets/visualoverhaul/models/block/phonos/jukebox_top_stopped_3.json b/common/src/main/resources/assets/visualoverhaul/models/fakeblock/phonos/jukebox_top_stopped_3.json similarity index 100% rename from common/src/main/resources/assets/visualoverhaul/models/block/phonos/jukebox_top_stopped_3.json rename to common/src/main/resources/assets/visualoverhaul/models/fakeblock/phonos/jukebox_top_stopped_3.json diff --git a/common/src/main/resources/assets/visualoverhaul/models/block/phonos/jukebox_top_stopped_4.json b/common/src/main/resources/assets/visualoverhaul/models/fakeblock/phonos/jukebox_top_stopped_4.json similarity index 100% rename from common/src/main/resources/assets/visualoverhaul/models/block/phonos/jukebox_top_stopped_4.json rename to common/src/main/resources/assets/visualoverhaul/models/fakeblock/phonos/jukebox_top_stopped_4.json diff --git a/common/src/main/resources/assets/visualoverhaul/models/block/phonos/jukebox_top_stopped_5.json b/common/src/main/resources/assets/visualoverhaul/models/fakeblock/phonos/jukebox_top_stopped_5.json similarity index 100% rename from common/src/main/resources/assets/visualoverhaul/models/block/phonos/jukebox_top_stopped_5.json rename to common/src/main/resources/assets/visualoverhaul/models/fakeblock/phonos/jukebox_top_stopped_5.json diff --git a/common/src/main/resources/assets/visualoverhaul/models/block/phonos/jukebox_top_stopped_6.json b/common/src/main/resources/assets/visualoverhaul/models/fakeblock/phonos/jukebox_top_stopped_6.json similarity index 100% rename from common/src/main/resources/assets/visualoverhaul/models/block/phonos/jukebox_top_stopped_6.json rename to common/src/main/resources/assets/visualoverhaul/models/fakeblock/phonos/jukebox_top_stopped_6.json diff --git a/common/src/main/resources/assets/visualoverhaul/models/block/phonos/jukebox_top_stopped_7.json b/common/src/main/resources/assets/visualoverhaul/models/fakeblock/phonos/jukebox_top_stopped_7.json similarity index 100% rename from common/src/main/resources/assets/visualoverhaul/models/block/phonos/jukebox_top_stopped_7.json rename to common/src/main/resources/assets/visualoverhaul/models/fakeblock/phonos/jukebox_top_stopped_7.json diff --git a/common/src/main/resources/assets/visualoverhaul/models/block/phonos/jukebox_top_stopped_8.json b/common/src/main/resources/assets/visualoverhaul/models/fakeblock/phonos/jukebox_top_stopped_8.json similarity index 100% rename from common/src/main/resources/assets/visualoverhaul/models/block/phonos/jukebox_top_stopped_8.json rename to common/src/main/resources/assets/visualoverhaul/models/fakeblock/phonos/jukebox_top_stopped_8.json diff --git a/common/src/main/resources/assets/visualoverhaul/models/block/phonos/jukebox_top_stopped_9.json b/common/src/main/resources/assets/visualoverhaul/models/fakeblock/phonos/jukebox_top_stopped_9.json similarity index 100% rename from common/src/main/resources/assets/visualoverhaul/models/block/phonos/jukebox_top_stopped_9.json rename to common/src/main/resources/assets/visualoverhaul/models/fakeblock/phonos/jukebox_top_stopped_9.json diff --git a/fabric/src/main/java/eu/midnightdust/visualoverhaul/fabric/VisualOverhaulClientFabric.java b/fabric/src/main/java/eu/midnightdust/visualoverhaul/fabric/VisualOverhaulClientFabric.java index 495240f..a498e69 100644 --- a/fabric/src/main/java/eu/midnightdust/visualoverhaul/fabric/VisualOverhaulClientFabric.java +++ b/fabric/src/main/java/eu/midnightdust/visualoverhaul/fabric/VisualOverhaulClientFabric.java @@ -1,8 +1,8 @@ package eu.midnightdust.visualoverhaul.fabric; +import eu.midnightdust.visualoverhaul.FakeBlocks; import eu.midnightdust.visualoverhaul.IconicButtons; import eu.midnightdust.visualoverhaul.VisualOverhaulClient; -import eu.midnightdust.visualoverhaul.block.JukeboxTop; import eu.midnightdust.visualoverhaul.block.model.FurnaceWoodenPlanksModel; import eu.midnightdust.visualoverhaul.block.renderer.BrewingStandBlockEntityRenderer; import eu.midnightdust.visualoverhaul.block.renderer.FurnaceBlockEntityRenderer; @@ -14,7 +14,6 @@ import eu.midnightdust.visualoverhaul.util.VOColorUtil; import net.fabricmc.api.ClientModInitializer; import net.fabricmc.fabric.api.blockrenderlayer.v1.BlockRenderLayerMap; import net.fabricmc.fabric.api.client.event.lifecycle.v1.ClientTickEvents; -import net.fabricmc.fabric.api.client.model.loading.v1.ModelModifier; import net.fabricmc.fabric.api.client.networking.v1.ClientPlayConnectionEvents; import net.fabricmc.fabric.api.client.networking.v1.ClientPlayNetworking; import net.fabricmc.fabric.api.client.rendering.v1.ColorProviderRegistry; @@ -28,17 +27,8 @@ import net.minecraft.block.entity.AbstractFurnaceBlockEntity; import net.minecraft.block.entity.BlockEntityType; import net.minecraft.block.entity.BrewingStandBlockEntity; import net.minecraft.client.color.world.BiomeColors; -import net.minecraft.client.data.ModelProvider; -import net.minecraft.client.data.Models; -import net.minecraft.client.model.Model; -import net.minecraft.client.model.ModelData; import net.minecraft.client.render.RenderLayer; import net.minecraft.client.render.block.entity.BlockEntityRendererFactories; -import net.minecraft.component.DataComponentTypes; -import net.minecraft.item.Items; -import net.minecraft.potion.Potions; -import net.minecraft.registry.Registries; -import net.minecraft.registry.Registry; import net.minecraft.resource.ResourceManager; import net.minecraft.resource.ResourceType; import net.minecraft.util.Identifier; @@ -51,14 +41,10 @@ public class VisualOverhaulClientFabric implements ClientModInitializer { @Override public void onInitializeClient() { VisualOverhaulClient.onInitializeClient(); - JukeBoxTop = new JukeboxTop(); - // Block only registered on client, because it's just used for the renderer // - Registry.register(Registries.BLOCK, id("jukebox_top"), JukeBoxTop); EntityModelLayerRegistry.registerModelLayer(FurnaceWoodenPlanksModel.WOODEN_PLANKS_MODEL_LAYER, FurnaceWoodenPlanksModel::getTexturedModelData); BlockRenderLayerMap.INSTANCE.putBlock(Blocks.JUKEBOX, RenderLayer.getCutout()); - BlockRenderLayerMap.INSTANCE.putBlock(JukeBoxTop, RenderLayer.getCutout()); BlockRenderLayerMap.INSTANCE.putBlock(Blocks.FURNACE, RenderLayer.getCutout()); BlockRenderLayerMap.INSTANCE.putBlock(Blocks.SMOKER, RenderLayer.getCutout()); BlockRenderLayerMap.INSTANCE.putBlock(Blocks.BLAST_FURNACE, RenderLayer.getCutout()); @@ -131,6 +117,7 @@ public class VisualOverhaulClientFabric implements ClientModInitializer { @Override public void reload(ResourceManager manager) { IconicButtons.reload(manager); + FakeBlocks.reload(manager); } }); } diff --git a/neoforge/src/main/java/eu/midnightdust/visualoverhaul/neoforge/VisualOverhaulClientEvents.java b/neoforge/src/main/java/eu/midnightdust/visualoverhaul/neoforge/VisualOverhaulClientEvents.java index a4173e2..02e489c 100644 --- a/neoforge/src/main/java/eu/midnightdust/visualoverhaul/neoforge/VisualOverhaulClientEvents.java +++ b/neoforge/src/main/java/eu/midnightdust/visualoverhaul/neoforge/VisualOverhaulClientEvents.java @@ -1,5 +1,6 @@ package eu.midnightdust.visualoverhaul.neoforge; +import eu.midnightdust.visualoverhaul.FakeBlocks; import eu.midnightdust.visualoverhaul.IconicButtons; import eu.midnightdust.visualoverhaul.block.model.FurnaceWoodenPlanksModel; import eu.midnightdust.visualoverhaul.block.renderer.BrewingStandBlockEntityRenderer; @@ -49,6 +50,7 @@ public class VisualOverhaulClientEvents { @Override public void reload(ResourceManager manager) { IconicButtons.reload(manager); + FakeBlocks.reload(manager); } } @SubscribeEvent diff --git a/neoforge/src/main/java/eu/midnightdust/visualoverhaul/neoforge/VisualOverhaulClientForge.java b/neoforge/src/main/java/eu/midnightdust/visualoverhaul/neoforge/VisualOverhaulClientForge.java index f46cec4..39f3c81 100644 --- a/neoforge/src/main/java/eu/midnightdust/visualoverhaul/neoforge/VisualOverhaulClientForge.java +++ b/neoforge/src/main/java/eu/midnightdust/visualoverhaul/neoforge/VisualOverhaulClientForge.java @@ -1,7 +1,6 @@ package eu.midnightdust.visualoverhaul.neoforge; import eu.midnightdust.visualoverhaul.VisualOverhaulClient; -import eu.midnightdust.visualoverhaul.block.JukeboxTop; import eu.midnightdust.visualoverhaul.config.VOConfig; import eu.midnightdust.visualoverhaul.util.VOColorUtil; import net.minecraft.block.Block; @@ -12,14 +11,12 @@ import net.minecraft.client.render.RenderLayer; import net.minecraft.client.render.RenderLayers; import net.minecraft.registry.Registries; import net.minecraft.resource.ResourcePackProfile; -import net.neoforged.fml.ModLoadingContext; import net.neoforged.neoforge.client.event.ClientTickEvent; import net.neoforged.neoforge.common.NeoForge; import net.neoforged.neoforge.registries.DeferredRegister; import org.apache.commons.compress.utils.Lists; import java.util.List; -import java.util.Objects; import static eu.midnightdust.visualoverhaul.VisualOverhaulClient.*; import static eu.midnightdust.visualoverhaul.VisualOverhaulCommon.*; @@ -32,12 +29,6 @@ public class VisualOverhaulClientForge { public static void initClient() { VisualOverhaulClient.onInitializeClient(); - // Block only registered on client, because it's just used for the renderer // - BLOCKS.register(Objects.requireNonNull(ModLoadingContext.get().getActiveContainer().getEventBus())); - BLOCKS.register("jukebox_top", () -> { - VisualOverhaulClient.JukeBoxTop = new JukeboxTop(); - return VisualOverhaulClient.JukeBoxTop; - }); NeoForge.EVENT_BUS.addListener(VisualOverhaulClientForge::doClientTick); RenderLayers.setRenderLayer(Blocks.JUKEBOX, RenderLayer.getCutout());