Cables render! Thanks QLIB and @amadornes :)
This commit is contained in:
parent
6e0ec1d861
commit
0327f3df62
5 changed files with 27 additions and 23 deletions
|
@ -6,14 +6,13 @@ package techreborn.partSystem;
|
|||
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
import net.minecraft.client.renderer.RenderBlocks;
|
||||
import net.minecraft.client.renderer.RenderHelper;
|
||||
import net.minecraft.entity.Entity;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.nbt.NBTTagCompound;
|
||||
import net.minecraft.world.World;
|
||||
import techreborn.lib.vecmath.Vecs3d;
|
||||
import techreborn.lib.vecmath.Vecs3dCube;
|
||||
import uk.co.qmunity.lib.client.render.RenderHelper;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
|
@ -52,7 +51,7 @@ public interface IModPart {
|
|||
* Only called when there's a block/lighting/render update in the chunk this part is in.
|
||||
*/
|
||||
@SideOnly(Side.CLIENT)
|
||||
public boolean renderStatic(Vecs3d translation, RenderBlocks renderBlocks, int pass);
|
||||
public boolean renderStatic(Vecs3d translation, RenderHelper renderHelper, int pass);
|
||||
|
||||
/**
|
||||
* Writes the part's data to an NBT tag, which is saved with the game data.
|
||||
|
|
|
@ -5,22 +5,15 @@
|
|||
package techreborn.partSystem.QLib;
|
||||
|
||||
import net.minecraft.client.renderer.RenderBlocks;
|
||||
import net.minecraft.entity.Entity;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.world.World;
|
||||
import techreborn.lib.Location;
|
||||
import techreborn.lib.vecmath.Vecs3d;
|
||||
import techreborn.lib.vecmath.Vecs3dCube;
|
||||
import techreborn.partSystem.ModPart;
|
||||
import net.minecraft.entity.Entity;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.world.World;
|
||||
import uk.co.qmunity.lib.client.render.RenderHelper;
|
||||
import uk.co.qmunity.lib.part.IPart;
|
||||
import uk.co.qmunity.lib.part.IPartCollidable;
|
||||
import uk.co.qmunity.lib.part.IPartRenderPlacement;
|
||||
import uk.co.qmunity.lib.part.IPartSelectable;
|
||||
import uk.co.qmunity.lib.part.IPartTicking;
|
||||
import uk.co.qmunity.lib.part.IPartUpdateListener;
|
||||
import uk.co.qmunity.lib.part.ITilePartHolder;
|
||||
import uk.co.qmunity.lib.part.PartBase;
|
||||
import uk.co.qmunity.lib.part.*;
|
||||
import uk.co.qmunity.lib.raytrace.QMovingObjectPosition;
|
||||
import uk.co.qmunity.lib.raytrace.RayTracer;
|
||||
import uk.co.qmunity.lib.vec.Vec3d;
|
||||
|
@ -72,7 +65,7 @@ public class QModPart extends PartBase implements IPartCollidable, IPartSelectab
|
|||
|
||||
@Override
|
||||
public boolean renderStatic(Vec3i translation, RenderHelper renderer, RenderBlocks renderBlocks, int pass) {
|
||||
return iModPart.renderStatic(new Vecs3d(translation.getX(), translation.getY(), translation.getZ()),renderBlocks , pass);
|
||||
return iModPart.renderStatic(new Vecs3d(translation.getX(), translation.getY(), translation.getZ()),renderer , pass);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -16,7 +16,6 @@ import codechicken.multipart.TSlottedPart;
|
|||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
import net.minecraft.client.renderer.RenderBlocks;
|
||||
import net.minecraft.client.renderer.RenderHelper;
|
||||
import net.minecraft.entity.Entity;
|
||||
import net.minecraft.util.AxisAlignedBB;
|
||||
import net.minecraft.world.World;
|
||||
|
@ -24,6 +23,7 @@ import techreborn.lib.Location;
|
|||
import techreborn.lib.vecmath.Vecs3d;
|
||||
import techreborn.lib.vecmath.Vecs3dCube;
|
||||
import techreborn.partSystem.ModPart;
|
||||
import uk.co.qmunity.lib.client.render.RenderHelper;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
@ -184,7 +184,11 @@ public class FMPModPart extends TMultiPart implements TSlottedPart, JNormalOcclu
|
|||
boolean render = false;
|
||||
RenderBlocks renderer = RenderBlocks.getInstance();
|
||||
renderer.blockAccess = getWorld();
|
||||
render = iModPart.renderStatic(new Vecs3d(pos.x, pos.y, pos.z), renderer, pass);
|
||||
render = iModPart.renderStatic(new Vecs3d(pos.x, pos.y, pos.z), uk.co.qmunity.lib.client.render.RenderHelper.instance, pass);
|
||||
RenderHelper.instance.resetRenderedSides();
|
||||
RenderHelper.instance.resetTextureRotations();
|
||||
RenderHelper.instance.resetTransformations();
|
||||
RenderHelper.instance.setColor(0xFFFFFF);
|
||||
return render;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -5,8 +5,8 @@ import ic2.api.energy.event.EnergyTileUnloadEvent;
|
|||
import ic2.api.energy.tile.IEnergyConductor;
|
||||
import ic2.api.energy.tile.IEnergyTile;
|
||||
import ic2.core.IC2;
|
||||
import net.minecraft.client.renderer.RenderBlocks;
|
||||
import net.minecraft.entity.Entity;
|
||||
import net.minecraft.init.Blocks;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.nbt.NBTTagCompound;
|
||||
import net.minecraft.tileentity.TileEntity;
|
||||
|
@ -18,6 +18,8 @@ import techreborn.lib.vecmath.Vecs3d;
|
|||
import techreborn.lib.vecmath.Vecs3dCube;
|
||||
import techreborn.partSystem.ModPart;
|
||||
import techreborn.partSystem.ModPartUtils;
|
||||
import techreborn.partSystem.QLib.ModLib2QLib;
|
||||
import uk.co.qmunity.lib.client.render.RenderHelper;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashMap;
|
||||
|
@ -91,7 +93,7 @@ public class CablePart extends ModPart implements IEnergyConductor {
|
|||
checkConnectedSides();
|
||||
List<Vecs3dCube> vecs3dCubesList = new ArrayList<Vecs3dCube>();
|
||||
for (ForgeDirection dir : ForgeDirection.VALID_DIRECTIONS) {
|
||||
if (connectedSides.containsKey(dir))
|
||||
if (connectedSides.containsValue(dir))
|
||||
vecs3dCubesList.add(boundingBoxes[Functions.getIntDirFromDirection(dir)]);
|
||||
}
|
||||
return vecs3dCubesList;
|
||||
|
@ -104,8 +106,14 @@ public class CablePart extends ModPart implements IEnergyConductor {
|
|||
|
||||
|
||||
@Override
|
||||
public boolean renderStatic(Vecs3d translation, RenderBlocks renderBlocks, int pass) {
|
||||
return false;
|
||||
public boolean renderStatic(Vecs3d translation, RenderHelper renderer, int pass) {
|
||||
renderer.setOverrideTexture(Blocks.coal_block.getIcon(0, 0));
|
||||
renderer.renderBox(ModLib2QLib.convert(boundingBoxes[6]));
|
||||
for (ForgeDirection dir : ForgeDirection.VALID_DIRECTIONS) {
|
||||
if (connectedSides.containsKey(dir))
|
||||
renderer.renderBox(ModLib2QLib.convert(boundingBoxes[Functions.getIntDirFromDirection(dir)]));
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -4,13 +4,13 @@
|
|||
|
||||
package techreborn.partSystem.parts;
|
||||
|
||||
import net.minecraft.client.renderer.RenderBlocks;
|
||||
import net.minecraft.entity.Entity;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.nbt.NBTTagCompound;
|
||||
import techreborn.lib.vecmath.Vecs3d;
|
||||
import techreborn.lib.vecmath.Vecs3dCube;
|
||||
import techreborn.partSystem.ModPart;
|
||||
import uk.co.qmunity.lib.client.render.RenderHelper;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
@ -42,7 +42,7 @@ public class NullPart extends ModPart {
|
|||
}
|
||||
|
||||
@Override
|
||||
public boolean renderStatic(Vecs3d translation, RenderBlocks renderBlocks, int pass) {
|
||||
public boolean renderStatic(Vecs3d translation, RenderHelper renderBlocks, int pass) {
|
||||
return false;
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue