package mods.eln.generic;
import net.minecraft.client.Minecraft;
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
import net.minecraft.util.DamageSource;
import net.minecraftforge.client.IItemRenderer;
import net.minecraftforge.common.ISpecialArmor;
public class SharedItem extends GenericItemUsingDamage<GenericItemUsingDamageDescriptor> implements IItemRenderer, ISpecialArmor {
public SharedItem() {
super();
}
@Override
public boolean handleRenderType(ItemStack item, ItemRenderType type) {
GenericItemUsingDamageDescriptor d = getDescriptor(item);
if (d == null) return false;
return d.handleRenderType(item, type);
}
@Override
public boolean shouldUseRenderHelper(ItemRenderType type, ItemStack item, ItemRendererHelper helper) {
GenericItemUsingDamageDescriptor d = getDescriptor(item);
if (d == null) return false;
return d.shouldUseRenderHelper(type, item, helper);
}
/*
public boolean isValidArmor(ItemStack stack, int armorType, Entity entity) {
return true;
}
@Override
public String getArmorTexture(ItemStack stack, Entity entity, int slot, int layer) {
return "eln:textures/armor/copper_layer_1.png";
}
public ModelBiped getArmorModel(EntityLivingBase entityLiving, ItemStack itemStack, int armorSlot) {
return new ModelBiped();
}*/
@Override
public void renderItem(ItemRenderType type, ItemStack item, Object... data) {
Minecraft.getMinecraft().mcProfiler.startSection("SharedItem");
switch (type) {
case ENTITY:
// GL11.glScalef(0.5f, 0.5f, 0.5f);
// GL11.glTranslatef(0.f,-0.5f,0.5f);
// GL11.glRotatef(90,0f,1f,0f);
// GL11.glTranslatef(0.00f, 0.3f, 0.0f);
break;
case EQUIPPED:
//GL11.glTranslatef(0.50f, 1, 0.5f);
//GL11.glRotatef(130,1f,0.0f,1f);
break;
case FIRST_PERSON_MAP:
//GL11.glTranslatef(0.f,-0.5f,0.5f);
break;
case INVENTORY:
//GL11.glScalef(1.0f, 1f, 1.0f);
//GL11.glRotatef(45, 0, 1, 0);
break;
default:
break;
}
GenericItemUsingDamageDescriptor d = getDescriptor(item);
if (d != null) {
d.renderItem(type, item, data);
}
Minecraft.getMinecraft().mcProfiler.endSection();
}
@Override
public ArmorProperties getProperties(EntityLivingBase player,
ItemStack armor, DamageSource source, double damage, int slot) {
return new ArmorProperties(10, 1.0, 10000);
}
@Override
public int getArmorDisplay(EntityPlayer player, ItemStack armor, int slot) {
return 4;
}
@Override
public void damageArmor(EntityLivingBase entity, ItemStack stack,
DamageSource source, int damage, int slot) {
}
}