initial commit

This commit is contained in:
Raoul Van den Berge
2015-12-07 17:09:01 +01:00
commit b1e54306a5
18 changed files with 433 additions and 0 deletions

View File

@@ -0,0 +1,30 @@
package storagecraft.render;
import net.minecraft.client.Minecraft;
import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.ResourceLocation;
import org.lwjgl.opengl.GL11;
import storagecraft.render.model.CableModel;
import storagecraft.tile.TileCable;
public class CableRenderer extends TileEntitySpecialRenderer {
public static final ResourceLocation CABLE_RESOURCE = new ResourceLocation("storagecraft:textures/blocks/cable.png");
@Override
public void renderTileEntityAt(TileEntity tile, double x, double y, double z, float scale) {
CableModel model = new CableModel((TileCable) tile);
GL11.glPushMatrix();
GL11.glTranslatef((float) x, (float) y, (float) z);
{
GL11.glPushMatrix();
Minecraft.getMinecraft().renderEngine.bindTexture(CABLE_RESOURCE);
model.render(null, 0.0F, 0.0F, -0.1F, 0.0F, 0.0F, 0.0625F);
GL11.glPopMatrix();
}
GL11.glPopMatrix();
}
}

View File

@@ -0,0 +1,80 @@
package storagecraft.render.model;
import net.minecraft.client.model.ModelBase;
import net.minecraft.client.model.ModelRenderer;
import net.minecraft.entity.Entity;
import net.minecraftforge.common.util.ForgeDirection;
import storagecraft.tile.TileCable;
public class CableModel extends ModelBase {
private TileCable cable;
private ModelRenderer core;
private ModelRenderer up;
private ModelRenderer down;
private ModelRenderer north;
private ModelRenderer east;
private ModelRenderer south;
private ModelRenderer west;
public CableModel(TileCable cable) {
this.cable = cable;
core = new ModelRenderer(this, 0, 0);
core.addBox(6F, 6F, 6F, 4, 4, 4);
core.setTextureSize(16, 16);
up = new ModelRenderer(this, 0, 0);
up.addBox(6F, 10F, 6F, 4, 6, 4);
up.setTextureSize(16, 16);
down = new ModelRenderer(this, 0, 0);
down.addBox(6F, 0F, 6F, 4, 6, 4);
down.setTextureSize(16, 16);
north = new ModelRenderer(this, 0, 0);
north.addBox(6F, 6F, 0F, 4, 4, 6);
north.setTextureSize(16, 16);
east = new ModelRenderer(this, 0, 0);
east.addBox(10F, 6F, 6F, 6, 4, 4);
east.setTextureSize(16, 16);
south = new ModelRenderer(this, 0, 0);
south.addBox(6F, 6F, 10F, 4, 4, 6);
south.setTextureSize(16, 16);
west = new ModelRenderer(this, 0, 0);
west.addBox(0F, 6F, 6F, 6, 4, 4);
west.setTextureSize(16, 16);
}
@Override
public void render(Entity entity, float f, float f1, float f2, float f3, float f4, float f5) {
core.render(f5);
if (cable.hasConnection(ForgeDirection.UP)) {
up.render(f5);
}
if (cable.hasConnection(ForgeDirection.DOWN)) {
down.render(f5);
}
if (cable.hasConnection(ForgeDirection.NORTH)) {
north.render(f5);
}
if (cable.hasConnection(ForgeDirection.EAST)) {
east.render(f5);
}
if (cable.hasConnection(ForgeDirection.SOUTH)) {
south.render(f5);
}
if (cable.hasConnection(ForgeDirection.WEST)) {
west.render(f5);
}
}
}