Fix render pkg
This commit is contained in:
@@ -1,19 +0,0 @@
|
||||
package com.raoulvdberge.refinedstorage.render.meshdefinition;
|
||||
|
||||
import com.raoulvdberge.refinedstorage.RS;
|
||||
import com.raoulvdberge.refinedstorage.block.enums.ControllerEnergyType;
|
||||
import com.raoulvdberge.refinedstorage.block.enums.ControllerType;
|
||||
import com.raoulvdberge.refinedstorage.item.itemblock.ItemBlockController;
|
||||
import com.raoulvdberge.refinedstorage.tile.TileController;
|
||||
import net.minecraft.client.renderer.ItemMeshDefinition;
|
||||
import net.minecraft.client.renderer.block.model.ModelResourceLocation;
|
||||
import net.minecraft.item.ItemStack;
|
||||
|
||||
public class ItemMeshDefinitionController implements ItemMeshDefinition {
|
||||
@Override
|
||||
public ModelResourceLocation getModelLocation(ItemStack stack) {
|
||||
ControllerEnergyType energyType = stack.getItemDamage() == ControllerType.CREATIVE.getId() ? ControllerEnergyType.ON : TileController.getEnergyType(ItemBlockController.getEnergyStored(stack), RS.INSTANCE.config.controllerCapacity);
|
||||
|
||||
return new ModelResourceLocation(RS.ID + ":controller", "energy_type=" + energyType);
|
||||
}
|
||||
}
|
@@ -1,70 +0,0 @@
|
||||
package com.raoulvdberge.refinedstorage.render.meshdefinition;
|
||||
|
||||
import com.raoulvdberge.refinedstorage.RS;
|
||||
import com.raoulvdberge.refinedstorage.api.storage.disk.IStorageDiskProvider;
|
||||
import com.raoulvdberge.refinedstorage.api.storage.disk.IStorageDiskSyncData;
|
||||
import com.raoulvdberge.refinedstorage.apiimpl.API;
|
||||
import com.raoulvdberge.refinedstorage.inventory.item.ItemHandlerBase;
|
||||
import com.raoulvdberge.refinedstorage.item.itemblock.ItemBlockPortableGrid;
|
||||
import com.raoulvdberge.refinedstorage.tile.grid.portable.IPortableGrid;
|
||||
import com.raoulvdberge.refinedstorage.tile.grid.portable.TilePortableGrid;
|
||||
import com.raoulvdberge.refinedstorage.util.StackUtils;
|
||||
import net.minecraft.client.renderer.ItemMeshDefinition;
|
||||
import net.minecraft.client.renderer.block.model.ModelResourceLocation;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraftforge.energy.CapabilityEnergy;
|
||||
|
||||
import java.util.UUID;
|
||||
|
||||
public class ItemMeshDefinitionPortableGrid implements ItemMeshDefinition {
|
||||
@Override
|
||||
public ModelResourceLocation getModelLocation(ItemStack stack) {
|
||||
ItemHandlerBase disk = new ItemHandlerBase(1);
|
||||
|
||||
if (stack.hasTagCompound()) {
|
||||
StackUtils.readItems(disk, 4, stack.getTagCompound());
|
||||
}
|
||||
|
||||
UUID diskId = disk.getStackInSlot(0).isEmpty() ? null : ((IStorageDiskProvider) disk.getStackInSlot(0).getItem()).getId(disk.getStackInSlot(0));
|
||||
|
||||
IPortableGrid.IPortableGridRenderInfo renderInfo = new IPortableGrid.IPortableGridRenderInfo() {
|
||||
@Override
|
||||
public int getStored() {
|
||||
if (diskId == null) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
API.instance().getStorageDiskSync().sendRequest(diskId);
|
||||
|
||||
IStorageDiskSyncData data = API.instance().getStorageDiskSync().getData(diskId);
|
||||
|
||||
return data == null ? 0 : data.getStored();
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getCapacity() {
|
||||
if (diskId == null) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
API.instance().getStorageDiskSync().sendRequest(diskId);
|
||||
|
||||
IStorageDiskSyncData data = API.instance().getStorageDiskSync().getData(diskId);
|
||||
|
||||
return data == null ? 0 : data.getCapacity();
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasStorage() {
|
||||
return diskId != null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isActive() {
|
||||
return (stack.getCapability(CapabilityEnergy.ENERGY, null).getEnergyStored() > 0 || stack.getMetadata() == ItemBlockPortableGrid.TYPE_CREATIVE) && hasStorage();
|
||||
}
|
||||
};
|
||||
|
||||
return new ModelResourceLocation(RS.ID + ":portable_grid", "connected=" + Boolean.toString(renderInfo.isActive()) + ",direction=north,disk_state=" + TilePortableGrid.getDiskState(renderInfo));
|
||||
}
|
||||
}
|
@@ -2,24 +2,39 @@ package com.raoulvdberge.refinedstorage.render.model;
|
||||
|
||||
import com.raoulvdberge.refinedstorage.apiimpl.network.node.cover.CoverType;
|
||||
import com.raoulvdberge.refinedstorage.render.model.baked.BakedModelCover;
|
||||
import net.minecraft.client.renderer.block.model.IBakedModel;
|
||||
import net.minecraft.client.renderer.texture.TextureAtlasSprite;
|
||||
import net.minecraft.client.renderer.model.IBakedModel;
|
||||
import net.minecraft.client.renderer.model.IUnbakedModel;
|
||||
import net.minecraft.client.renderer.model.ModelBakery;
|
||||
import net.minecraft.client.renderer.texture.ISprite;
|
||||
import net.minecraft.client.renderer.vertex.VertexFormat;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
import net.minecraftforge.client.model.IModel;
|
||||
import net.minecraftforge.common.model.IModelState;
|
||||
|
||||
import javax.annotation.Nullable;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collection;
|
||||
import java.util.Set;
|
||||
import java.util.function.Function;
|
||||
|
||||
public class ModelCover implements IModel {
|
||||
public class ModelCover implements IUnbakedModel {
|
||||
private CoverType coverType;
|
||||
|
||||
public ModelCover(CoverType coverType) {
|
||||
this.coverType = coverType;
|
||||
}
|
||||
|
||||
@Nullable
|
||||
@Override
|
||||
public IBakedModel bake(IModelState state, VertexFormat format, Function<ResourceLocation, TextureAtlasSprite> bakedTextureGetter) {
|
||||
public IBakedModel bake(ModelBakery bakery, Function spriteGetter, ISprite sprite, VertexFormat format) {
|
||||
return new BakedModelCover(null, coverType);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Collection<ResourceLocation> getDependencies() {
|
||||
return new ArrayList<>();
|
||||
}
|
||||
|
||||
@Override
|
||||
public Collection<ResourceLocation> getTextures(Function<ResourceLocation, IUnbakedModel> modelGetter, Set<String> missingTextureErrors) {
|
||||
return new ArrayList<>();
|
||||
}
|
||||
}
|
||||
|
@@ -1,22 +1,23 @@
|
||||
package com.raoulvdberge.refinedstorage.render.model;
|
||||
|
||||
import com.raoulvdberge.refinedstorage.RS;
|
||||
import com.raoulvdberge.refinedstorage.render.model.baked.BakedModelDiskDrive;
|
||||
import com.raoulvdberge.refinedstorage.render.model.baked.BakedModelFullbright;
|
||||
import net.minecraft.client.renderer.block.model.IBakedModel;
|
||||
import net.minecraft.client.renderer.texture.TextureAtlasSprite;
|
||||
import net.minecraft.client.renderer.model.IBakedModel;
|
||||
import net.minecraft.client.renderer.model.IUnbakedModel;
|
||||
import net.minecraft.client.renderer.model.ModelBakery;
|
||||
import net.minecraft.client.renderer.texture.ISprite;
|
||||
import net.minecraft.client.renderer.vertex.VertexFormat;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
import net.minecraftforge.client.model.IModel;
|
||||
import net.minecraftforge.client.model.ModelLoaderRegistry;
|
||||
import net.minecraftforge.common.model.IModelState;
|
||||
|
||||
import javax.annotation.Nullable;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
import java.util.function.Function;
|
||||
|
||||
public class ModelDiskDrive implements IModel {
|
||||
public class ModelDiskDrive implements IUnbakedModel {
|
||||
private static final ResourceLocation MODEL_BASE = new ResourceLocation(RS.ID + ":block/disk_drive");
|
||||
|
||||
private static final ResourceLocation MODEL_DISK = new ResourceLocation(RS.ID + ":block/disks/disk");
|
||||
@@ -38,7 +39,13 @@ public class ModelDiskDrive implements IModel {
|
||||
}
|
||||
|
||||
@Override
|
||||
public IBakedModel bake(IModelState state, VertexFormat format, Function<ResourceLocation, TextureAtlasSprite> bakedTextureGetter) {
|
||||
public Collection<ResourceLocation> getTextures(Function<ResourceLocation, IUnbakedModel> modelGetter, Set<String> missingTextureErrors) {
|
||||
return new ArrayList<>();
|
||||
}
|
||||
|
||||
@Nullable
|
||||
@Override
|
||||
public IBakedModel bake(ModelBakery bakery, Function spriteGetter, ISprite sprite, VertexFormat format) {
|
||||
IModel baseModel;
|
||||
IModel diskModel;
|
||||
IModel diskModelNearCapacity;
|
||||
@@ -54,13 +61,14 @@ public class ModelDiskDrive implements IModel {
|
||||
} catch (Exception e) {
|
||||
throw new Error("Unable to load disk drive models", e);
|
||||
}
|
||||
|
||||
/*
|
||||
return new BakedModelDiskDrive(
|
||||
baseModel.bake(state, format, bakedTextureGetter),
|
||||
new BakedModelFullbright(diskModel.bake(state, format, bakedTextureGetter), RS.ID + ":blocks/disks/leds").setCacheDisabled(),
|
||||
new BakedModelFullbright(diskModelNearCapacity.bake(state, format, bakedTextureGetter), RS.ID + ":blocks/disks/leds").setCacheDisabled(),
|
||||
new BakedModelFullbright(diskModelFull.bake(state, format, bakedTextureGetter), RS.ID + ":blocks/disks/leds").setCacheDisabled(),
|
||||
diskModelDisconnected.bake(state, format, bakedTextureGetter)
|
||||
);
|
||||
baseModel.bake(bakery, spriteGetter, sprite, format),
|
||||
new BakedModelFullbright(diskModel.bake(bakery, spriteGetter, sprite, format), RS.ID + ":blocks/disks/leds").setCacheDisabled(),
|
||||
new BakedModelFullbright(diskModelNearCapacity.bake(bakery, spriteGetter, sprite, format), RS.ID + ":blocks/disks/leds").setCacheDisabled(),
|
||||
new BakedModelFullbright(diskModelFull.bake(bakery, spriteGetter, sprite, format), RS.ID + ":blocks/disks/leds").setCacheDisabled(),
|
||||
diskModelDisconnected.bake(bakery, spriteGetter, sprite, format)
|
||||
);*/
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
@@ -1,23 +1,20 @@
|
||||
package com.raoulvdberge.refinedstorage.render.model;
|
||||
|
||||
import com.raoulvdberge.refinedstorage.RS;
|
||||
import com.raoulvdberge.refinedstorage.render.model.baked.BakedModelDiskManipulator;
|
||||
import com.raoulvdberge.refinedstorage.render.model.baked.BakedModelFullbright;
|
||||
import net.minecraft.client.renderer.block.model.IBakedModel;
|
||||
import net.minecraft.client.renderer.texture.TextureAtlasSprite;
|
||||
import net.minecraft.client.renderer.model.IBakedModel;
|
||||
import net.minecraft.client.renderer.model.IUnbakedModel;
|
||||
import net.minecraft.client.renderer.model.ModelBakery;
|
||||
import net.minecraft.client.renderer.texture.ISprite;
|
||||
import net.minecraft.client.renderer.vertex.VertexFormat;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
import net.minecraftforge.client.model.IModel;
|
||||
import net.minecraftforge.client.model.ModelLoaderRegistry;
|
||||
import net.minecraftforge.common.model.IModelState;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collection;
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
import javax.annotation.Nullable;
|
||||
import java.util.*;
|
||||
import java.util.function.Function;
|
||||
|
||||
public class ModelDiskManipulator implements IModel {
|
||||
public class ModelDiskManipulator implements IUnbakedModel {
|
||||
private static final ResourceLocation MODEL_BASE_CUTOUT = new ResourceLocation(RS.ID + ":block/cube_north_cutout");
|
||||
private static final ResourceLocation MODEL_BASE_CONNECTED = new ResourceLocation(RS.ID + ":block/disk_manipulator_connected");
|
||||
private static final ResourceLocation MODEL_BASE_DISCONNECTED = new ResourceLocation(RS.ID + ":block/disk_manipulator_disconnected");
|
||||
@@ -43,12 +40,13 @@ public class ModelDiskManipulator implements IModel {
|
||||
}
|
||||
|
||||
@Override
|
||||
public Collection<ResourceLocation> getTextures() {
|
||||
public Collection<ResourceLocation> getTextures(Function<ResourceLocation, IUnbakedModel> modelGetter, Set<String> missingTextureErrors) {
|
||||
return Collections.emptyList();
|
||||
}
|
||||
|
||||
@Nullable
|
||||
@Override
|
||||
public IBakedModel bake(IModelState state, VertexFormat format, Function<ResourceLocation, TextureAtlasSprite> bakedTextureGetter) {
|
||||
public IBakedModel bake(ModelBakery bakery, Function spriteGetter, ISprite sprite, VertexFormat format) {
|
||||
IModel baseModelConnected, baseModelDisconnected;
|
||||
IModel diskModel;
|
||||
IModel diskModelNearCapacity;
|
||||
@@ -65,14 +63,15 @@ public class ModelDiskManipulator implements IModel {
|
||||
} catch (Exception e) {
|
||||
throw new Error("Unable to load disk manipulator models", e);
|
||||
}
|
||||
|
||||
/*
|
||||
return new BakedModelDiskManipulator(
|
||||
new BakedModelFullbright(baseModelConnected.bake(state, format, bakedTextureGetter), RS.ID + ":blocks/disk_manipulator/cutouts/connected"),
|
||||
baseModelDisconnected.bake(state, format, bakedTextureGetter),
|
||||
new BakedModelFullbright(diskModel.bake(state, format, bakedTextureGetter), RS.ID + ":blocks/disks/leds").setCacheDisabled(),
|
||||
new BakedModelFullbright(diskModelNearCapacity.bake(state, format, bakedTextureGetter), RS.ID + ":blocks/disks/leds").setCacheDisabled(),
|
||||
new BakedModelFullbright(diskModelFull.bake(state, format, bakedTextureGetter), RS.ID + ":blocks/disks/leds").setCacheDisabled(),
|
||||
diskModelDisconnected.bake(state, format, bakedTextureGetter)
|
||||
);
|
||||
new BakedModelFullbright(baseModelConnected.bake(bakery, spriteGetter, sprite, format), RS.ID + ":blocks/disk_manipulator/cutouts/connected"),
|
||||
baseModelDisconnected.bake(bakery, spriteGetter, sprite, format),
|
||||
new BakedModelFullbright(diskModel.bake(bakery, spriteGetter, sprite, format), RS.ID + ":blocks/disks/leds").setCacheDisabled(),
|
||||
new BakedModelFullbright(diskModelNearCapacity.bake(bakery, spriteGetter, sprite, format), RS.ID + ":blocks/disks/leds").setCacheDisabled(),
|
||||
new BakedModelFullbright(diskModelFull.bake(bakery, spriteGetter, sprite, format), RS.ID + ":blocks/disks/leds").setCacheDisabled(),
|
||||
diskModelDisconnected.bake(bakery, spriteGetter, sprite, format)
|
||||
);*/
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
@@ -1,30 +1,6 @@
|
||||
package com.raoulvdberge.refinedstorage.render.model.baked;
|
||||
|
||||
import com.raoulvdberge.refinedstorage.RS;
|
||||
import com.raoulvdberge.refinedstorage.RSBlocks;
|
||||
import com.raoulvdberge.refinedstorage.apiimpl.network.node.cover.Cover;
|
||||
import com.raoulvdberge.refinedstorage.apiimpl.network.node.cover.CoverManager;
|
||||
import com.raoulvdberge.refinedstorage.block.BlockBase;
|
||||
import com.raoulvdberge.refinedstorage.block.BlockCable;
|
||||
import com.raoulvdberge.refinedstorage.render.CubeBuilder;
|
||||
import com.raoulvdberge.refinedstorage.render.constants.ConstantsCable;
|
||||
import com.raoulvdberge.refinedstorage.util.RenderUtils;
|
||||
import net.minecraft.block.BlockState;
|
||||
import net.minecraft.block.state.IBlockState;
|
||||
import net.minecraft.client.Minecraft;
|
||||
import net.minecraft.client.renderer.model.BakedQuad;
|
||||
import net.minecraft.client.renderer.model.IBakedModel;
|
||||
import net.minecraft.client.renderer.texture.TextureAtlasSprite;
|
||||
import net.minecraft.util.Direction;
|
||||
import net.minecraft.util.EnumFacing;
|
||||
import net.minecraft.util.math.AxisAlignedBB;
|
||||
import net.minecraftforge.common.property.IExtendedBlockState;
|
||||
import org.lwjgl.util.vector.Vector3f;
|
||||
|
||||
import javax.annotation.Nullable;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
/*
|
||||
public class BakedModelCableCover extends BakedModelDelegate {
|
||||
private static TextureAtlasSprite BORDER_SPRITE;
|
||||
|
||||
@@ -39,18 +15,18 @@ public class BakedModelCableCover extends BakedModelDelegate {
|
||||
if (state != null) {
|
||||
IExtendedBlockState extendedState = (IExtendedBlockState) state;
|
||||
|
||||
addCover(quads, extendedState.getValue(BlockCable.COVER_NORTH), EnumFacing.NORTH, side, rand, extendedState, true);
|
||||
addCover(quads, extendedState.getValue(BlockCable.COVER_SOUTH), EnumFacing.SOUTH, side, rand, extendedState, true);
|
||||
addCover(quads, extendedState.getValue(BlockCable.COVER_EAST), EnumFacing.EAST, side, rand, extendedState, true);
|
||||
addCover(quads, extendedState.getValue(BlockCable.COVER_WEST), EnumFacing.WEST, side, rand, extendedState, true);
|
||||
addCover(quads, extendedState.getValue(BlockCable.COVER_DOWN), EnumFacing.DOWN, side, rand, extendedState, true);
|
||||
addCover(quads, extendedState.getValue(BlockCable.COVER_UP), EnumFacing.UP, side, rand, extendedState, true);
|
||||
addCover(quads, extendedState.getValue(BlockCable.COVER_NORTH), Direction.NORTH, side, rand, extendedState, true);
|
||||
addCover(quads, extendedState.getValue(BlockCable.COVER_SOUTH), Direction.SOUTH, side, rand, extendedState, true);
|
||||
addCover(quads, extendedState.getValue(BlockCable.COVER_EAST), Direction.EAST, side, rand, extendedState, true);
|
||||
addCover(quads, extendedState.getValue(BlockCable.COVER_WEST), Direction.WEST, side, rand, extendedState, true);
|
||||
addCover(quads, extendedState.getValue(BlockCable.COVER_DOWN), Direction.DOWN, side, rand, extendedState, true);
|
||||
addCover(quads, extendedState.getValue(BlockCable.COVER_UP), Direction.UP, side, rand, extendedState, true);
|
||||
}
|
||||
|
||||
return quads;
|
||||
}
|
||||
|
||||
private static int getHollowCoverSize(@Nullable IBlockState state, EnumFacing coverSide) {
|
||||
private static int getHollowCoverSize(@Nullable BlockState state, Direction coverSide) {
|
||||
if (state == null) {
|
||||
return 6;
|
||||
}
|
||||
@@ -70,12 +46,12 @@ public class BakedModelCableCover extends BakedModelDelegate {
|
||||
return 6;
|
||||
}
|
||||
|
||||
protected static void addCover(List<BakedQuad> quads, @Nullable Cover cover, EnumFacing coverSide, EnumFacing side, long rand, @Nullable IExtendedBlockState state, boolean handle) {
|
||||
protected static void addCover(List<BakedQuad> quads, @Nullable Cover cover, Direction coverSide, Direction side, long rand, @Nullable IExtendedBlockState state, boolean handle) {
|
||||
if (cover == null) {
|
||||
return;
|
||||
}
|
||||
|
||||
IBlockState coverState = CoverManager.getBlockState(cover.getStack());
|
||||
BlockState coverState = CoverManager.getBlockState(cover.getStack());
|
||||
|
||||
if (coverState == null) {
|
||||
return;
|
||||
@@ -102,13 +78,13 @@ public class BakedModelCableCover extends BakedModelDelegate {
|
||||
}
|
||||
}
|
||||
|
||||
private static void addNormalCover(List<BakedQuad> quads, TextureAtlasSprite sprite, EnumFacing coverSide, boolean hasUp, boolean hasDown, boolean hasEast, boolean hasWest, boolean handle) {
|
||||
private static void addNormalCover(List<BakedQuad> quads, TextureAtlasSprite sprite, Direction coverSide, boolean hasUp, boolean hasDown, boolean hasEast, boolean hasWest, boolean handle) {
|
||||
AxisAlignedBB bounds = ConstantsCable.getCoverBounds(coverSide);
|
||||
|
||||
Vector3f from = new Vector3f((float) bounds.minX * 16, (float) bounds.minY * 16, (float) bounds.minZ * 16);
|
||||
Vector3f to = new Vector3f((float) bounds.maxX * 16, (float) bounds.maxY * 16, (float) bounds.maxZ * 16);
|
||||
|
||||
if (coverSide == EnumFacing.NORTH) {
|
||||
if (coverSide == Direction.NORTH) {
|
||||
if (hasWest) {
|
||||
from.setX(2);
|
||||
}
|
||||
@@ -116,7 +92,7 @@ public class BakedModelCableCover extends BakedModelDelegate {
|
||||
if (hasEast) {
|
||||
to.setX(14);
|
||||
}
|
||||
} else if (coverSide == EnumFacing.SOUTH) {
|
||||
} else if (coverSide == Direction.SOUTH) {
|
||||
if (hasWest) {
|
||||
from.setX(2);
|
||||
}
|
||||
@@ -126,7 +102,7 @@ public class BakedModelCableCover extends BakedModelDelegate {
|
||||
}
|
||||
}
|
||||
|
||||
if (coverSide.getAxis() != EnumFacing.Axis.Y) {
|
||||
if (coverSide.getAxis() != Direction.Axis.Y) {
|
||||
if (hasDown) {
|
||||
from.setY(2);
|
||||
}
|
||||
@@ -152,13 +128,13 @@ public class BakedModelCableCover extends BakedModelDelegate {
|
||||
}
|
||||
}
|
||||
|
||||
private static void addHollowCover(List<BakedQuad> quads, TextureAtlasSprite sprite, EnumFacing coverSide, boolean hasUp, boolean hasDown, boolean hasEast, boolean hasWest, int size) {
|
||||
private static void addHollowCover(List<BakedQuad> quads, TextureAtlasSprite sprite, Direction coverSide, boolean hasUp, boolean hasDown, boolean hasEast, boolean hasWest, int size) {
|
||||
AxisAlignedBB bounds = ConstantsCable.getCoverBounds(coverSide);
|
||||
|
||||
Vector3f from = new Vector3f((float) bounds.minX * 16, (float) bounds.minY * 16, (float) bounds.minZ * 16);
|
||||
Vector3f to = new Vector3f((float) bounds.maxX * 16, (float) bounds.maxY * 16, (float) bounds.maxZ * 16);
|
||||
|
||||
if (coverSide.getAxis() != EnumFacing.Axis.Y) {
|
||||
if (coverSide.getAxis() != Direction.Axis.Y) {
|
||||
if (hasDown) {
|
||||
from.setY(2);
|
||||
}
|
||||
@@ -169,7 +145,7 @@ public class BakedModelCableCover extends BakedModelDelegate {
|
||||
}
|
||||
|
||||
// Right
|
||||
if (coverSide == EnumFacing.NORTH) {
|
||||
if (coverSide == Direction.NORTH) {
|
||||
if (hasWest) {
|
||||
from.setX(2);
|
||||
} else {
|
||||
@@ -177,7 +153,7 @@ public class BakedModelCableCover extends BakedModelDelegate {
|
||||
}
|
||||
|
||||
to.setX(size);
|
||||
} else if (coverSide == EnumFacing.SOUTH) {
|
||||
} else if (coverSide == Direction.SOUTH) {
|
||||
if (hasEast) {
|
||||
to.setX(14);
|
||||
} else {
|
||||
@@ -185,13 +161,13 @@ public class BakedModelCableCover extends BakedModelDelegate {
|
||||
}
|
||||
|
||||
from.setX(16 - size);
|
||||
} else if (coverSide == EnumFacing.EAST) {
|
||||
} else if (coverSide == Direction.EAST) {
|
||||
from.setZ(0);
|
||||
to.setZ(size);
|
||||
} else if (coverSide == EnumFacing.WEST) {
|
||||
} else if (coverSide == Direction.WEST) {
|
||||
from.setZ(16 - size);
|
||||
to.setZ(16);
|
||||
} else if (coverSide == EnumFacing.DOWN || coverSide == EnumFacing.UP) {
|
||||
} else if (coverSide == Direction.DOWN || coverSide == Direction.UP) {
|
||||
from.setZ(16 - size);
|
||||
to.setZ(16);
|
||||
}
|
||||
@@ -204,7 +180,7 @@ public class BakedModelCableCover extends BakedModelDelegate {
|
||||
);
|
||||
|
||||
// Left
|
||||
if (coverSide == EnumFacing.NORTH) {
|
||||
if (coverSide == Direction.NORTH) {
|
||||
if (hasEast) {
|
||||
to.setX(14);
|
||||
} else {
|
||||
@@ -212,7 +188,7 @@ public class BakedModelCableCover extends BakedModelDelegate {
|
||||
}
|
||||
|
||||
from.setX(16 - size);
|
||||
} else if (coverSide == EnumFacing.SOUTH) {
|
||||
} else if (coverSide == Direction.SOUTH) {
|
||||
if (hasWest) {
|
||||
from.setX(2);
|
||||
} else {
|
||||
@@ -220,13 +196,13 @@ public class BakedModelCableCover extends BakedModelDelegate {
|
||||
}
|
||||
|
||||
to.setX(size);
|
||||
} else if (coverSide == EnumFacing.EAST) {
|
||||
} else if (coverSide == Direction.EAST) {
|
||||
from.setZ(16 - size);
|
||||
to.setZ(16);
|
||||
} else if (coverSide == EnumFacing.WEST) {
|
||||
} else if (coverSide == Direction.WEST) {
|
||||
from.setZ(0);
|
||||
to.setZ(size);
|
||||
} else if (coverSide == EnumFacing.DOWN || coverSide == EnumFacing.UP) {
|
||||
} else if (coverSide == Direction.DOWN || coverSide == Direction.UP) {
|
||||
from.setZ(0);
|
||||
to.setZ(size);
|
||||
}
|
||||
@@ -239,7 +215,7 @@ public class BakedModelCableCover extends BakedModelDelegate {
|
||||
);
|
||||
|
||||
// Bottom
|
||||
if (coverSide == EnumFacing.NORTH) {
|
||||
if (coverSide == Direction.NORTH) {
|
||||
from.setX(size);
|
||||
to.setX(16 - size);
|
||||
|
||||
@@ -250,7 +226,7 @@ public class BakedModelCableCover extends BakedModelDelegate {
|
||||
}
|
||||
|
||||
to.setY(size);
|
||||
} else if (coverSide == EnumFacing.SOUTH) {
|
||||
} else if (coverSide == Direction.SOUTH) {
|
||||
from.setX(size);
|
||||
to.setX(16 - size);
|
||||
|
||||
@@ -261,7 +237,7 @@ public class BakedModelCableCover extends BakedModelDelegate {
|
||||
}
|
||||
|
||||
to.setY(size);
|
||||
} else if (coverSide == EnumFacing.EAST) {
|
||||
} else if (coverSide == Direction.EAST) {
|
||||
from.setZ(size);
|
||||
to.setZ(16 - size);
|
||||
|
||||
@@ -272,7 +248,7 @@ public class BakedModelCableCover extends BakedModelDelegate {
|
||||
}
|
||||
|
||||
to.setY(size);
|
||||
} else if (coverSide == EnumFacing.WEST) {
|
||||
} else if (coverSide == Direction.WEST) {
|
||||
from.setZ(size);
|
||||
to.setZ(16 - size);
|
||||
|
||||
@@ -283,7 +259,7 @@ public class BakedModelCableCover extends BakedModelDelegate {
|
||||
}
|
||||
|
||||
to.setY(size);
|
||||
} else if (coverSide == EnumFacing.DOWN || coverSide == EnumFacing.UP) {
|
||||
} else if (coverSide == Direction.DOWN || coverSide == Direction.UP) {
|
||||
from.setZ(size);
|
||||
to.setZ(16 - size);
|
||||
|
||||
@@ -299,7 +275,7 @@ public class BakedModelCableCover extends BakedModelDelegate {
|
||||
);
|
||||
|
||||
// Up
|
||||
if (coverSide == EnumFacing.NORTH) {
|
||||
if (coverSide == Direction.NORTH) {
|
||||
from.setX(size);
|
||||
to.setX(16 - size);
|
||||
|
||||
@@ -310,7 +286,7 @@ public class BakedModelCableCover extends BakedModelDelegate {
|
||||
}
|
||||
|
||||
from.setY(16 - size);
|
||||
} else if (coverSide == EnumFacing.SOUTH) {
|
||||
} else if (coverSide == Direction.SOUTH) {
|
||||
from.setX(size);
|
||||
to.setX(16 - size);
|
||||
|
||||
@@ -321,7 +297,7 @@ public class BakedModelCableCover extends BakedModelDelegate {
|
||||
}
|
||||
|
||||
from.setY(16 - size);
|
||||
} else if (coverSide == EnumFacing.EAST) {
|
||||
} else if (coverSide == Direction.EAST) {
|
||||
from.setZ(size);
|
||||
to.setZ(16 - size);
|
||||
|
||||
@@ -332,7 +308,7 @@ public class BakedModelCableCover extends BakedModelDelegate {
|
||||
}
|
||||
|
||||
from.setY(16 - size);
|
||||
} else if (coverSide == EnumFacing.WEST) {
|
||||
} else if (coverSide == Direction.WEST) {
|
||||
from.setZ(size);
|
||||
to.setZ(16 - size);
|
||||
|
||||
@@ -343,7 +319,7 @@ public class BakedModelCableCover extends BakedModelDelegate {
|
||||
}
|
||||
|
||||
from.setY(16 - size);
|
||||
} else if (coverSide == EnumFacing.DOWN || coverSide == EnumFacing.UP) {
|
||||
} else if (coverSide == Direction.DOWN || coverSide == Direction.UP) {
|
||||
from.setZ(size);
|
||||
to.setZ(16 - size);
|
||||
|
||||
@@ -359,3 +335,4 @@ public class BakedModelCableCover extends BakedModelDelegate {
|
||||
);
|
||||
}
|
||||
}
|
||||
*/
|
@@ -1,5 +1,5 @@
|
||||
package com.raoulvdberge.refinedstorage.render.model.baked;
|
||||
|
||||
/*
|
||||
import com.google.common.cache.CacheBuilder;
|
||||
import com.google.common.cache.CacheLoader;
|
||||
import com.google.common.cache.LoadingCache;
|
||||
@@ -7,7 +7,7 @@ import com.raoulvdberge.refinedstorage.apiimpl.network.node.cover.Cover;
|
||||
import com.raoulvdberge.refinedstorage.apiimpl.network.node.cover.CoverType;
|
||||
import com.raoulvdberge.refinedstorage.item.ItemCover;
|
||||
import com.raoulvdberge.refinedstorage.util.RenderUtils;
|
||||
import net.minecraft.block.state.IBlockState;
|
||||
import net.minecraft.block.state.BlockState;
|
||||
import net.minecraft.client.renderer.block.model.BakedQuad;
|
||||
import net.minecraft.client.renderer.block.model.IBakedModel;
|
||||
import net.minecraft.client.renderer.block.model.ItemCameraTransforms;
|
||||
@@ -15,7 +15,7 @@ import net.minecraft.client.renderer.block.model.ItemOverrideList;
|
||||
import net.minecraft.client.renderer.texture.TextureAtlasSprite;
|
||||
import net.minecraft.entity.EntityLivingBase;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.util.EnumFacing;
|
||||
import net.minecraft.util.Direction;
|
||||
import net.minecraft.world.World;
|
||||
import net.minecraftforge.common.model.TRSRTransformation;
|
||||
import org.apache.commons.lang3.tuple.Pair;
|
||||
@@ -29,12 +29,12 @@ import java.util.Objects;
|
||||
|
||||
public class BakedModelCover extends BakedModelCableCover {
|
||||
private class CacheKey {
|
||||
private IBlockState state;
|
||||
private BlockState state;
|
||||
private ItemStack stack;
|
||||
private EnumFacing side;
|
||||
private Direction side;
|
||||
private CoverType type;
|
||||
|
||||
CacheKey(IBlockState state, ItemStack stack, EnumFacing side, CoverType type) {
|
||||
CacheKey(BlockState state, ItemStack stack, Direction side, CoverType type) {
|
||||
this.state = state;
|
||||
this.stack = stack;
|
||||
this.side = side;
|
||||
@@ -72,7 +72,7 @@ public class BakedModelCover extends BakedModelCableCover {
|
||||
public List<BakedQuad> load(CacheKey key) {
|
||||
List<BakedQuad> quads = new ArrayList<>();
|
||||
|
||||
addCover(quads, new Cover(key.stack, key.type), EnumFacing.NORTH, key.side, 0, null, false);
|
||||
addCover(quads, new Cover(key.stack, key.type), Direction.NORTH, key.side, 0, null, false);
|
||||
|
||||
return quads;
|
||||
}
|
||||
@@ -90,7 +90,7 @@ public class BakedModelCover extends BakedModelCableCover {
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<BakedQuad> getQuads(@Nullable IBlockState state, @Nullable EnumFacing side, long rand) {
|
||||
public List<BakedQuad> getQuads(@Nullable BlockState state, @Nullable Direction side, long rand) {
|
||||
if (stack == null) {
|
||||
return Collections.emptyList();
|
||||
}
|
||||
@@ -142,7 +142,7 @@ public class BakedModelCover extends BakedModelCableCover {
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isAmbientOcclusion(IBlockState state) {
|
||||
public boolean isAmbientOcclusion(BlockState state) {
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -151,4 +151,4 @@ public class BakedModelCover extends BakedModelCableCover {
|
||||
public ItemCameraTransforms getItemCameraTransforms() {
|
||||
return ItemCameraTransforms.DEFAULT;
|
||||
}
|
||||
}
|
||||
}*/
|
@@ -1,29 +1,14 @@
|
||||
package com.raoulvdberge.refinedstorage.render.model.baked;
|
||||
|
||||
import com.google.common.cache.CacheBuilder;
|
||||
import com.google.common.cache.CacheLoader;
|
||||
import com.google.common.cache.LoadingCache;
|
||||
import com.raoulvdberge.refinedstorage.RSBlocks;
|
||||
import com.raoulvdberge.refinedstorage.block.BlockDiskDrive;
|
||||
import com.raoulvdberge.refinedstorage.render.constants.ConstantsDisk;
|
||||
import net.minecraft.block.state.IBlockState;
|
||||
import net.minecraft.client.renderer.block.model.BakedQuad;
|
||||
import net.minecraft.client.renderer.block.model.IBakedModel;
|
||||
import net.minecraft.util.EnumFacing;
|
||||
import net.minecraftforge.common.model.TRSRTransformation;
|
||||
import net.minecraftforge.common.property.IExtendedBlockState;
|
||||
|
||||
import javax.annotation.Nullable;
|
||||
import javax.vecmath.Vector3f;
|
||||
import java.util.*;
|
||||
|
||||
/*
|
||||
public class BakedModelDiskDrive extends BakedModelDelegate {
|
||||
|
||||
private class CacheKey {
|
||||
private IBlockState state;
|
||||
private EnumFacing side;
|
||||
private BlockState state;
|
||||
private Direction side;
|
||||
private Integer[] diskState;
|
||||
|
||||
CacheKey(IBlockState state, @Nullable EnumFacing side, Integer[] diskState) {
|
||||
CacheKey(BlockState state, @Nullable Direction side, Integer[] diskState) {
|
||||
this.state = state;
|
||||
this.side = side;
|
||||
this.diskState = diskState;
|
||||
@@ -61,15 +46,15 @@ public class BakedModelDiskDrive extends BakedModelDelegate {
|
||||
}
|
||||
}
|
||||
|
||||
private Map<EnumFacing, IBakedModel> models = new HashMap<>();
|
||||
private Map<EnumFacing, Map<Integer, List<IBakedModel>>> disks = new HashMap<>();
|
||||
private Map<Direction, IBakedModel> models = new HashMap<>();
|
||||
private Map<Direction, Map<Integer, List<IBakedModel>>> disks = new HashMap<>();
|
||||
|
||||
private LoadingCache<CacheKey, List<BakedQuad>> cache = CacheBuilder.newBuilder().build(new CacheLoader<CacheKey, List<BakedQuad>>() {
|
||||
@Override
|
||||
public List<BakedQuad> load(CacheKey key) {
|
||||
EnumFacing facing = key.state.getValue(RSBlocks.DISK_DRIVE.getDirection().getProperty());
|
||||
Direction facing = key.state.get(RSBlocks.DISK_DRIVE.getDirection().getProperty());
|
||||
|
||||
List<BakedQuad> quads = models.get(facing).getQuads(key.state, key.side, 0);
|
||||
List<BakedQuad> quads = models.get(facing).getQuads(key.state, key.side, new Random());
|
||||
|
||||
for (int i = 0; i < 8; ++i) {
|
||||
if (key.diskState[i] != ConstantsDisk.DISK_STATE_NONE) {
|
||||
@@ -84,7 +69,7 @@ public class BakedModelDiskDrive extends BakedModelDelegate {
|
||||
public BakedModelDiskDrive(IBakedModel base, IBakedModel disk, IBakedModel diskNearCapacity, IBakedModel diskFull, IBakedModel diskDisconnected) {
|
||||
super(base);
|
||||
|
||||
for (EnumFacing facing : EnumFacing.HORIZONTALS) {
|
||||
for (Direction facing : Direction.values()) { // TODO only horizontals
|
||||
models.put(facing, new BakedModelTRSR(base, facing));
|
||||
|
||||
disks.put(facing, new HashMap<>());
|
||||
@@ -101,17 +86,17 @@ public class BakedModelDiskDrive extends BakedModelDelegate {
|
||||
}
|
||||
}
|
||||
|
||||
private void initDiskModels(IBakedModel disk, int type, EnumFacing facing) {
|
||||
private void initDiskModels(IBakedModel disk, int type, Direction facing) {
|
||||
for (int y = 0; y < 4; ++y) {
|
||||
for (int x = 0; x < 2; ++x) {
|
||||
BakedModelTRSR model = new BakedModelTRSR(disk, facing);
|
||||
|
||||
Vector3f trans = model.transformation.getTranslation();
|
||||
|
||||
if (facing == EnumFacing.NORTH || facing == EnumFacing.SOUTH) {
|
||||
trans.x += ((2F / 16F) + ((float) x * 7F) / 16F) * (facing == EnumFacing.NORTH ? -1 : 1);
|
||||
} else if (facing == EnumFacing.EAST || facing == EnumFacing.WEST) {
|
||||
trans.z += ((2F / 16F) + ((float) x * 7F) / 16F) * (facing == EnumFacing.EAST ? -1 : 1);
|
||||
if (facing == Direction.NORTH || facing == Direction.SOUTH) {
|
||||
trans.x += ((2F / 16F) + ((float) x * 7F) / 16F) * (facing == Direction.NORTH ? -1 : 1);
|
||||
} else if (facing == Direction.EAST || facing == Direction.WEST) {
|
||||
trans.z += ((2F / 16F) + ((float) x * 7F) / 16F) * (facing == Direction.EAST ? -1 : 1);
|
||||
}
|
||||
|
||||
trans.y -= (2F / 16F) + ((float) y * 3F) / 16F;
|
||||
@@ -124,7 +109,7 @@ public class BakedModelDiskDrive extends BakedModelDelegate {
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<BakedQuad> getQuads(@Nullable IBlockState state, @Nullable EnumFacing side, long rand) {
|
||||
public List<BakedQuad> getQuads(@Nullable BlockState state, @Nullable Direction side, long rand) {
|
||||
if (!(state instanceof IExtendedBlockState)) {
|
||||
return base.getQuads(state, side, rand);
|
||||
}
|
||||
@@ -140,3 +125,4 @@ public class BakedModelDiskDrive extends BakedModelDelegate {
|
||||
return cache.getUnchecked(key);
|
||||
}
|
||||
}
|
||||
*/
|
@@ -1,15 +1,15 @@
|
||||
package com.raoulvdberge.refinedstorage.render.model.baked;
|
||||
|
||||
/*
|
||||
import com.google.common.cache.CacheBuilder;
|
||||
import com.google.common.cache.CacheLoader;
|
||||
import com.google.common.cache.LoadingCache;
|
||||
import com.raoulvdberge.refinedstorage.RSBlocks;
|
||||
import com.raoulvdberge.refinedstorage.block.BlockDiskManipulator;
|
||||
import com.raoulvdberge.refinedstorage.render.constants.ConstantsDisk;
|
||||
import net.minecraft.block.state.IBlockState;
|
||||
import net.minecraft.block.state.BlockState;
|
||||
import net.minecraft.client.renderer.block.model.BakedQuad;
|
||||
import net.minecraft.client.renderer.block.model.IBakedModel;
|
||||
import net.minecraft.util.EnumFacing;
|
||||
import net.minecraft.util.Direction;
|
||||
import net.minecraftforge.common.model.TRSRTransformation;
|
||||
import net.minecraftforge.common.property.IExtendedBlockState;
|
||||
|
||||
@@ -19,11 +19,11 @@ import java.util.*;
|
||||
|
||||
public class BakedModelDiskManipulator extends BakedModelDelegate {
|
||||
private class CacheKey {
|
||||
private IBlockState state;
|
||||
private EnumFacing side;
|
||||
private BlockState state;
|
||||
private Direction side;
|
||||
private Integer[] diskState;
|
||||
|
||||
CacheKey(IBlockState state, @Nullable EnumFacing side, Integer[] diskState) {
|
||||
CacheKey(BlockState state, @Nullable Direction side, Integer[] diskState) {
|
||||
this.state = state;
|
||||
this.side = side;
|
||||
this.diskState = diskState;
|
||||
@@ -61,14 +61,14 @@ public class BakedModelDiskManipulator extends BakedModelDelegate {
|
||||
}
|
||||
}
|
||||
|
||||
private Map<EnumFacing, IBakedModel> modelsConnected = new HashMap<>();
|
||||
private Map<EnumFacing, IBakedModel> modelsDisconnected = new HashMap<>();
|
||||
private Map<EnumFacing, Map<Integer, List<IBakedModel>>> disks = new HashMap<>();
|
||||
private Map<Direction, IBakedModel> modelsConnected = new HashMap<>();
|
||||
private Map<Direction, IBakedModel> modelsDisconnected = new HashMap<>();
|
||||
private Map<Direction, Map<Integer, List<IBakedModel>>> disks = new HashMap<>();
|
||||
|
||||
private LoadingCache<CacheKey, List<BakedQuad>> cache = CacheBuilder.newBuilder().build(new CacheLoader<CacheKey, List<BakedQuad>>() {
|
||||
@Override
|
||||
public List<BakedQuad> load(CacheKey key) {
|
||||
EnumFacing facing = key.state.getValue(RSBlocks.DISK_MANIPULATOR.getDirection().getProperty());
|
||||
Direction facing = key.state.getValue(RSBlocks.DISK_MANIPULATOR.getDirection().getProperty());
|
||||
|
||||
List<BakedQuad> quads = (key.state.getValue(BlockDiskManipulator.CONNECTED) ? modelsConnected : modelsDisconnected).get(facing).getQuads(key.state, key.side, 0);
|
||||
|
||||
@@ -85,7 +85,7 @@ public class BakedModelDiskManipulator extends BakedModelDelegate {
|
||||
public BakedModelDiskManipulator(IBakedModel baseConnected, IBakedModel baseDisconnected, IBakedModel disk, IBakedModel diskNearCapacity, IBakedModel diskFull, IBakedModel diskDisconnected) {
|
||||
super(baseDisconnected);
|
||||
|
||||
for (EnumFacing facing : EnumFacing.HORIZONTALS) {
|
||||
for (Direction facing : Direction.HORIZONTALS) {
|
||||
modelsConnected.put(facing, new BakedModelTRSR(baseConnected, facing));
|
||||
modelsDisconnected.put(facing, new BakedModelTRSR(baseDisconnected, facing));
|
||||
|
||||
@@ -103,17 +103,17 @@ public class BakedModelDiskManipulator extends BakedModelDelegate {
|
||||
}
|
||||
}
|
||||
|
||||
private void initDiskModels(IBakedModel disk, int type, EnumFacing facing) {
|
||||
private void initDiskModels(IBakedModel disk, int type, Direction facing) {
|
||||
for (int x = 0; x < 2; ++x) {
|
||||
for (int y = 0; y < 3; ++y) {
|
||||
BakedModelTRSR model = new BakedModelTRSR(disk, facing);
|
||||
|
||||
Vector3f trans = model.transformation.getTranslation();
|
||||
|
||||
if (facing == EnumFacing.NORTH || facing == EnumFacing.SOUTH) {
|
||||
trans.x += (2F / 16F + ((float) x * 7F) / 16F) * (facing == EnumFacing.NORTH ? -1 : 1);
|
||||
} else if (facing == EnumFacing.EAST || facing == EnumFacing.WEST) {
|
||||
trans.z += (2F / 16F + ((float) x * 7F) / 16F) * (facing == EnumFacing.EAST ? -1 : 1);
|
||||
if (facing == Direction.NORTH || facing == Direction.SOUTH) {
|
||||
trans.x += (2F / 16F + ((float) x * 7F) / 16F) * (facing == Direction.NORTH ? -1 : 1);
|
||||
} else if (facing == Direction.EAST || facing == Direction.WEST) {
|
||||
trans.z += (2F / 16F + ((float) x * 7F) / 16F) * (facing == Direction.EAST ? -1 : 1);
|
||||
}
|
||||
|
||||
trans.y -= (6F / 16F) + (3F * y) / 16F;
|
||||
@@ -126,7 +126,7 @@ public class BakedModelDiskManipulator extends BakedModelDelegate {
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<BakedQuad> getQuads(@Nullable IBlockState state, @Nullable EnumFacing side, long rand) {
|
||||
public List<BakedQuad> getQuads(@Nullable BlockState state, @Nullable Direction side, long rand) {
|
||||
if (!(state instanceof IExtendedBlockState)) {
|
||||
return base.getQuads(state, side, rand);
|
||||
}
|
||||
@@ -142,3 +142,4 @@ public class BakedModelDiskManipulator extends BakedModelDelegate {
|
||||
return cache.getUnchecked(key);
|
||||
}
|
||||
}
|
||||
*/
|
@@ -1,5 +1,5 @@
|
||||
package com.raoulvdberge.refinedstorage.render.model.baked;
|
||||
|
||||
/*
|
||||
import com.raoulvdberge.refinedstorage.api.autocrafting.ICraftingPatternRenderHandler;
|
||||
import com.raoulvdberge.refinedstorage.apiimpl.API;
|
||||
import com.raoulvdberge.refinedstorage.apiimpl.autocrafting.CraftingPattern;
|
||||
@@ -75,3 +75,4 @@ public class BakedModelPattern extends BakedModelDelegate {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
*/
|
@@ -1,7 +1,7 @@
|
||||
package com.raoulvdberge.refinedstorage.render.model.baked;
|
||||
|
||||
/*
|
||||
import com.google.common.collect.ImmutableList;
|
||||
import net.minecraft.block.state.IBlockState;
|
||||
import net.minecraft.block.state.BlockState;
|
||||
import net.minecraft.client.renderer.block.model.BakedQuad;
|
||||
import net.minecraft.client.renderer.block.model.IBakedModel;
|
||||
import net.minecraft.client.renderer.block.model.ItemCameraTransforms;
|
||||
@@ -11,7 +11,7 @@ import net.minecraft.client.renderer.vertex.VertexFormat;
|
||||
import net.minecraft.client.renderer.vertex.VertexFormatElement;
|
||||
import net.minecraft.entity.EntityLivingBase;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.util.EnumFacing;
|
||||
import net.minecraft.util.Direction;
|
||||
import net.minecraft.world.World;
|
||||
import net.minecraftforge.client.model.pipeline.UnpackedBakedQuad;
|
||||
import net.minecraftforge.client.model.pipeline.VertexTransformer;
|
||||
@@ -26,9 +26,9 @@ import javax.vecmath.Vector4f;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
**
|
||||
* @link https://github.com/SlimeKnights/Mantle/blob/master/src/main/java/slimeknights/mantle/client/model/TRSRBakedModel.java
|
||||
*/
|
||||
*
|
||||
public class BakedModelTRSR implements IBakedModel {
|
||||
protected final IBakedModel original;
|
||||
public TRSRTransformation transformation;
|
||||
@@ -57,14 +57,14 @@ public class BakedModelTRSR implements IBakedModel {
|
||||
this.faceOffset = 0;
|
||||
}
|
||||
|
||||
/**
|
||||
**
|
||||
* Rotates around the Y axis and adjusts culling appropriately. South is default.
|
||||
*/
|
||||
public BakedModelTRSR(IBakedModel original, EnumFacing facing) {
|
||||
*
|
||||
public BakedModelTRSR(IBakedModel original, Direction facing) {
|
||||
this.original = original;
|
||||
this.override = new TRSROverride(this);
|
||||
|
||||
this.faceOffset = 4 + EnumFacing.NORTH.getHorizontalIndex() - facing.getHorizontalIndex();
|
||||
this.faceOffset = 4 + Direction.NORTH.getHorizontalIndex() - facing.getHorizontalIndex();
|
||||
|
||||
double r = Math.PI * (360 - facing.getOpposite().getHorizontalIndex() * 90) / 180d;
|
||||
TRSRTransformation t = new TRSRTransformation(null, null, null, TRSRTransformation.quatFromXYZ(0, (float) r, 0));
|
||||
@@ -73,7 +73,7 @@ public class BakedModelTRSR implements IBakedModel {
|
||||
|
||||
@Nonnull
|
||||
@Override
|
||||
public List<BakedQuad> getQuads(IBlockState state, EnumFacing side, long rand) {
|
||||
public List<BakedQuad> getQuads(BlockState state, Direction side, long rand) {
|
||||
// transform quads obtained from parent
|
||||
|
||||
List<BakedQuad> quads = new ArrayList<>();
|
||||
@@ -82,7 +82,7 @@ public class BakedModelTRSR implements IBakedModel {
|
||||
try {
|
||||
// adjust side to facing-rotation
|
||||
if (side != null && side.getHorizontalIndex() > -1) {
|
||||
side = EnumFacing.byHorizontalIndex((side.getHorizontalIndex() + faceOffset) % 4);
|
||||
side = Direction.byHorizontalIndex((side.getHorizontalIndex() + faceOffset) % 4);
|
||||
}
|
||||
for (BakedQuad quad : original.getQuads(state, side, rand)) {
|
||||
Transformer transformer = new Transformer(transformation, quad.getFormat());
|
||||
@@ -188,4 +188,4 @@ public class BakedModelTRSR implements IBakedModel {
|
||||
return ((UnpackedBakedQuad.Builder) parent).build();
|
||||
}
|
||||
}
|
||||
}
|
||||
}*/
|
@@ -3,21 +3,26 @@ package com.raoulvdberge.refinedstorage.render.model.loader;
|
||||
import com.raoulvdberge.refinedstorage.RS;
|
||||
import com.raoulvdberge.refinedstorage.apiimpl.network.node.cover.CoverType;
|
||||
import com.raoulvdberge.refinedstorage.render.model.ModelCover;
|
||||
import net.minecraft.client.resources.IResourceManager;
|
||||
import net.minecraft.client.renderer.model.IUnbakedModel;
|
||||
import net.minecraft.resources.IResourceManager;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
import net.minecraftforge.client.model.ICustomModelLoader;
|
||||
import net.minecraftforge.client.model.IModel;
|
||||
|
||||
import javax.annotation.Nullable;
|
||||
|
||||
public class CustomModelLoaderCover implements ICustomModelLoader {
|
||||
@Override
|
||||
public void onResourceManagerReload(IResourceManager resourceManager) {
|
||||
// NO OP
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean accepts(ResourceLocation modelLocation) {
|
||||
return modelLocation.getNamespace().equals(RS.ID) && getType(modelLocation) != null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public IModel loadModel(ResourceLocation modelLocation) {
|
||||
public IUnbakedModel loadModel(ResourceLocation modelLocation) {
|
||||
return new ModelCover(getType(modelLocation));
|
||||
}
|
||||
|
||||
@@ -32,9 +37,4 @@ public class CustomModelLoaderCover implements ICustomModelLoader {
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onResourceManagerReload(IResourceManager resourceManager) {
|
||||
// NO OP
|
||||
}
|
||||
}
|
||||
|
@@ -1,33 +1,33 @@
|
||||
package com.raoulvdberge.refinedstorage.render.model.loader;
|
||||
|
||||
import net.minecraft.client.resources.IResourceManager;
|
||||
import net.minecraft.client.renderer.model.IUnbakedModel;
|
||||
import net.minecraft.resources.IResourceManager;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
import net.minecraftforge.client.model.ICustomModelLoader;
|
||||
import net.minecraftforge.client.model.IModel;
|
||||
|
||||
import java.util.function.Supplier;
|
||||
|
||||
public class CustomModelLoaderDefault implements ICustomModelLoader {
|
||||
private ResourceLocation modelLocation;
|
||||
private Supplier<IModel> model;
|
||||
private Supplier<IUnbakedModel> model;
|
||||
|
||||
public CustomModelLoaderDefault(ResourceLocation modelLocation, Supplier<IModel> model) {
|
||||
public CustomModelLoaderDefault(ResourceLocation modelLocation, Supplier<IUnbakedModel> model) {
|
||||
this.modelLocation = modelLocation;
|
||||
this.model = model;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onResourceManagerReload(IResourceManager resourceManager) {
|
||||
// NO OP
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean accepts(ResourceLocation modelLocation) {
|
||||
return this.modelLocation.equals(modelLocation);
|
||||
}
|
||||
|
||||
@Override
|
||||
public IModel loadModel(ResourceLocation modelLocation) {
|
||||
public IUnbakedModel loadModel(ResourceLocation modelLocation) {
|
||||
return model.get();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onResourceManagerReload(IResourceManager resourceManager) {
|
||||
// NO OP
|
||||
}
|
||||
}
|
||||
|
@@ -2,10 +2,10 @@ package com.raoulvdberge.refinedstorage.render.teisr;
|
||||
|
||||
import com.raoulvdberge.refinedstorage.apiimpl.autocrafting.CraftingPattern;
|
||||
import com.raoulvdberge.refinedstorage.item.ItemPattern;
|
||||
import net.minecraft.client.renderer.tileentity.TileEntityItemStackRenderer;
|
||||
import net.minecraft.client.renderer.tileentity.ItemStackTileEntityRenderer;
|
||||
import net.minecraft.item.ItemStack;
|
||||
|
||||
public class TileEntityItemStackRendererPattern extends TileEntityItemStackRenderer {
|
||||
public class TileEntityItemStackRendererPattern extends ItemStackTileEntityRenderer {
|
||||
@Override
|
||||
public void renderByItem(ItemStack stack) {
|
||||
CraftingPattern pattern = ItemPattern.getPatternFromCache(null, stack);
|
||||
@@ -13,12 +13,4 @@ public class TileEntityItemStackRendererPattern extends TileEntityItemStackRende
|
||||
|
||||
outputStack.getItem().getTileEntityItemStackRenderer().renderByItem(outputStack);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void renderByItem(ItemStack stack, float partialTicks) {
|
||||
CraftingPattern pattern = ItemPattern.getPatternFromCache(null, stack);
|
||||
ItemStack outputStack = pattern.getOutputs().get(0);
|
||||
|
||||
outputStack.getItem().getTileEntityItemStackRenderer().renderByItem(outputStack, partialTicks);
|
||||
}
|
||||
}
|
@@ -3,7 +3,6 @@ package com.raoulvdberge.refinedstorage.render.tesr;
|
||||
import com.mojang.blaze3d.platform.GlStateManager;
|
||||
import com.raoulvdberge.refinedstorage.apiimpl.API;
|
||||
import com.raoulvdberge.refinedstorage.tile.TileStorageMonitor;
|
||||
import com.sun.prism.TextureMap;
|
||||
import net.minecraft.client.Minecraft;
|
||||
import net.minecraft.client.renderer.model.IBakedModel;
|
||||
import net.minecraft.client.renderer.model.ItemCameraTransforms;
|
||||
@@ -85,8 +84,8 @@ public class TileEntitySpecialRendererStorageMonitor extends TileEntityRenderer<
|
||||
GlStateManager.blendFunc(GlStateManager.SourceFactor.ONE, GlStateManager.DestFactor.ZERO);
|
||||
GlStateManager.depthMask(true);
|
||||
GlStateManager.scalef(0.4F, -0.4F, -0.015F);
|
||||
Minecraft.getInstance().getTextureManager().bindTexture(TextureMap.LOCATION_BLOCKS_TEXTURE);
|
||||
Minecraft.getInstance().getTextureManager().getTexture(TextureMap.LOCATION_BLOCKS_TEXTURE).setBlurMipmap(false, false);
|
||||
// TODO Minecraft.getInstance().getTextureManager().bindTexture(TextureMap.LOCATION_BLOCKS_TEXTURE);
|
||||
// TODO Minecraft.getInstance().getTextureManager().getTexture(TextureMap.LOCATION_BLOCKS_TEXTURE).setBlurMipmap(false, false);
|
||||
GlStateManager.enableRescaleNormal();
|
||||
GlStateManager.enableAlphaTest();
|
||||
GlStateManager.alphaFunc(GL11.GL_GREATER, 0.1F);
|
||||
@@ -103,8 +102,8 @@ public class TileEntitySpecialRendererStorageMonitor extends TileEntityRenderer<
|
||||
GlStateManager.disableAlphaTest();
|
||||
GlStateManager.disableRescaleNormal();
|
||||
GlStateManager.disableLighting();
|
||||
Minecraft.getInstance().getTextureManager().bindTexture(TextureMap.LOCATION_BLOCKS_TEXTURE);
|
||||
Minecraft.getInstance().getTextureManager().getTexture(TextureMap.LOCATION_BLOCKS_TEXTURE).restoreLastBlurMipmap();
|
||||
// TODO Minecraft.getInstance().getTextureManager().bindTexture(TextureMap.LOCATION_BLOCKS_TEXTURE);
|
||||
// TODO Minecraft.getInstance().getTextureManager().getTexture(TextureMap.LOCATION_BLOCKS_TEXTURE).restoreLastBlurMipmap();
|
||||
GlStateManager.disableBlend();
|
||||
GlStateManager.color4f(1F, 1F, 1F, 1F);
|
||||
|
||||
|
Reference in New Issue
Block a user