Files
TinkersConstruct/src/main/java/tconstruct/client/AmmoItemRenderer.java
T

57 lines
1.9 KiB
Java

package tconstruct.client;
import tconstruct.library.weaponry.IAmmo;
import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.FontRenderer;
import net.minecraft.item.ItemStack;
import org.lwjgl.opengl.GL11;
public class AmmoItemRenderer extends FlexibleToolRenderer {
//public static FontRenderer fontRenderer;
public AmmoItemRenderer() {
// super(true);
//fontRenderer = new FontRenderer(Minecraft.getMinecraft().gameSettings, new ResourceLocation(Reference.RESOURCE, "textures/font/border_numbers.png"), Minecraft.getMinecraft().renderEngine, false);
}
@Override
public boolean handleRenderType(ItemStack item, ItemRenderType type) {
if(type == ItemRenderType.INVENTORY)
return true;
return super.handleRenderType(item, type);
}
@Override
public void renderItem(ItemRenderType type, ItemStack item, Object... data) {
// render the item regularly
super.renderItem(type, item, data);
//RenderItem.getInstance().renderItemIntoGUI(Minecraft.getMinecraft().fontRenderer, Minecraft.getMinecraft().renderEngine, item, 0,0);
if(item.getTagCompound() == null || type != ItemRenderType.INVENTORY)
return;
// render custom stacksize
renderAmmoCount(item);
}
public void renderAmmoCount(ItemStack item)
{
if(!(item.getItem() instanceof IAmmo))
return;
int amount = ((IAmmo) item.getItem()).getAmmoCount(item);
String str = String.valueOf(amount);
GL11.glDisable(GL11.GL_LIGHTING);
GL11.glDisable(GL11.GL_DEPTH_TEST);
GL11.glDisable(GL11.GL_BLEND);
GL11.glScalef(0.7f, 0.7f, 0.7f);
FontRenderer fontRenderer = Minecraft.getMinecraft().fontRenderer;
fontRenderer.drawStringWithShadow(str, 7 + 19 - 2 - fontRenderer.getStringWidth(str), 7 + 6 + 3, 16777215);
GL11.glEnable(GL11.GL_LIGHTING);
GL11.glEnable(GL11.GL_DEPTH_TEST);
}
}