Merge pull request #207 from Walaryne/1.17

Fixes #205
This commit is contained in:
CreepyCre 2021-06-17 14:02:19 +02:00 committed by GitHub
commit f5e8b28b59
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 18 additions and 3 deletions

View file

@ -1,5 +1,7 @@
package org.dimdev.dimdoors.client;
import net.fabricmc.api.EnvType;
import net.fabricmc.api.Environment;
import net.fabricmc.fabric.api.client.rendering.v1.BuiltinItemRendererRegistry;
import net.minecraft.client.MinecraftClient;
import net.minecraft.client.render.VertexConsumerProvider;
@ -8,11 +10,16 @@ import net.minecraft.client.render.model.json.ModelTransformation;
import net.minecraft.client.util.math.MatrixStack;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.item.Items;
import org.dimdev.dimdoors.item.DimensionalDoorItemRegistrar;
@Environment(EnvType.CLIENT)
public class UnderlaidChildItemRenderer implements BuiltinItemRendererRegistry.DynamicItemRenderer {
private final ItemStack underlay;
//Dirty hack? IDK this is the only instance of the class, fix later?
public final static UnderlaidChildItemRenderer RENDERER = new UnderlaidChildItemRenderer(Items.ENDER_PEARL);
private final ItemStack underlay;
public UnderlaidChildItemRenderer(Item underlay) {
this.underlay = new ItemStack(underlay);
}

View file

@ -2,6 +2,8 @@ package org.dimdev.dimdoors.fluid;
import java.util.function.Function;
import net.fabricmc.api.EnvType;
import net.fabricmc.api.Environment;
import net.minecraft.client.MinecraftClient;
import net.minecraft.client.texture.Sprite;
import net.minecraft.fluid.FlowableFluid;
@ -36,6 +38,7 @@ public class ModFluids {
setupFluidRendering(ModFluids.ETERNAL_FLUID, ModFluids.FLOWING_ETERNAL_FLUID, new Identifier("dimdoors:eternal_fluid"));
}
@Environment(EnvType.CLIENT)
private static void setupFluidRendering(Fluid still, Fluid flowing, final Identifier textureFluidId) {
final Identifier stillSpriteId = new Identifier(textureFluidId.getNamespace(), "block/" + textureFluidId.getPath() + "_still");
final Identifier flowingSpriteId = new Identifier(textureFluidId.getNamespace(), "block/" + textureFluidId.getPath() + "_flow");

View file

@ -1,6 +1,7 @@
package org.dimdev.dimdoors.item;
import net.fabricmc.api.EnvType;
import net.fabricmc.api.Environment;
import net.fabricmc.fabric.api.client.rendering.v1.BuiltinItemRendererRegistry;
import net.fabricmc.fabric.api.event.registry.RegistryEntryAddedCallback;
@ -39,7 +40,6 @@ import java.util.function.Function;
public class DimensionalDoorItemRegistrar {
public static final String PREFIX = "item_ag_dim_";
private static final UnderlaidChildItemRenderer renderer = new UnderlaidChildItemRenderer(Items.ENDER_PEARL);
private final Registry<Item> registry;
@ -118,10 +118,15 @@ public class DimensionalDoorItemRegistrar {
}
placementFunctions.put(original, dimItem::place);
if (FabricLoader.getInstance().getEnvironmentType() == EnvType.CLIENT) {
BuiltinItemRendererRegistry.INSTANCE.register(dimItem, renderer);
registerItemRenderer(dimItem);
}
}
@Environment(EnvType.CLIENT)
private void registerItemRenderer(BlockItem dimItem) {
BuiltinItemRendererRegistry.INSTANCE.register(dimItem, UnderlaidChildItemRenderer.RENDERER);
}
private static class AutoGenDimensionalDoorItem extends DimensionalDoorItem implements ChildItem {
private final Item originalItem;