mirror of
https://github.com/HbmMods/Hbm-s-Nuclear-Tech-GIT.git
synced 2026-01-25 10:32:49 +00:00
60 lines
1.7 KiB
Java
60 lines
1.7 KiB
Java
package com.hbm.render.block;
|
|
|
|
import com.hbm.blocks.generic.BlockReeds;
|
|
|
|
import cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler;
|
|
import net.minecraft.block.Block;
|
|
import net.minecraft.client.renderer.RenderBlocks;
|
|
import net.minecraft.client.renderer.Tessellator;
|
|
import net.minecraft.init.Blocks;
|
|
import net.minecraft.util.IIcon;
|
|
import net.minecraft.world.IBlockAccess;
|
|
|
|
public class RenderReeds implements ISimpleBlockRenderingHandler {
|
|
|
|
@Override public void renderInventoryBlock(Block block, int metadata, int modelId, RenderBlocks renderer) { }
|
|
|
|
@Override
|
|
public boolean renderWorldBlock(IBlockAccess world, int x, int y, int z, Block block, int modelId, RenderBlocks renderer) {
|
|
|
|
Tessellator tessellator = Tessellator.instance;
|
|
int colorMult = block.colorMultiplier(world, x, y, z);
|
|
float r = (float) (colorMult >> 16 & 255) / 255.0F;
|
|
float g = (float) (colorMult >> 8 & 255) / 255.0F;
|
|
float b = (float) (colorMult & 255) / 255.0F;
|
|
float m = 0.75F;
|
|
|
|
tessellator.setColorOpaque_F(r * m, g * m, b * m);
|
|
|
|
int depth = 0;
|
|
for(int i = y - 1; i > 0 ; i--) {
|
|
Block water = world.getBlock(x, i, z);
|
|
depth = y - i;
|
|
if(water != Blocks.water && water != Blocks.flowing_water) break;
|
|
}
|
|
|
|
BlockReeds reeds = (BlockReeds) block;
|
|
|
|
for(int i = 0; i < depth; i++) {
|
|
|
|
int brightness = block.getMixedBrightnessForBlock(world, x, y - i, z);
|
|
tessellator.setBrightness(brightness);
|
|
|
|
IIcon icon = reeds.getIcon(i == 0 ? 0 : i == depth - 1 ? 2 : 1);
|
|
renderer.drawCrossedSquares(icon, x, y - i, z, 1.0F);
|
|
}
|
|
|
|
return true;
|
|
}
|
|
|
|
@Override
|
|
public boolean shouldRender3DInInventory(int modelId) {
|
|
return false;
|
|
}
|
|
|
|
@Override
|
|
public int getRenderId() {
|
|
return BlockReeds.renderID;
|
|
}
|
|
}
|