mirror of
https://github.com/Creators-of-Create/Create.git
synced 2025-03-04 06:44:40 +01:00
Ancient todo
This commit is contained in:
parent
658225e318
commit
bbdb627a16
1 changed files with 20 additions and 8 deletions
|
@ -16,7 +16,6 @@ import com.simibubi.create.foundation.model.BakedModelWrapperWithData;
|
|||
|
||||
import net.createmod.catnip.data.Iterate;
|
||||
import net.minecraft.client.Minecraft;
|
||||
import net.minecraft.client.renderer.ItemBlockRenderTypes;
|
||||
import net.minecraft.client.renderer.RenderType;
|
||||
import net.minecraft.client.renderer.block.model.BakedQuad;
|
||||
import net.minecraft.client.resources.model.BakedModel;
|
||||
|
@ -25,6 +24,7 @@ import net.minecraft.core.Direction;
|
|||
import net.minecraft.util.RandomSource;
|
||||
import net.minecraft.world.level.BlockAndTintGetter;
|
||||
import net.minecraft.world.level.block.state.BlockState;
|
||||
|
||||
import net.minecraftforge.client.ChunkRenderTypeSet;
|
||||
import net.minecraftforge.client.model.data.ModelData;
|
||||
import net.minecraftforge.client.model.data.ModelData.Builder;
|
||||
|
@ -50,7 +50,7 @@ public class PipeAttachmentModel extends BakedModelWrapperWithData {
|
|||
|
||||
@Override
|
||||
protected ModelData.Builder gatherModelData(Builder builder, BlockAndTintGetter world, BlockPos pos, BlockState state,
|
||||
ModelData blockEntityData) {
|
||||
ModelData blockEntityData) {
|
||||
PipeModelData data = new PipeModelData();
|
||||
FluidTransportBehaviour transport = BlockEntityBehaviour.get(world, pos, FluidTransportBehaviour.TYPE);
|
||||
BracketedBlockEntityBehaviour bracket = BlockEntityBehaviour.get(world, pos, BracketedBlockEntityBehaviour.TYPE);
|
||||
|
@ -65,14 +65,26 @@ public class PipeAttachmentModel extends BakedModelWrapperWithData {
|
|||
return builder.with(PIPE_PROPERTY, data);
|
||||
}
|
||||
|
||||
// TODO: Update once MinecraftForge#9163 is merged
|
||||
@Override
|
||||
public ChunkRenderTypeSet getRenderTypes(@NotNull BlockState state, @NotNull RandomSource rand, @NotNull ModelData data) {
|
||||
ChunkRenderTypeSet set = super.getRenderTypes(state, rand, data);
|
||||
if (set.isEmpty()) {
|
||||
return ItemBlockRenderTypes.getRenderLayers(state);
|
||||
List<ChunkRenderTypeSet> set = new ArrayList<>();
|
||||
|
||||
set.add(super.getRenderTypes(state, rand, data));
|
||||
set.add(AllPartialModels.FLUID_PIPE_CASING.get().getRenderTypes(state, rand, data));
|
||||
|
||||
if (data.has(PIPE_PROPERTY)) {
|
||||
PipeModelData pipeData = data.get(PIPE_PROPERTY);
|
||||
for (Direction d : Iterate.directions) {
|
||||
AttachmentTypes type = pipeData.getAttachment(d);
|
||||
for (ComponentPartials partial : type.partials) {
|
||||
ChunkRenderTypeSet attachmentRenderTypeSet = AllPartialModels.PIPE_ATTACHMENTS.get(partial).get(d)
|
||||
.get().getRenderTypes(state, rand, data);
|
||||
set.add(attachmentRenderTypeSet);
|
||||
}
|
||||
}
|
||||
}
|
||||
return set;
|
||||
|
||||
return ChunkRenderTypeSet.union(set);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -102,7 +114,7 @@ public class PipeAttachmentModel extends BakedModelWrapperWithData {
|
|||
}
|
||||
|
||||
private void addQuads(List<BakedQuad> quads, BlockState state, Direction side, RandomSource rand, ModelData data,
|
||||
PipeModelData pipeData, RenderType renderType) {
|
||||
PipeModelData pipeData, RenderType renderType) {
|
||||
BakedModel bracket = pipeData.getBracket();
|
||||
if (bracket != null)
|
||||
quads.addAll(bracket.getQuads(state, side, rand, data, renderType));
|
||||
|
|
Loading…
Add table
Reference in a new issue