summaryrefslogtreecommitdiff
path: root/src/main/java/ihl/model/RectifierTransformerUnitSelectionBoxSpecialRenderer.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/ihl/model/RectifierTransformerUnitSelectionBoxSpecialRenderer.java')
-rw-r--r--src/main/java/ihl/model/RectifierTransformerUnitSelectionBoxSpecialRenderer.java51
1 files changed, 51 insertions, 0 deletions
diff --git a/src/main/java/ihl/model/RectifierTransformerUnitSelectionBoxSpecialRenderer.java b/src/main/java/ihl/model/RectifierTransformerUnitSelectionBoxSpecialRenderer.java
new file mode 100644
index 0000000..4ce866b
--- /dev/null
+++ b/src/main/java/ihl/model/RectifierTransformerUnitSelectionBoxSpecialRenderer.java
@@ -0,0 +1,51 @@
+package ihl.model;
+
+import org.lwjgl.opengl.GL11;
+
+import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
+import ihl.flexible_cable.RectifierTransformerUnitTileEntity;
+import ihl.interfaces.ISelectionBoxSpecialRenderer;
+import net.minecraft.client.Minecraft;
+import net.minecraft.client.renderer.OpenGlHelper;
+import net.minecraft.client.renderer.RenderGlobal;
+import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.item.ItemStack;
+import net.minecraft.util.MovingObjectPosition;
+
+@SideOnly(value=Side.CLIENT)
+public class RectifierTransformerUnitSelectionBoxSpecialRenderer implements ISelectionBoxSpecialRenderer
+{
+ @Override
+ public void drawSelectionBox(EntityPlayer player, ItemStack currentItem, MovingObjectPosition movingObjectPosition, float partialTick)
+ {
+ double offsetX = player.lastTickPosX + (player.posX - player.lastTickPosX) * partialTick;
+ double offsetY = player.lastTickPosY + (player.posY - player.lastTickPosY) * partialTick;
+ double offsetZ = player.lastTickPosZ + (player.posZ - player.lastTickPosZ) * partialTick;
+ RectifierTransformerUnitTileEntity tile = (RectifierTransformerUnitTileEntity) Minecraft.getMinecraft().theWorld.getTileEntity(movingObjectPosition.blockX, movingObjectPosition.blockY, movingObjectPosition.blockZ);
+ if(tile!=null && tile.getWorldObj() != null)
+ {
+ GL11.glEnable(GL11.GL_BLEND);
+ OpenGlHelper.glBlendFunc(770, 771, 1, 0);
+ GL11.glLineWidth(2.0F);
+ GL11.glDisable(GL11.GL_TEXTURE_2D);
+ GL11.glDepthMask(false);
+ short side = tile.getSide(player);
+ if(side==0)
+ {
+ GL11.glColor4f(0.0F, 1.0F, 0.0F, 0.8F);
+ RenderGlobal.drawOutlinedBoundingBox(tile.aabb1.getOffsetBoundingBox(-offsetX, -offsetY, -offsetZ), -1);
+ RenderGlobal.drawOutlinedBoundingBox(tile.aabb1_1.getOffsetBoundingBox(-offsetX, -offsetY, -offsetZ), -1);
+ }
+ else if(side==1)
+ {
+ GL11.glColor4f(1.0F, 0.0F, 0.0F, 0.8F);
+ RenderGlobal.drawOutlinedBoundingBox(tile.aabb2.getOffsetBoundingBox(-offsetX, -offsetY, -offsetZ), -1);
+ RenderGlobal.drawOutlinedBoundingBox(tile.aabb2_1.getOffsetBoundingBox(-offsetX, -offsetY, -offsetZ), -1);
+ }
+ GL11.glEnable(GL11.GL_TEXTURE_2D);
+ GL11.glDepthMask(true);
+ GL11.glDisable(GL11.GL_BLEND);
+ }
+ }
+}