diff --git a/archaic/src/main/java/resonantinduction/archaic/process/BlockCast.java b/archaic/src/main/java/resonantinduction/archaic/process/BlockCast.java index d28d664a..1fdc13f9 100644 --- a/archaic/src/main/java/resonantinduction/archaic/process/BlockCast.java +++ b/archaic/src/main/java/resonantinduction/archaic/process/BlockCast.java @@ -8,6 +8,7 @@ import net.minecraft.tileentity.TileEntity; import net.minecraft.util.Icon; import net.minecraft.world.World; import resonantinduction.core.Reference; +import resonantinduction.core.render.RIBlockRenderingHandler; import universalelectricity.api.vector.Vector3; import calclavia.lib.prefab.block.BlockTile; import calclavia.lib.utility.inventory.InventoryUtility; @@ -26,6 +27,25 @@ public class BlockCast extends BlockTile setTextureName(Reference.PREFIX + "material_metal_side"); } + @SideOnly(Side.CLIENT) + @Override + public int getRenderType() + { + return RIBlockRenderingHandler.ID; + } + + @Override + public boolean isOpaqueCube() + { + return false; + } + + @Override + public boolean renderAsNormalBlock() + { + return false; + } + @SideOnly(Side.CLIENT) @Override public void registerIcons(IconRegister iconReg) diff --git a/archaic/src/main/java/resonantinduction/archaic/process/RenderCast.java b/archaic/src/main/java/resonantinduction/archaic/process/RenderCast.java index cf8cce0e..393f3a2d 100644 --- a/archaic/src/main/java/resonantinduction/archaic/process/RenderCast.java +++ b/archaic/src/main/java/resonantinduction/archaic/process/RenderCast.java @@ -1,15 +1,23 @@ package resonantinduction.archaic.process; +import org.lwjgl.opengl.GL11; + +import calclavia.lib.render.RenderUtility; import net.minecraft.client.renderer.RenderBlocks; import net.minecraft.tileentity.TileEntity; +import net.minecraftforge.client.model.AdvancedModelLoader; +import net.minecraftforge.client.model.IModelCustom; +import resonantinduction.core.Reference; import resonantinduction.core.render.RenderItemOverlayTile; +import resonantinduction.electrical.battery.RenderBattery; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; @SideOnly(Side.CLIENT) public class RenderCast extends RenderItemOverlayTile { - private final RenderBlocks renderBlocks = new RenderBlocks(); + public static RenderCast INSTANCE = new RenderCast(); + public static final IModelCustom MODEL = AdvancedModelLoader.loadModel(Reference.MODEL_DIRECTORY + "cast.tcn"); @Override public void renderTileEntityAt(TileEntity tileEntity, double x, double y, double z, float var8) @@ -17,7 +25,17 @@ public class RenderCast extends RenderItemOverlayTile if (tileEntity instanceof TileCast) { TileCast tile = (TileCast) tileEntity; - renderItemOnSides(tileEntity, tile.getStackInSlot(0), x, y, z, ""); + + GL11.glPushMatrix(); + GL11.glTranslated(x + 0.5, y + 0.5, z + 0.5); + GL11.glTranslated(0.25, -0.25, -0.25); + GL11.glScalef(0.5f, 0.5f, 0.5f); + RenderUtility.bind(Reference.DOMAIN, Reference.MODEL_PATH + "cast.png"); + MODEL.renderAll(); + GL11.glPopMatrix(); + + if (tile.worldObj != null) + renderItemOnSides(tileEntity, tile.getStackInSlot(0), x, y, z, ""); } } } diff --git a/electrical/src/main/java/resonantinduction/electrical/charger/PartCharger.java b/electrical/src/main/java/resonantinduction/electrical/charger/PartCharger.java index b1680fe0..8141c63c 100644 --- a/electrical/src/main/java/resonantinduction/electrical/charger/PartCharger.java +++ b/electrical/src/main/java/resonantinduction/electrical/charger/PartCharger.java @@ -113,7 +113,8 @@ public class PartCharger extends PartFace implements IExternalInventory, ISidedI if (energyLeft <= 0) break; } - if (energyUsed > 0 && System.currentTimeMillis() - this.lastPacket >= 50) + + if (!world().isRemote && energyUsed > 0 && System.currentTimeMillis() - this.lastPacket >= 50) { this.lastPacket = System.currentTimeMillis(); sendDescUpdate(); diff --git a/src/main/resources/assets/resonantinduction/models/cast.png b/src/main/resources/assets/resonantinduction/models/cast.png new file mode 100644 index 00000000..b9173094 Binary files /dev/null and b/src/main/resources/assets/resonantinduction/models/cast.png differ diff --git a/src/main/resources/assets/resonantinduction/models/cast.tcn b/src/main/resources/assets/resonantinduction/models/cast.tcn new file mode 100644 index 00000000..5644babc Binary files /dev/null and b/src/main/resources/assets/resonantinduction/models/cast.tcn differ