Added new conveyor belt state and attempted to fix crates
This commit is contained in:
parent
787da0aeae
commit
a68490ba6f
10 changed files with 398 additions and 276 deletions
|
@ -11,7 +11,7 @@ import assemblyline.client.gui.GuiImprinter;
|
||||||
import assemblyline.client.render.BlockRenderingHandler;
|
import assemblyline.client.render.BlockRenderingHandler;
|
||||||
import assemblyline.client.render.RenderArmbot;
|
import assemblyline.client.render.RenderArmbot;
|
||||||
import assemblyline.client.render.RenderConveyorBelt;
|
import assemblyline.client.render.RenderConveyorBelt;
|
||||||
import assemblyline.client.render.RenderCrate;
|
import assemblyline.client.render.RenderCrateOld;
|
||||||
import assemblyline.client.render.RenderDetector;
|
import assemblyline.client.render.RenderDetector;
|
||||||
import assemblyline.client.render.RenderManipulator;
|
import assemblyline.client.render.RenderManipulator;
|
||||||
import assemblyline.client.render.RenderRejector;
|
import assemblyline.client.render.RenderRejector;
|
||||||
|
@ -49,7 +49,7 @@ public class ClientProxy extends CommonProxy
|
||||||
ClientRegistry.bindTileEntitySpecialRenderer(TileEntityRejector.class, new RenderRejector());
|
ClientRegistry.bindTileEntitySpecialRenderer(TileEntityRejector.class, new RenderRejector());
|
||||||
ClientRegistry.bindTileEntitySpecialRenderer(TileEntityDetector.class, new RenderDetector());
|
ClientRegistry.bindTileEntitySpecialRenderer(TileEntityDetector.class, new RenderDetector());
|
||||||
ClientRegistry.bindTileEntitySpecialRenderer(TileEntityManipulator.class, new RenderManipulator());
|
ClientRegistry.bindTileEntitySpecialRenderer(TileEntityManipulator.class, new RenderManipulator());
|
||||||
ClientRegistry.bindTileEntitySpecialRenderer(TileEntityCrate.class, new RenderCrate());
|
//ClientRegistry.bindTileEntitySpecialRenderer(TileEntityCrate.class, new RenderCrateOld());
|
||||||
ClientRegistry.bindTileEntitySpecialRenderer(TileEntityArmbot.class, new RenderArmbot());
|
ClientRegistry.bindTileEntitySpecialRenderer(TileEntityArmbot.class, new RenderArmbot());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -4,11 +4,6 @@
|
||||||
// Keep in mind that you still need to fill in some blanks
|
// Keep in mind that you still need to fill in some blanks
|
||||||
// - ZeuX
|
// - ZeuX
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
package assemblyline.client.model;
|
package assemblyline.client.model;
|
||||||
|
|
||||||
import net.minecraft.client.model.ModelBase;
|
import net.minecraft.client.model.ModelBase;
|
||||||
|
@ -16,63 +11,68 @@ import net.minecraft.client.model.ModelRenderer;
|
||||||
|
|
||||||
public class ModelAngledBelt extends ModelBase
|
public class ModelAngledBelt extends ModelBase
|
||||||
{
|
{
|
||||||
//fields
|
// fields
|
||||||
ModelRenderer MRoller1;
|
ModelRenderer MRoller1;
|
||||||
ModelRenderer bBELT;
|
ModelRenderer bBELT;
|
||||||
ModelRenderer MRoller2;
|
ModelRenderer MRoller2;
|
||||||
ModelRenderer tBELT;
|
ModelRenderer tBELT;
|
||||||
ModelRenderer MRoller3;
|
ModelRenderer MRoller3;
|
||||||
|
|
||||||
public ModelAngledBelt()
|
public ModelAngledBelt()
|
||||||
{
|
{
|
||||||
textureWidth = 128;
|
textureWidth = 128;
|
||||||
textureHeight = 128;
|
textureHeight = 128;
|
||||||
|
|
||||||
MRoller1 = new ModelRenderer(this, 0, 26);
|
MRoller1 = new ModelRenderer(this, 0, 26);
|
||||||
MRoller1.addBox(-7F, -1F, -1F, 14, 2, 2);
|
MRoller1.addBox(-7F, -1F, -1F, 14, 2, 2);
|
||||||
MRoller1.setRotationPoint(0F, 14F, 0F);
|
MRoller1.setRotationPoint(0F, 14F, 0F);
|
||||||
MRoller1.setTextureSize(128, 128);
|
MRoller1.setTextureSize(128, 128);
|
||||||
MRoller1.mirror = true;
|
MRoller1.mirror = true;
|
||||||
setRotation(MRoller1, 0.7853982F, 0F, 0F);
|
setRotation(MRoller1, 0.7853982F, 0F, 0F);
|
||||||
bBELT = new ModelRenderer(this, 0, 0);
|
bBELT = new ModelRenderer(this, 0, 0);
|
||||||
bBELT.addBox(0F, 0F, 0F, 14, 1, 23);
|
bBELT.addBox(0F, 0F, 0F, 14, 1, 23);
|
||||||
bBELT.setRotationPoint(-7F, 23.5F, -8F);
|
bBELT.setRotationPoint(-7F, 23.5F, -8F);
|
||||||
bBELT.setTextureSize(128, 128);
|
bBELT.setTextureSize(128, 128);
|
||||||
bBELT.mirror = true;
|
bBELT.mirror = true;
|
||||||
setRotation(bBELT, 0.7853982F, 0F, 0F);
|
setRotation(bBELT, 0.7853982F, 0F, 0F);
|
||||||
MRoller2 = new ModelRenderer(this, 0, 26);
|
MRoller2 = new ModelRenderer(this, 0, 26);
|
||||||
MRoller2.addBox(-7F, -1F, -1F, 14, 2, 2);
|
MRoller2.addBox(-7F, -1F, -1F, 14, 2, 2);
|
||||||
MRoller2.setRotationPoint(0F, 9F, 5F);
|
MRoller2.setRotationPoint(0F, 9F, 5F);
|
||||||
MRoller2.setTextureSize(128, 128);
|
MRoller2.setTextureSize(128, 128);
|
||||||
MRoller2.mirror = true;
|
MRoller2.mirror = true;
|
||||||
setRotation(MRoller2, 0.7853982F, 0F, 0F);
|
setRotation(MRoller2, 0.7853982F, 0F, 0F);
|
||||||
tBELT = new ModelRenderer(this, 0, 0);
|
tBELT = new ModelRenderer(this, 0, 0);
|
||||||
tBELT.addBox(0F, 0F, 0F, 14, 1, 23);
|
tBELT.addBox(0F, 0F, 0F, 14, 1, 23);
|
||||||
tBELT.setRotationPoint(-7F, 19F, -8F);
|
tBELT.setRotationPoint(-7F, 19F, -8F);
|
||||||
tBELT.setTextureSize(128, 128);
|
tBELT.setTextureSize(128, 128);
|
||||||
tBELT.mirror = true;
|
tBELT.mirror = true;
|
||||||
setRotation(tBELT, 0.7853982F, 0F, 0F);
|
setRotation(tBELT, 0.7853982F, 0F, 0F);
|
||||||
MRoller3 = new ModelRenderer(this, 0, 26);
|
MRoller3 = new ModelRenderer(this, 0, 26);
|
||||||
MRoller3.addBox(-7F, -1F, -1F, 14, 2, 2);
|
MRoller3.addBox(-7F, -1F, -1F, 14, 2, 2);
|
||||||
MRoller3.setRotationPoint(0F, 19F, -5F);
|
MRoller3.setRotationPoint(0F, 19F, -5F);
|
||||||
MRoller3.setTextureSize(128, 128);
|
MRoller3.setTextureSize(128, 128);
|
||||||
MRoller3.mirror = true;
|
MRoller3.mirror = true;
|
||||||
setRotation(MRoller3, 0.7853982F, 0F, 0F);
|
setRotation(MRoller3, 0.7853982F, 0F, 0F);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void render(float f5)
|
public void render(float f5, boolean slantAdjust)
|
||||||
{
|
{
|
||||||
MRoller1.render(f5);
|
if (slantAdjust)
|
||||||
bBELT.render(f5);
|
bBELT.setRotationPoint(-7F, 21.5F, -7F);
|
||||||
MRoller2.render(f5);
|
else
|
||||||
tBELT.render(f5);
|
bBELT.setRotationPoint(-7F, 23.5F, -8F);
|
||||||
MRoller3.render(f5);
|
|
||||||
}
|
MRoller1.render(f5);
|
||||||
|
bBELT.render(f5);
|
||||||
private void setRotation(ModelRenderer model, float x, float y, float z)
|
MRoller2.render(f5);
|
||||||
{
|
tBELT.render(f5);
|
||||||
model.rotateAngleX = x;
|
MRoller3.render(f5);
|
||||||
model.rotateAngleY = y;
|
}
|
||||||
model.rotateAngleZ = z;
|
|
||||||
}
|
private void setRotation(ModelRenderer model, float x, float y, float z)
|
||||||
|
{
|
||||||
|
model.rotateAngleX = x;
|
||||||
|
model.rotateAngleY = y;
|
||||||
|
model.rotateAngleZ = z;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -163,7 +163,7 @@ public class ModelConveyorBelt extends ModelBase
|
||||||
setRotation(c1, 0F, 0F, 0F);
|
setRotation(c1, 0F, 0F, 0F);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void render(float f5, float radians, boolean front, boolean back, boolean above)
|
public void render(float f5, float radians, boolean front, boolean back, boolean above, boolean legs)
|
||||||
{
|
{
|
||||||
boolean mid = front && back ? true : false;
|
boolean mid = front && back ? true : false;
|
||||||
boolean leftCap = !front && back ? true : false;
|
boolean leftCap = !front && back ? true : false;
|
||||||
|
@ -220,13 +220,16 @@ public class ModelConveyorBelt extends ModelBase
|
||||||
BRoller.render(f5);
|
BRoller.render(f5);
|
||||||
FRoller.render(f5);
|
FRoller.render(f5);
|
||||||
|
|
||||||
// legs
|
if (legs)
|
||||||
BRL.render(f5);
|
{
|
||||||
BML.render(f5);
|
// legs
|
||||||
FLL.render(f5);
|
BRL.render(f5);
|
||||||
BLL.render(f5);
|
BML.render(f5);
|
||||||
FRL.render(f5);
|
FLL.render(f5);
|
||||||
MRL.render(f5);
|
BLL.render(f5);
|
||||||
|
FRL.render(f5);
|
||||||
|
MRL.render(f5);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void setRotation(ModelRenderer model, float x, float y, float z)
|
private void setRotation(ModelRenderer model, float x, float y, float z)
|
||||||
|
|
|
@ -35,7 +35,7 @@ public class BlockRenderingHandler implements ISimpleBlockRenderingHandler
|
||||||
GL11.glTranslatef((float) 0.0F, (float) 1.5F, (float) 0.0F);
|
GL11.glTranslatef((float) 0.0F, (float) 1.5F, (float) 0.0F);
|
||||||
GL11.glRotatef(180f, 0f, 0f, 1f);
|
GL11.glRotatef(180f, 0f, 0f, 1f);
|
||||||
GL11.glBindTexture(GL11.GL_TEXTURE_2D, FMLClientHandler.instance().getClient().renderEngine.getTexture(AssemblyLine.TEXTURE_PATH + "belt/frame0.png"));
|
GL11.glBindTexture(GL11.GL_TEXTURE_2D, FMLClientHandler.instance().getClient().renderEngine.getTexture(AssemblyLine.TEXTURE_PATH + "belt/frame0.png"));
|
||||||
modelConveyorBelt.render(0.0625F, 0, false, false, false);
|
modelConveyorBelt.render(0.0625F, 0, false, false, false, false);
|
||||||
GL11.glPopMatrix();
|
GL11.glPopMatrix();
|
||||||
}
|
}
|
||||||
else if (block.blockID == AssemblyLine.blockDetector.blockID)
|
else if (block.blockID == AssemblyLine.blockDetector.blockID)
|
||||||
|
|
|
@ -48,19 +48,53 @@ public class RenderConveyorBelt extends TileEntitySpecialRenderer
|
||||||
GL11.glRotatef(-90f, 0f, 1f, 0f);
|
GL11.glRotatef(-90f, 0f, 1f, 0f);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
this.bindTextureByName(AssemblyLine.TEXTURE_PATH + "slantedbelt/frame" + frame + ".png");
|
|
||||||
|
|
||||||
if (slantType == SlantType.UP)
|
if (slantType == SlantType.UP)
|
||||||
{
|
{
|
||||||
|
this.bindTextureByName(AssemblyLine.TEXTURE_PATH + "slantedbelt/frame" + frame + ".png");
|
||||||
GL11.glTranslatef(0f, 0.8f, -0.8f);
|
GL11.glTranslatef(0f, 0.8f, -0.8f);
|
||||||
GL11.glRotatef(180f, 0f, 1f, 1f);
|
GL11.glRotatef(180f, 0f, 1f, 1f);
|
||||||
MODEL2.render(0.0625F);
|
boolean slantAdjust = false;
|
||||||
|
TileEntity test = tileEntity.worldObj.getBlockTileEntity(tileEntity.xCoord + tileEntity.getDirection().offsetX, tileEntity.yCoord, tileEntity.zCoord + tileEntity.getDirection().offsetZ);
|
||||||
|
if (test != null)
|
||||||
|
{
|
||||||
|
if (test instanceof TileEntityConveyorBelt)
|
||||||
|
{
|
||||||
|
if (((TileEntityConveyorBelt) test).getSlant() == SlantType.TOP)
|
||||||
|
{
|
||||||
|
GL11.glRotatef(10f, 1f, 0f, 0f);
|
||||||
|
slantAdjust = true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
MODEL2.render(0.0625F, true);
|
||||||
|
}
|
||||||
|
else if (slantType == SlantType.DOWN)
|
||||||
|
{
|
||||||
|
this.bindTextureByName(AssemblyLine.TEXTURE_PATH + "slantedbelt/frame" + frame + ".png");
|
||||||
|
GL11.glRotatef(180f, 0f, 1f, 0f);
|
||||||
|
boolean slantAdjust = false;
|
||||||
|
TileEntity test = tileEntity.worldObj.getBlockTileEntity(tileEntity.xCoord - tileEntity.getDirection().offsetX, tileEntity.yCoord, tileEntity.zCoord - tileEntity.getDirection().offsetZ);
|
||||||
|
if (test != null)
|
||||||
|
{
|
||||||
|
if (test instanceof TileEntityConveyorBelt)
|
||||||
|
{
|
||||||
|
if (((TileEntityConveyorBelt) test).getSlant() == SlantType.TOP)
|
||||||
|
{
|
||||||
|
GL11.glRotatef(-10f, 1f, 0f, 0f);
|
||||||
|
GL11.glTranslatef(0f, 0.25f, 0f);
|
||||||
|
slantAdjust = true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
MODEL2.render(0.0625F, slantAdjust);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
GL11.glRotatef(180f, 0f, 1f, 0f);
|
this.bindTextureByName(AssemblyLine.TEXTURE_PATH + "belt/frame" + frame + ".png");
|
||||||
MODEL2.render(0.0625F);
|
GL11.glRotatef(180, 0f, 1f, 0f);
|
||||||
|
GL11.glTranslatef(0f, -0.68f, 0f);
|
||||||
|
MODEL.render(0.0625f, (float) Math.toRadians(tileEntity.wheelRotation), tileEntity.getIsLastBelt(), tileEntity.getIsFirstBelt(), false, false);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
@ -82,7 +116,7 @@ public class RenderConveyorBelt extends TileEntitySpecialRenderer
|
||||||
}
|
}
|
||||||
|
|
||||||
this.bindTextureByName(AssemblyLine.TEXTURE_PATH + "belt/frame" + frame + ".png");
|
this.bindTextureByName(AssemblyLine.TEXTURE_PATH + "belt/frame" + frame + ".png");
|
||||||
MODEL.render(0.0625F, (float) Math.toRadians(tileEntity.wheelRotation), tileEntity.getIsLastBelt(), tileEntity.getIsFirstBelt(), false);
|
MODEL.render(0.0625F, (float) Math.toRadians(tileEntity.wheelRotation), tileEntity.getIsLastBelt(), tileEntity.getIsFirstBelt(), false, true);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,187 +1,35 @@
|
||||||
package assemblyline.client.render;
|
package assemblyline.client.render;
|
||||||
|
|
||||||
import net.minecraft.client.Minecraft;
|
import net.minecraft.block.Block;
|
||||||
import net.minecraft.client.gui.FontRenderer;
|
import net.minecraft.client.renderer.RenderBlocks;
|
||||||
import net.minecraft.client.renderer.OpenGlHelper;
|
import net.minecraft.world.IBlockAccess;
|
||||||
import net.minecraft.client.renderer.RenderBlocks;
|
import cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler;
|
||||||
import net.minecraft.client.renderer.RenderEngine;
|
|
||||||
import net.minecraft.client.renderer.entity.RenderItem;
|
public class RenderCrate implements ISimpleBlockRenderingHandler
|
||||||
import net.minecraft.client.renderer.entity.RenderManager;
|
{
|
||||||
import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer;
|
|
||||||
import net.minecraft.entity.item.EntityItem;
|
@Override
|
||||||
import net.minecraft.item.ItemStack;
|
public void renderInventoryBlock(Block block, int metadata, int modelID, RenderBlocks renderer)
|
||||||
import net.minecraft.tileentity.TileEntity;
|
{
|
||||||
import net.minecraft.world.World;
|
|
||||||
import net.minecraftforge.client.ForgeHooksClient;
|
}
|
||||||
import net.minecraftforge.common.ForgeDirection;
|
|
||||||
|
@Override
|
||||||
import org.lwjgl.opengl.GL11;
|
public boolean renderWorldBlock(IBlockAccess world, int x, int y, int z, Block block, int modelId, RenderBlocks renderer)
|
||||||
|
{
|
||||||
import assemblyline.common.block.TileEntityCrate;
|
return false;
|
||||||
|
}
|
||||||
public class RenderCrate extends TileEntitySpecialRenderer
|
|
||||||
{
|
@Override
|
||||||
private final RenderBlocks renderBlocks = new RenderBlocks();
|
public boolean shouldRender3DInInventory()
|
||||||
|
{
|
||||||
@Override
|
return false;
|
||||||
public void renderTileEntityAt(TileEntity var1, double x, double y, double z, float var8)
|
}
|
||||||
{
|
|
||||||
if (var1 instanceof TileEntityCrate)
|
@Override
|
||||||
{
|
public int getRenderId()
|
||||||
TileEntityCrate tileEntity = (TileEntityCrate) var1;
|
{
|
||||||
|
return 0;
|
||||||
RenderItem renderItem = ((RenderItem) RenderManager.instance.getEntityClassRenderObject(EntityItem.class));
|
}
|
||||||
|
|
||||||
String itemName = "Empty";
|
}
|
||||||
String amount = "";
|
|
||||||
ItemStack itemStack = tileEntity.getStackInSlot(0);
|
|
||||||
|
|
||||||
if (itemStack != null)
|
|
||||||
{
|
|
||||||
itemName = itemStack.getDisplayName();
|
|
||||||
amount = itemStack.stackSize + "";
|
|
||||||
}
|
|
||||||
|
|
||||||
for (int side = 2; side < 6; side++)
|
|
||||||
{
|
|
||||||
ForgeDirection direction = ForgeDirection.getOrientation(side);
|
|
||||||
this.setupLight(tileEntity, direction.offsetX, direction.offsetZ);
|
|
||||||
|
|
||||||
if (itemStack != null)
|
|
||||||
{
|
|
||||||
GL11.glPushMatrix();
|
|
||||||
|
|
||||||
switch (side)
|
|
||||||
{
|
|
||||||
case 2:
|
|
||||||
GL11.glTranslated(x + 0.65, y + 0.9, z - 0.01);
|
|
||||||
break;
|
|
||||||
case 3:
|
|
||||||
GL11.glTranslated(x + 0.35, y + 0.9, z + 1.01);
|
|
||||||
GL11.glRotatef(180, 0, 1, 0);
|
|
||||||
break;
|
|
||||||
case 4:
|
|
||||||
GL11.glTranslated(x - 0.01, y + 0.9, z + 0.35);
|
|
||||||
GL11.glRotatef(90, 0, 1, 0);
|
|
||||||
break;
|
|
||||||
case 5:
|
|
||||||
GL11.glTranslated(x + 1.01, y + 0.9, z + 0.65);
|
|
||||||
GL11.glRotatef(-90, 0, 1, 0);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
float scale = 0.03125F;
|
|
||||||
GL11.glScalef(0.6f * scale, 0.6f * scale, 0);
|
|
||||||
GL11.glRotatef(180, 0, 0, 1);
|
|
||||||
|
|
||||||
RenderEngine renderEngine = Minecraft.getMinecraft().renderEngine;
|
|
||||||
|
|
||||||
if (!ForgeHooksClient.renderInventoryItem(this.renderBlocks, renderEngine, itemStack, true, 0.0F, 0.0F, 0.0F))
|
|
||||||
{
|
|
||||||
renderItem.renderItemIntoGUI(this.getFontRenderer(), renderEngine, itemStack, 0, 0);
|
|
||||||
}
|
|
||||||
|
|
||||||
GL11.glPopMatrix();
|
|
||||||
}
|
|
||||||
|
|
||||||
this.renderText(itemName, side, 0.02f, x, y - 0.35f, z);
|
|
||||||
|
|
||||||
if (amount != "")
|
|
||||||
{
|
|
||||||
this.renderText(amount, side, 0.02f, x, y - 0.15f, z);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private void setupLight(TileEntity tileEntity, int xDifference, int zDifference)
|
|
||||||
{
|
|
||||||
World world = tileEntity.worldObj;
|
|
||||||
|
|
||||||
if (world.isBlockOpaqueCube(tileEntity.xCoord + xDifference, tileEntity.yCoord, tileEntity.zCoord + zDifference)) { return; }
|
|
||||||
|
|
||||||
int br = world.getLightBrightnessForSkyBlocks(tileEntity.xCoord + xDifference, tileEntity.yCoord, tileEntity.zCoord + zDifference, 0);
|
|
||||||
int var11 = br % 65536;
|
|
||||||
int var12 = br / 65536;
|
|
||||||
float scale = 0.6F;
|
|
||||||
OpenGlHelper.setLightmapTextureCoords(OpenGlHelper.lightmapTexUnit, var11 * scale, var12 * scale);
|
|
||||||
}
|
|
||||||
|
|
||||||
private void renderText(String text, int side, float maxScale, double x, double y, double z)
|
|
||||||
{
|
|
||||||
GL11.glPushMatrix();
|
|
||||||
|
|
||||||
GL11.glPolygonOffset(-10, -10);
|
|
||||||
GL11.glEnable(GL11.GL_POLYGON_OFFSET_FILL);
|
|
||||||
|
|
||||||
float displayX = 1 / 16;
|
|
||||||
float displayY = 1 / 16;
|
|
||||||
float displayWidth = 1 - (2 / 16);
|
|
||||||
float displayHeight = 1 - (2 / 16);
|
|
||||||
GL11.glTranslated(x, y, z);
|
|
||||||
|
|
||||||
switch (side)
|
|
||||||
{
|
|
||||||
case 3:
|
|
||||||
GL11.glTranslatef(0, 1, 0);
|
|
||||||
GL11.glRotatef(0, 0, 1, 0);
|
|
||||||
GL11.glRotatef(90, 1, 0, 0);
|
|
||||||
|
|
||||||
break;
|
|
||||||
case 2:
|
|
||||||
GL11.glTranslatef(1, 1, 1);
|
|
||||||
GL11.glRotatef(180, 0, 1, 0);
|
|
||||||
GL11.glRotatef(90, 1, 0, 0);
|
|
||||||
|
|
||||||
break;
|
|
||||||
case 5:
|
|
||||||
GL11.glTranslatef(0, 1, 1);
|
|
||||||
GL11.glRotatef(90, 0, 1, 0);
|
|
||||||
GL11.glRotatef(90, 1, 0, 0);
|
|
||||||
|
|
||||||
break;
|
|
||||||
case 4:
|
|
||||||
GL11.glTranslatef(1, 1, 0);
|
|
||||||
GL11.glRotatef(-90, 0, 1, 0);
|
|
||||||
GL11.glRotatef(90, 1, 0, 0);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Find Center
|
|
||||||
GL11.glTranslatef(displayWidth / 2, 1F, displayHeight / 2);
|
|
||||||
GL11.glRotatef(-90, 1, 0, 0);
|
|
||||||
FontRenderer fontRenderer = this.getFontRenderer();
|
|
||||||
|
|
||||||
int requiredWidth = Math.max(fontRenderer.getStringWidth(text), 1);
|
|
||||||
int lineHeight = fontRenderer.FONT_HEIGHT + 2;
|
|
||||||
int requiredHeight = lineHeight * 1;
|
|
||||||
float scaler = 0.8f;
|
|
||||||
float scaleX = (displayWidth / requiredWidth);
|
|
||||||
float scaleY = (displayHeight / requiredHeight);
|
|
||||||
float scale = (float) scaleX * scaler;
|
|
||||||
|
|
||||||
if (maxScale > 0)
|
|
||||||
{
|
|
||||||
scale = Math.min(scale, maxScale);
|
|
||||||
}
|
|
||||||
|
|
||||||
GL11.glScalef(scale, -scale, scale);
|
|
||||||
GL11.glDepthMask(false);
|
|
||||||
|
|
||||||
int offsetX;
|
|
||||||
int offsetY;
|
|
||||||
int realHeight = (int) Math.floor(displayHeight / scale);
|
|
||||||
int realWidth = (int) Math.floor(displayWidth / scale);
|
|
||||||
|
|
||||||
offsetX = (realWidth - requiredWidth) / 2;
|
|
||||||
offsetY = (realHeight - requiredHeight) / 2;
|
|
||||||
|
|
||||||
GL11.glDisable(GL11.GL_LIGHTING);
|
|
||||||
fontRenderer.drawString("\u00a7f" + text, offsetX - (realWidth / 2), 1 + offsetY - (realHeight / 2), 1);
|
|
||||||
GL11.glEnable(GL11.GL_LIGHTING);
|
|
||||||
GL11.glDepthMask(true);
|
|
||||||
GL11.glDisable(GL11.GL_POLYGON_OFFSET_FILL);
|
|
||||||
|
|
||||||
GL11.glPopMatrix();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
187
src/minecraft/assemblyline/client/render/RenderCrateOld.java
Normal file
187
src/minecraft/assemblyline/client/render/RenderCrateOld.java
Normal file
|
@ -0,0 +1,187 @@
|
||||||
|
package assemblyline.client.render;
|
||||||
|
|
||||||
|
import net.minecraft.client.Minecraft;
|
||||||
|
import net.minecraft.client.gui.FontRenderer;
|
||||||
|
import net.minecraft.client.renderer.OpenGlHelper;
|
||||||
|
import net.minecraft.client.renderer.RenderBlocks;
|
||||||
|
import net.minecraft.client.renderer.RenderEngine;
|
||||||
|
import net.minecraft.client.renderer.entity.RenderItem;
|
||||||
|
import net.minecraft.client.renderer.entity.RenderManager;
|
||||||
|
import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer;
|
||||||
|
import net.minecraft.entity.item.EntityItem;
|
||||||
|
import net.minecraft.item.ItemStack;
|
||||||
|
import net.minecraft.tileentity.TileEntity;
|
||||||
|
import net.minecraft.world.World;
|
||||||
|
import net.minecraftforge.client.ForgeHooksClient;
|
||||||
|
import net.minecraftforge.common.ForgeDirection;
|
||||||
|
|
||||||
|
import org.lwjgl.opengl.GL11;
|
||||||
|
|
||||||
|
import assemblyline.common.block.TileEntityCrate;
|
||||||
|
|
||||||
|
public class RenderCrateOld extends TileEntitySpecialRenderer
|
||||||
|
{
|
||||||
|
private final RenderBlocks renderBlocks = new RenderBlocks();
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void renderTileEntityAt(TileEntity var1, double x, double y, double z, float var8)
|
||||||
|
{
|
||||||
|
if (var1 instanceof TileEntityCrate)
|
||||||
|
{
|
||||||
|
TileEntityCrate tileEntity = (TileEntityCrate) var1;
|
||||||
|
|
||||||
|
RenderItem renderItem = ((RenderItem) RenderManager.instance.getEntityClassRenderObject(EntityItem.class));
|
||||||
|
|
||||||
|
String itemName = "Empty";
|
||||||
|
String amount = "";
|
||||||
|
ItemStack itemStack = tileEntity.getStackInSlot(0);
|
||||||
|
|
||||||
|
if (itemStack != null)
|
||||||
|
{
|
||||||
|
itemName = itemStack.getDisplayName();
|
||||||
|
amount = Integer.toString(itemStack.stackSize);
|
||||||
|
}
|
||||||
|
|
||||||
|
for (int side = 2; side < 6; side++)
|
||||||
|
{
|
||||||
|
ForgeDirection direction = ForgeDirection.getOrientation(side);
|
||||||
|
this.setupLight(tileEntity, direction.offsetX, direction.offsetZ);
|
||||||
|
|
||||||
|
if (itemStack != null)
|
||||||
|
{
|
||||||
|
GL11.glPushMatrix();
|
||||||
|
|
||||||
|
switch (side)
|
||||||
|
{
|
||||||
|
case 2:
|
||||||
|
GL11.glTranslated(x + 0.65, y + 0.9, z - 0.01);
|
||||||
|
break;
|
||||||
|
case 3:
|
||||||
|
GL11.glTranslated(x + 0.35, y + 0.9, z + 1.01);
|
||||||
|
GL11.glRotatef(180, 0, 1, 0);
|
||||||
|
break;
|
||||||
|
case 4:
|
||||||
|
GL11.glTranslated(x - 0.01, y + 0.9, z + 0.35);
|
||||||
|
GL11.glRotatef(90, 0, 1, 0);
|
||||||
|
break;
|
||||||
|
case 5:
|
||||||
|
GL11.glTranslated(x + 1.01, y + 0.9, z + 0.65);
|
||||||
|
GL11.glRotatef(-90, 0, 1, 0);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
float scale = 0.03125F;
|
||||||
|
GL11.glScalef(0.6f * scale, 0.6f * scale, 0);
|
||||||
|
GL11.glRotatef(180, 0, 0, 1);
|
||||||
|
|
||||||
|
RenderEngine renderEngine = Minecraft.getMinecraft().renderEngine;
|
||||||
|
EntityItem ei = new EntityItem(tileEntity.worldObj, 0.0, 0.0, 0.0, itemStack);
|
||||||
|
if (!ForgeHooksClient.renderInventoryItem(this.renderBlocks, renderEngine, itemStack, true, 0.0F, 0.0F, 0.0F))
|
||||||
|
{
|
||||||
|
renderItem.renderItemIntoGUI(this.getFontRenderer(), renderEngine, itemStack, 0, 0);
|
||||||
|
}
|
||||||
|
|
||||||
|
GL11.glPopMatrix();
|
||||||
|
}
|
||||||
|
|
||||||
|
this.renderText(itemName, side, 0.02f, x, y - 0.35f, z);
|
||||||
|
|
||||||
|
if (amount != "")
|
||||||
|
{
|
||||||
|
this.renderText(amount, side, 0.02f, x, y - 0.15f, z);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void setupLight(TileEntity tileEntity, int xDifference, int zDifference)
|
||||||
|
{
|
||||||
|
World world = tileEntity.worldObj;
|
||||||
|
|
||||||
|
if (world.isBlockOpaqueCube(tileEntity.xCoord + xDifference, tileEntity.yCoord, tileEntity.zCoord + zDifference)) { return; }
|
||||||
|
|
||||||
|
int br = world.getLightBrightnessForSkyBlocks(tileEntity.xCoord + xDifference, tileEntity.yCoord, tileEntity.zCoord + zDifference, 0);
|
||||||
|
int var11 = br % 65536;
|
||||||
|
int var12 = br / 65536;
|
||||||
|
float scale = 0.6F;
|
||||||
|
OpenGlHelper.setLightmapTextureCoords(OpenGlHelper.lightmapTexUnit, var11 * scale, var12 * scale);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void renderText(String text, int side, float maxScale, double x, double y, double z)
|
||||||
|
{
|
||||||
|
GL11.glPushMatrix();
|
||||||
|
|
||||||
|
GL11.glPolygonOffset(-10, -10);
|
||||||
|
GL11.glEnable(GL11.GL_POLYGON_OFFSET_FILL);
|
||||||
|
|
||||||
|
float displayX = 1 / 16;
|
||||||
|
float displayY = 1 / 16;
|
||||||
|
float displayWidth = 1 - (2 / 16);
|
||||||
|
float displayHeight = 1 - (2 / 16);
|
||||||
|
GL11.glTranslated(x, y, z);
|
||||||
|
|
||||||
|
switch (side)
|
||||||
|
{
|
||||||
|
case 3:
|
||||||
|
GL11.glTranslatef(0, 1, 0);
|
||||||
|
GL11.glRotatef(0, 0, 1, 0);
|
||||||
|
GL11.glRotatef(90, 1, 0, 0);
|
||||||
|
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
GL11.glTranslatef(1, 1, 1);
|
||||||
|
GL11.glRotatef(180, 0, 1, 0);
|
||||||
|
GL11.glRotatef(90, 1, 0, 0);
|
||||||
|
|
||||||
|
break;
|
||||||
|
case 5:
|
||||||
|
GL11.glTranslatef(0, 1, 1);
|
||||||
|
GL11.glRotatef(90, 0, 1, 0);
|
||||||
|
GL11.glRotatef(90, 1, 0, 0);
|
||||||
|
|
||||||
|
break;
|
||||||
|
case 4:
|
||||||
|
GL11.glTranslatef(1, 1, 0);
|
||||||
|
GL11.glRotatef(-90, 0, 1, 0);
|
||||||
|
GL11.glRotatef(90, 1, 0, 0);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Find Center
|
||||||
|
GL11.glTranslatef(displayWidth / 2, 1F, displayHeight / 2);
|
||||||
|
GL11.glRotatef(-90, 1, 0, 0);
|
||||||
|
FontRenderer fontRenderer = this.getFontRenderer();
|
||||||
|
|
||||||
|
int requiredWidth = Math.max(fontRenderer.getStringWidth(text), 1);
|
||||||
|
int lineHeight = fontRenderer.FONT_HEIGHT + 2;
|
||||||
|
int requiredHeight = lineHeight * 1;
|
||||||
|
float scaler = 0.8f;
|
||||||
|
float scaleX = (displayWidth / requiredWidth);
|
||||||
|
float scaleY = (displayHeight / requiredHeight);
|
||||||
|
float scale = (float) scaleX * scaler;
|
||||||
|
|
||||||
|
if (maxScale > 0)
|
||||||
|
{
|
||||||
|
scale = Math.min(scale, maxScale);
|
||||||
|
}
|
||||||
|
|
||||||
|
GL11.glScalef(scale, -scale, scale);
|
||||||
|
GL11.glDepthMask(false);
|
||||||
|
|
||||||
|
int offsetX;
|
||||||
|
int offsetY;
|
||||||
|
int realHeight = (int) Math.floor(displayHeight / scale);
|
||||||
|
int realWidth = (int) Math.floor(displayWidth / scale);
|
||||||
|
|
||||||
|
offsetX = (realWidth - requiredWidth) / 2;
|
||||||
|
offsetY = (realHeight - requiredHeight) / 2;
|
||||||
|
|
||||||
|
GL11.glDisable(GL11.GL_LIGHTING);
|
||||||
|
fontRenderer.drawString("\u00a7f" + text, offsetX - (realWidth / 2), 1 + offsetY - (realHeight / 2), 1);
|
||||||
|
GL11.glEnable(GL11.GL_LIGHTING);
|
||||||
|
GL11.glDepthMask(true);
|
||||||
|
GL11.glDisable(GL11.GL_POLYGON_OFFSET_FILL);
|
||||||
|
|
||||||
|
GL11.glPopMatrix();
|
||||||
|
}
|
||||||
|
}
|
|
@ -90,6 +90,12 @@ public class BlockCrate extends BlockMachine
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getRenderType()
|
||||||
|
{
|
||||||
|
return super.getRenderType();
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Inserts a the itemStack the player is holding into the crate.
|
* Inserts a the itemStack the player is holding into the crate.
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
package assemblyline.common.machine.belt;
|
package assemblyline.common.machine.belt;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import java.util.Random;
|
||||||
|
|
||||||
import net.minecraft.entity.Entity;
|
import net.minecraft.entity.Entity;
|
||||||
import net.minecraft.entity.EntityLiving;
|
import net.minecraft.entity.EntityLiving;
|
||||||
|
@ -9,6 +10,7 @@ import net.minecraft.entity.player.EntityPlayer;
|
||||||
import net.minecraft.tileentity.TileEntity;
|
import net.minecraft.tileentity.TileEntity;
|
||||||
import net.minecraft.util.AxisAlignedBB;
|
import net.minecraft.util.AxisAlignedBB;
|
||||||
import net.minecraft.util.MathHelper;
|
import net.minecraft.util.MathHelper;
|
||||||
|
import net.minecraft.world.IBlockAccess;
|
||||||
import net.minecraft.world.World;
|
import net.minecraft.world.World;
|
||||||
import net.minecraftforge.common.ForgeDirection;
|
import net.minecraftforge.common.ForgeDirection;
|
||||||
import universalelectricity.core.UniversalElectricity;
|
import universalelectricity.core.UniversalElectricity;
|
||||||
|
@ -32,6 +34,30 @@ public class BlockConveyorBelt extends BlockMachine
|
||||||
this.setBlockBounds(0, 0, 0, 1, 0.3f, 1);
|
this.setBlockBounds(0, 0, 0, 1, 0.3f, 1);
|
||||||
this.setCreativeTab(TabAssemblyLine.INSTANCE);
|
this.setCreativeTab(TabAssemblyLine.INSTANCE);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void setBlockBoundsBasedOnState(IBlockAccess world, int x, int y, int z)
|
||||||
|
{
|
||||||
|
TileEntity t = world.getBlockTileEntity(x, y, z);
|
||||||
|
|
||||||
|
if (t != null && t instanceof TileEntityConveyorBelt)
|
||||||
|
{
|
||||||
|
TileEntityConveyorBelt tileEntity = (TileEntityConveyorBelt) t;
|
||||||
|
|
||||||
|
if (tileEntity.getSlant() == SlantType.UP || tileEntity.getSlant() == SlantType.DOWN)
|
||||||
|
{
|
||||||
|
this.setBlockBounds(0f, 0f, 0f, 1f, 0.98f, 1f);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (tileEntity.getSlant() == SlantType.TOP)
|
||||||
|
{
|
||||||
|
this.setBlockBounds(0f, 0.68f, 0f, 1f, 0.98f, 1f);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
this.setBlockBounds(0f, 0f, 0f, 1f, 0.3f, 1f);
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public AxisAlignedBB getSelectedBoundingBoxFromPool(World world, int x, int y, int z)
|
public AxisAlignedBB getSelectedBoundingBoxFromPool(World world, int x, int y, int z)
|
||||||
|
@ -42,7 +68,14 @@ public class BlockConveyorBelt extends BlockMachine
|
||||||
{
|
{
|
||||||
TileEntityConveyorBelt tileEntity = (TileEntityConveyorBelt) t;
|
TileEntityConveyorBelt tileEntity = (TileEntityConveyorBelt) t;
|
||||||
|
|
||||||
if (tileEntity.getSlant() != SlantType.NONE) { return AxisAlignedBB.getAABBPool().addOrModifyAABBInPool((double) x + this.minX, (double) y + this.minY, (double) z + this.minZ, (double) x + 1, (double) y + 1, (double) z + 1); }
|
if (tileEntity.getSlant() == SlantType.UP || tileEntity.getSlant() == SlantType.DOWN)
|
||||||
|
{
|
||||||
|
return AxisAlignedBB.getAABBPool().addOrModifyAABBInPool((double) x + this.minX, (double) y + this.minY, (double) z + this.minZ, (double) x + 1, (double) y + 1, (double) z + 1);
|
||||||
|
}
|
||||||
|
if (tileEntity.getSlant() == SlantType.TOP)
|
||||||
|
{
|
||||||
|
return AxisAlignedBB.getAABBPool().addOrModifyAABBInPool((double) x + this.minX, (double) y + 0.68f, (double) z + this.minZ, (double) x + this.maxX, (double) y + 0.98f, (double) z + this.maxZ);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return AxisAlignedBB.getAABBPool().addOrModifyAABBInPool((double) x + this.minX, (double) y + this.minY, (double) z + this.minZ, (double) x + this.maxX, (double) y + this.maxY, (double) z + this.maxZ);
|
return AxisAlignedBB.getAABBPool().addOrModifyAABBInPool((double) x + this.minX, (double) y + this.minY, (double) z + this.minZ, (double) x + this.maxX, (double) y + this.maxY, (double) z + this.maxZ);
|
||||||
|
@ -57,7 +90,7 @@ public class BlockConveyorBelt extends BlockMachine
|
||||||
{
|
{
|
||||||
TileEntityConveyorBelt tileEntity = (TileEntityConveyorBelt) t;
|
TileEntityConveyorBelt tileEntity = (TileEntityConveyorBelt) t;
|
||||||
|
|
||||||
if (tileEntity.getSlant() != SlantType.NONE)
|
if (tileEntity.getSlant() == SlantType.UP || tileEntity.getSlant() == SlantType.DOWN)
|
||||||
{
|
{
|
||||||
AxisAlignedBB boundBottom = AxisAlignedBB.getAABBPool().addOrModifyAABBInPool(x, y, z, x + 1, y + 0.3, z + 1);
|
AxisAlignedBB boundBottom = AxisAlignedBB.getAABBPool().addOrModifyAABBInPool(x, y, z, x + 1, y + 0.3, z + 1);
|
||||||
AxisAlignedBB boundTop = null;
|
AxisAlignedBB boundTop = null;
|
||||||
|
@ -83,7 +116,7 @@ public class BlockConveyorBelt extends BlockMachine
|
||||||
boundTop = AxisAlignedBB.getAABBPool().addOrModifyAABBInPool(x, y, z, x + 1, y + 0.8, z + (float) direction.offsetZ / -2);
|
boundTop = AxisAlignedBB.getAABBPool().addOrModifyAABBInPool(x, y, z, x + 1, y + 0.8, z + (float) direction.offsetZ / -2);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else if (tileEntity.getSlant() == SlantType.DOWN)
|
||||||
{
|
{
|
||||||
if (direction.offsetX > 0)
|
if (direction.offsetX > 0)
|
||||||
{
|
{
|
||||||
|
@ -115,6 +148,17 @@ public class BlockConveyorBelt extends BlockMachine
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (tileEntity.getSlant() == SlantType.TOP)
|
||||||
|
{
|
||||||
|
AxisAlignedBB newBounds = AxisAlignedBB.getAABBPool().addOrModifyAABBInPool(x, y + 0.68, z, x + 1, y + 0.98, z + 1);
|
||||||
|
|
||||||
|
if (newBounds != null && par5AxisAlignedBB.intersectsWith(newBounds))
|
||||||
|
{
|
||||||
|
par6List.add(newBounds);
|
||||||
|
}
|
||||||
|
|
||||||
|
return;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
AxisAlignedBB newBounds = AxisAlignedBB.getAABBPool().addOrModifyAABBInPool(x, y, z, x + 1, y + 0.3, z + 1);
|
AxisAlignedBB newBounds = AxisAlignedBB.getAABBPool().addOrModifyAABBInPool(x, y, z, x + 1, y + 0.3, z + 1);
|
||||||
|
@ -247,7 +291,7 @@ public class BlockConveyorBelt extends BlockMachine
|
||||||
entity.motionX += difference * 0.06;
|
entity.motionX += difference * 0.06;
|
||||||
// /entity.posX = x + 0.5;
|
// /entity.posX = x + 0.5;
|
||||||
}
|
}
|
||||||
|
|
||||||
((EntityItem) entity).age++;
|
((EntityItem) entity).age++;
|
||||||
|
|
||||||
boolean foundSneaking = false;
|
boolean foundSneaking = false;
|
||||||
|
@ -256,7 +300,7 @@ public class BlockConveyorBelt extends BlockMachine
|
||||||
if (player.isSneaking())
|
if (player.isSneaking())
|
||||||
foundSneaking = true;
|
foundSneaking = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (foundSneaking)
|
if (foundSneaking)
|
||||||
((EntityItem) entity).delayBeforeCanPickup = 0;
|
((EntityItem) entity).delayBeforeCanPickup = 0;
|
||||||
else
|
else
|
||||||
|
|
|
@ -30,7 +30,7 @@ public class TileEntityConveyorBelt extends TileEntityAssemblyNetwork implements
|
||||||
{
|
{
|
||||||
public enum SlantType
|
public enum SlantType
|
||||||
{
|
{
|
||||||
NONE, UP, DOWN
|
NONE, UP, DOWN, TOP
|
||||||
}
|
}
|
||||||
|
|
||||||
public static final int MAX_FRAME = 13;
|
public static final int MAX_FRAME = 13;
|
||||||
|
@ -120,7 +120,7 @@ public class TileEntityConveyorBelt extends TileEntityAssemblyNetwork implements
|
||||||
|
|
||||||
if (this.isRunning())
|
if (this.isRunning())
|
||||||
{
|
{
|
||||||
if (this.ticks % (80) == 0) //sound is 4 seconds long (20 ticks/second)
|
if (this.ticks % (10) == 0) //sound is 0.5 seconds long (20 ticks/second)
|
||||||
Minecraft.getMinecraft().sndManager.playSound("assemblyline.conveyor", this.xCoord, this.yCoord, this.zCoord, 0.125f, 0.3f);
|
Minecraft.getMinecraft().sndManager.playSound("assemblyline.conveyor", this.xCoord, this.yCoord, this.zCoord, 0.125f, 0.3f);
|
||||||
|
|
||||||
this.wheelRotation += 40;
|
this.wheelRotation += 40;
|
||||||
|
@ -131,7 +131,7 @@ public class TileEntityConveyorBelt extends TileEntityAssemblyNetwork implements
|
||||||
float wheelRotPct = wheelRotation / 360f;
|
float wheelRotPct = wheelRotation / 360f;
|
||||||
|
|
||||||
// Sync the animation. Slant belts are slower.
|
// Sync the animation. Slant belts are slower.
|
||||||
if (this.getSlant() == SlantType.NONE)
|
if (this.getSlant() == SlantType.NONE || this.getSlant() == SlantType.TOP)
|
||||||
{
|
{
|
||||||
this.animFrame = (int) (wheelRotPct * MAX_FRAME);
|
this.animFrame = (int) (wheelRotPct * MAX_FRAME);
|
||||||
if (this.animFrame < 0)
|
if (this.animFrame < 0)
|
||||||
|
|
Loading…
Reference in a new issue