*Cubozoa* Model
This commit is contained in:
parent
9372ecf28f
commit
d8383121e3
3 changed files with 118 additions and 64 deletions
|
@ -2,11 +2,16 @@ package ru.betterend.registry;
|
|||
|
||||
import java.util.function.Function;
|
||||
|
||||
import net.fabricmc.fabric.api.client.rendereregistry.v1.EntityModelLayerRegistry;
|
||||
import net.fabricmc.fabric.api.client.rendereregistry.v1.EntityRendererRegistry;
|
||||
import net.minecraft.client.model.geom.ModelLayerLocation;
|
||||
import net.minecraft.client.renderer.entity.EntityRenderDispatcher;
|
||||
import net.minecraft.client.renderer.entity.MobRenderer;
|
||||
import net.minecraft.resources.ResourceLocation;
|
||||
import net.minecraft.world.entity.EntityType;
|
||||
import ru.betterend.entity.render.RendererEntityCubozoa;
|
||||
import ru.betterend.BetterEnd;
|
||||
import ru.betterend.entity.model.CubozoaEntityModel;
|
||||
import ru.betterend.entity.model.RendererEntityCubozoa;
|
||||
import ru.betterend.entity.render.RendererEntityDragonfly;
|
||||
import ru.betterend.entity.render.RendererEntityEndFish;
|
||||
import ru.betterend.entity.render.RendererEntityEndSlime;
|
||||
|
@ -14,19 +19,33 @@ import ru.betterend.entity.render.RendererEntityShadowWalker;
|
|||
import ru.betterend.entity.render.SilkMothEntityRenderer;
|
||||
|
||||
public class EndEntitiesRenders {
|
||||
public static final ModelLayerLocation DRAGONFLY_MODEL = registerMain("dragonfly");
|
||||
|
||||
public static void register() {
|
||||
register(EndEntities.DRAGONFLY, RendererEntityDragonfly::new);
|
||||
register(EndEntities.END_SLIME, RendererEntityEndSlime::new);
|
||||
register(EndEntities.END_FISH, RendererEntityEndFish::new);
|
||||
register(EndEntities.SHADOW_WALKER, RendererEntityShadowWalker::new);
|
||||
register(EndEntities.CUBOZOA, RendererEntityCubozoa::new);
|
||||
register(EndEntities.SILK_MOTH, SilkMothEntityRenderer::new);
|
||||
register(EndEntities.DRAGONFLY, RendererEntityDragonfly.class);
|
||||
register(EndEntities.END_SLIME, RendererEntityEndSlime.class);
|
||||
register(EndEntities.END_FISH, RendererEntityEndFish.class);
|
||||
register(EndEntities.SHADOW_WALKER, RendererEntityShadowWalker.class);
|
||||
register(EndEntities.CUBOZOA, RendererEntityCubozoa.class);
|
||||
register(EndEntities.SILK_MOTH, SilkMothEntityRenderer.class);
|
||||
|
||||
EntityModelLayerRegistry.registerModelLayer(DRAGONFLY_MODEL, CubozoaEntityModel::getTexturedModelData);
|
||||
}
|
||||
|
||||
private static void register(EntityType<?> type, Function<EntityRenderDispatcher, MobRenderer<?, ?>> render) {
|
||||
EntityRendererRegistry.INSTANCE.register(type, (entityRenderDispatcher, context) -> {
|
||||
return render.apply(entityRenderDispatcher);
|
||||
|
||||
private static void register(EntityType<?> type, Class<? extends MobRenderer<?, ?>> renderer) {
|
||||
EntityRendererRegistry.INSTANCE.register(type, (context) -> {
|
||||
MobRenderer render = null;
|
||||
try {
|
||||
render = renderer.getConstructor(context.getClass()).newInstance(context);
|
||||
}
|
||||
catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
return render;
|
||||
});
|
||||
}
|
||||
|
||||
private static ModelLayerLocation registerMain(String id){
|
||||
return new ModelLayerLocation(new ResourceLocation(BetterEnd.MOD_ID, id), "main");
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue