update textures #2
|
@ -30,9 +30,8 @@ public abstract class ModelBakery
|
||||||
"blocks/destroy_stage_2", "blocks/destroy_stage_3",
|
"blocks/destroy_stage_2", "blocks/destroy_stage_3",
|
||||||
"blocks/destroy_stage_4", "blocks/destroy_stage_5",
|
"blocks/destroy_stage_4", "blocks/destroy_stage_5",
|
||||||
"blocks/destroy_stage_6", "blocks/destroy_stage_7",
|
"blocks/destroy_stage_6", "blocks/destroy_stage_7",
|
||||||
"blocks/destroy_stage_8", "blocks/destroy_stage_9",
|
"blocks/destroy_stage_8", "blocks/destroy_stage_9"
|
||||||
"items/empty_armor_slot_helmet", "items/empty_armor_slot_chestplate",
|
);
|
||||||
"items/empty_armor_slot_leggings", "items/empty_armor_slot_boots");
|
|
||||||
protected static final String MISSING = "builtin/missing";
|
protected static final String MISSING = "builtin/missing";
|
||||||
public static final ModelBlock MODEL_GENERATED = (ModelBlock)new ModelBlock(null).add().d("");
|
public static final ModelBlock MODEL_GENERATED = (ModelBlock)new ModelBlock(null).add().d("");
|
||||||
public static final ModelBlock MODEL_ENTITY = (ModelBlock)new ModelBlock(null).add().d("");
|
public static final ModelBlock MODEL_ENTITY = (ModelBlock)new ModelBlock(null).add().d("");
|
||||||
|
|
|
@ -49,7 +49,7 @@ public class RenderHorse extends RenderLiving<EntityHorse>
|
||||||
*/
|
*/
|
||||||
protected String getEntityTexture(EntityHorse entity)
|
protected String getEntityTexture(EntityHorse entity)
|
||||||
{
|
{
|
||||||
if (!entity.func_110239_cn())
|
if (!entity.hasSpecificTexture())
|
||||||
{
|
{
|
||||||
switch (entity.getHorseType())
|
switch (entity.getHorseType())
|
||||||
{
|
{
|
||||||
|
@ -66,15 +66,15 @@ public class RenderHorse extends RenderLiving<EntityHorse>
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
return this.func_110848_b(entity);
|
return this.loadHorseTexture(entity);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private String func_110848_b(EntityHorse horse)
|
private String loadHorseTexture(EntityHorse horse)
|
||||||
{
|
{
|
||||||
String s = horse.getHorseTexture();
|
String s = horse.getHorseTexture();
|
||||||
|
|
||||||
if (!horse.func_175507_cI())
|
if (!horse.hasValidTexture())
|
||||||
{
|
{
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
|
@ -124,12 +124,12 @@ public class ModelHorse extends ModelBase
|
||||||
this.setBoxRotation(this.head, 0.5235988F, 0.0F, 0.0F);
|
this.setBoxRotation(this.head, 0.5235988F, 0.0F, 0.0F);
|
||||||
this.field_178711_b = new ModelRenderer(this, 24, 18);
|
this.field_178711_b = new ModelRenderer(this, 24, 18);
|
||||||
this.field_178711_b.addBox(-2.0F, -10.0F, -7.0F, 4, 3, 6);
|
this.field_178711_b.addBox(-2.0F, -10.0F, -7.0F, 4, 3, 6);
|
||||||
this.field_178711_b.setRotationPoint(0.0F, 3.95F, -10.0F);
|
this.field_178711_b.setRotationPoint(0.0F, 0.02F, 0.02F);
|
||||||
this.setBoxRotation(this.field_178711_b, 0.5235988F, 0.0F, 0.0F);
|
this.setBoxRotation(this.field_178711_b, 0.0F, 0.0F, 0.0F);
|
||||||
this.field_178712_c = new ModelRenderer(this, 24, 27);
|
this.field_178712_c = new ModelRenderer(this, 24, 27);
|
||||||
this.field_178712_c.addBox(-2.0F, -7.0F, -6.5F, 4, 2, 5);
|
this.field_178712_c.addBox(-2.0F, -7.0F, -6.5F, 4, 2, 5);
|
||||||
this.field_178712_c.setRotationPoint(0.0F, 4.0F, -10.0F);
|
this.field_178712_c.setRotationPoint(0.0F, 0.0F, 0.0F);
|
||||||
this.setBoxRotation(this.field_178712_c, 0.5235988F, 0.0F, 0.0F);
|
this.setBoxRotation(this.field_178712_c, 0.0F, 0.0F, 0.0F);
|
||||||
this.head.addChild(this.field_178711_b);
|
this.head.addChild(this.field_178711_b);
|
||||||
this.head.addChild(this.field_178712_c);
|
this.head.addChild(this.field_178712_c);
|
||||||
this.horseLeftEar = new ModelRenderer(this, 0, 0);
|
this.horseLeftEar = new ModelRenderer(this, 0, 0);
|
||||||
|
@ -211,14 +211,14 @@ public class ModelHorse extends ModelBase
|
||||||
public void render(Entity entityIn, float p_78088_2_, float p_78088_3_, float p_78088_4_, float p_78088_5_, float p_78088_6_, float scale)
|
public void render(Entity entityIn, float p_78088_2_, float p_78088_3_, float p_78088_4_, float p_78088_5_, float p_78088_6_, float scale)
|
||||||
{
|
{
|
||||||
EntityHorse entityhorse = (EntityHorse)entityIn;
|
EntityHorse entityhorse = (EntityHorse)entityIn;
|
||||||
int i = entityhorse.getHorseType();
|
int i = entityhorse == null ? 0 : entityhorse.getHorseType();
|
||||||
float f = entityhorse.getGrassEatingAmount(0.0F);
|
float f = entityhorse == null ? 0.0f :entityhorse.getGrassEatingAmount(0.0F);
|
||||||
boolean flag = entityhorse.isAdultHorse();
|
boolean flag = entityhorse == null || entityhorse.isAdultHorse();
|
||||||
boolean flag1 = flag && entityhorse.isHorseSaddled();
|
boolean flag1 = flag && (entityhorse == null || entityhorse.isHorseSaddled());
|
||||||
boolean flag2 = flag && entityhorse.isChested();
|
boolean flag2 = flag && entityhorse != null && entityhorse.isChested();
|
||||||
boolean flag3 = i == 1 || i == 2;
|
boolean flag3 = i == 1 || i == 2;
|
||||||
float f1 = entityhorse.getHorseSize();
|
float f1 = entityhorse == null ? 0.5f : entityhorse.getHorseSize();
|
||||||
boolean flag4 = entityhorse.passenger != null;
|
boolean flag4 = entityhorse != null && entityhorse.passenger != null;
|
||||||
|
|
||||||
if (flag1)
|
if (flag1)
|
||||||
{
|
{
|
||||||
|
|
|
@ -2,15 +2,19 @@ package client.renderer.tileentity;
|
||||||
|
|
||||||
import org.lwjgl.opengl.GL11;
|
import org.lwjgl.opengl.GL11;
|
||||||
|
|
||||||
|
import client.Client;
|
||||||
import client.renderer.GlState;
|
import client.renderer.GlState;
|
||||||
import client.renderer.layers.LayerArmor;
|
import client.renderer.layers.LayerArmor;
|
||||||
|
import client.renderer.model.ModelHorse;
|
||||||
import common.block.tech.BlockChest;
|
import common.block.tech.BlockChest;
|
||||||
import common.block.tile.BlockSign;
|
import common.block.tile.BlockSign;
|
||||||
import common.block.tile.BlockStandingSign;
|
import common.block.tile.BlockStandingSign;
|
||||||
import common.entity.types.EntityLiving;
|
import common.entity.types.EntityLiving;
|
||||||
|
import common.init.ItemRegistry;
|
||||||
import common.item.ItemStack;
|
import common.item.ItemStack;
|
||||||
import common.item.block.ItemSign;
|
import common.item.block.ItemSign;
|
||||||
import common.item.tool.ItemArmor;
|
import common.item.tool.ItemArmor;
|
||||||
|
import common.item.tool.ItemHorseArmor;
|
||||||
import common.tileentity.TileEntityChest;
|
import common.tileentity.TileEntityChest;
|
||||||
import common.tileentity.TileEntitySign;
|
import common.tileentity.TileEntitySign;
|
||||||
import common.util.Facing;
|
import common.util.Facing;
|
||||||
|
@ -46,15 +50,18 @@ public class TileEntityItemStackRenderer {
|
||||||
return ((ItemArmor)TileEntityItemStackRenderer.this.stack.getItem()).armorType.getIndex() == armorSlot ? TileEntityItemStackRenderer.this.stack : null;
|
return ((ItemArmor)TileEntityItemStackRenderer.this.stack.getItem()).armorType.getIndex() == armorSlot ? TileEntityItemStackRenderer.this.stack : null;
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
private final ModelHorse horse = new ModelHorse();
|
||||||
|
|
||||||
public void renderByItem(ItemStack stack) {
|
public void renderByItem(ItemStack stack) {
|
||||||
if(stack.getItem() != null && stack.getItem().getBlock() instanceof BlockChest chest) {
|
if(stack.getItem() != null && stack.getItem().getBlock() instanceof BlockChest chest) {
|
||||||
this.state = chest.getState().withProperty(BlockChest.FACING, Facing.SOUTH);
|
this.state = chest.getState().withProperty(BlockChest.FACING, Facing.SOUTH);
|
||||||
TileEntityRendererDispatcher.instance.renderTileEntityAt(this.chest, 0.0D, 0.0D, 0.0D, 0.0F);
|
TileEntityRendererDispatcher.instance.renderTileEntityAt(this.chest, 0.0D, 0.0D, 0.0D, 0.0F);
|
||||||
|
this.state = null;
|
||||||
}
|
}
|
||||||
else if(stack.getItem() instanceof ItemSign sign) {
|
else if(stack.getItem() instanceof ItemSign sign) {
|
||||||
this.state = sign.getBlock().getState().withProperty(BlockStandingSign.ROTATION, 8);
|
this.state = sign.getBlock().getState().withProperty(BlockStandingSign.ROTATION, 8);
|
||||||
TileEntityRendererDispatcher.instance.renderTileEntityAt(this.sign, 0.0D, 0.0D, 0.0D, 0.0F);
|
TileEntityRendererDispatcher.instance.renderTileEntityAt(this.sign, 0.0D, 0.0D, 0.0D, 0.0F);
|
||||||
|
this.state = null;
|
||||||
}
|
}
|
||||||
else if(stack.getItem() instanceof ItemArmor armor) {
|
else if(stack.getItem() instanceof ItemArmor armor) {
|
||||||
this.stack = stack;
|
this.stack = stack;
|
||||||
|
@ -84,6 +91,21 @@ public class TileEntityItemStackRenderer {
|
||||||
if(cull)
|
if(cull)
|
||||||
GlState.enableCull();
|
GlState.enableCull();
|
||||||
GL11.glPopMatrix();
|
GL11.glPopMatrix();
|
||||||
|
this.stack = null;
|
||||||
|
}
|
||||||
|
else if(stack.getItem() instanceof ItemHorseArmor horseArmor) {
|
||||||
|
GL11.glPushMatrix();
|
||||||
|
GL11.glTranslatef(0.9f, 0.5f, 0.0f);
|
||||||
|
GL11.glRotatef(180.0f, 0.0f, 1.0f, 0.0f);
|
||||||
|
GL11.glScalef(0.85f, -0.85f, 0.85f);
|
||||||
|
boolean cull = GlState.isCullEnabled();
|
||||||
|
if(cull)
|
||||||
|
GlState.disableCull();
|
||||||
|
Client.CLIENT.getTextureManager().bindTexture("textures/armor/" + horseArmor.getArmorTexture() + "_horse.png");
|
||||||
|
this.horse.render(null, 0, 0, 0, 0, 0, 0.0625F);
|
||||||
|
if(cull)
|
||||||
|
GlState.enableCull();
|
||||||
|
GL11.glPopMatrix();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Before Width: | Height: | Size: 5.1 KiB After Width: | Height: | Size: 5.1 KiB |
Before Width: | Height: | Size: 5 KiB After Width: | Height: | Size: 5 KiB |
Before Width: | Height: | Size: 4.9 KiB After Width: | Height: | Size: 4.9 KiB |
Before Width: | Height: | Size: 1.2 KiB |
Before Width: | Height: | Size: 1.4 KiB |
Before Width: | Height: | Size: 1.3 KiB |
Before Width: | Height: | Size: 1.2 KiB |
Before Width: | Height: | Size: 163 B |
Before Width: | Height: | Size: 193 B |
Before Width: | Height: | Size: 169 B |
Before Width: | Height: | Size: 166 B |
Before Width: | Height: | Size: 5.1 KiB |
Before Width: | Height: | Size: 5.3 KiB |
Before Width: | Height: | Size: 182 B |
Before Width: | Height: | Size: 5.5 KiB |
Before Width: | Height: | Size: 5.1 KiB |
Before Width: | Height: | Size: 5.2 KiB |
Before Width: | Height: | Size: 5.2 KiB |
Before Width: | Height: | Size: 5.3 KiB |
Before Width: | Height: | Size: 154 B |
Before Width: | Height: | Size: 175 B |
Before Width: | Height: | Size: 140 B |
Before Width: | Height: | Size: 461 B |
Before Width: | Height: | Size: 136 B |
Before Width: | Height: | Size: 111 B |
Before Width: | Height: | Size: 112 B |
Before Width: | Height: | Size: 110 B |
Before Width: | Height: | Size: 102 B |
Before Width: | Height: | Size: 154 B |
Before Width: | Height: | Size: 175 B |
Before Width: | Height: | Size: 141 B |
Before Width: | Height: | Size: 430 B |
Before Width: | Height: | Size: 136 B |
Before Width: | Height: | Size: 154 B |
Before Width: | Height: | Size: 172 B |
Before Width: | Height: | Size: 141 B |
Before Width: | Height: | Size: 404 B |
Before Width: | Height: | Size: 136 B |
Before Width: | Height: | Size: 5 KiB |
Before Width: | Height: | Size: 5.3 KiB |
Before Width: | Height: | Size: 5.1 KiB |
Before Width: | Height: | Size: 5.5 KiB |
Before Width: | Height: | Size: 5 KiB |
Before Width: | Height: | Size: 5.2 KiB |
Before Width: | Height: | Size: 5.1 KiB |
Before Width: | Height: | Size: 5.3 KiB |
Before Width: | Height: | Size: 1.1 KiB |
Before Width: | Height: | Size: 1.2 KiB |
Before Width: | Height: | Size: 1.1 KiB |
Before Width: | Height: | Size: 1.1 KiB |
Before Width: | Height: | Size: 4.9 KiB |
Before Width: | Height: | Size: 1.3 KiB |
Before Width: | Height: | Size: 1.4 KiB |
Before Width: | Height: | Size: 1.3 KiB |
Before Width: | Height: | Size: 1.3 KiB |
|
@ -20,6 +20,7 @@ import common.entity.npc.EntityNPC;
|
||||||
import common.entity.types.EntityAnimal;
|
import common.entity.types.EntityAnimal;
|
||||||
import common.entity.types.EntityLiving;
|
import common.entity.types.EntityLiving;
|
||||||
import common.init.Blocks;
|
import common.init.Blocks;
|
||||||
|
import common.init.ItemRegistry;
|
||||||
import common.init.Items;
|
import common.init.Items;
|
||||||
import common.init.SoundEvent;
|
import common.init.SoundEvent;
|
||||||
import common.inventory.IInvBasic;
|
import common.inventory.IInvBasic;
|
||||||
|
@ -27,6 +28,7 @@ import common.inventory.InventoryBasic;
|
||||||
import common.item.Item;
|
import common.item.Item;
|
||||||
import common.item.ItemStack;
|
import common.item.ItemStack;
|
||||||
import common.item.spawner.ItemMobTemplate;
|
import common.item.spawner.ItemMobTemplate;
|
||||||
|
import common.item.tool.ItemHorseArmor;
|
||||||
import common.pathfinding.PathNavigateGround;
|
import common.pathfinding.PathNavigateGround;
|
||||||
import common.tags.TagObject;
|
import common.tags.TagObject;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
@ -45,9 +47,6 @@ public class EntityHorse extends EntityAnimal implements IInvBasic
|
||||||
return p_apply_1_ instanceof EntityHorse && ((EntityHorse)p_apply_1_).isBreeding();
|
return p_apply_1_ instanceof EntityHorse && ((EntityHorse)p_apply_1_).isBreeding();
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
private static final String[] horseArmorTextures = new String[] {null, "textures/armor/horse_armor_iron.png", "textures/armor/horse_armor_gold.png", "textures/armor/horse_armor_diamond.png"};
|
|
||||||
private static final String[] HORSE_ARMOR_TEXTURES_ABBR = new String[] {"", "meo", "goo", "dio"};
|
|
||||||
private static final int[] armorValues = new int[] {0, 5, 7, 11};
|
|
||||||
private static final String[] horseTextures = new String[] {"textures/creature/horse_white.png", "textures/creature/horse_creamy.png", "textures/creature/horse_chestnut.png", "textures/creature/horse_brown.png", "textures/creature/horse_black.png", "textures/creature/horse_gray.png", "textures/creature/horse_darkbrown.png"};
|
private static final String[] horseTextures = new String[] {"textures/creature/horse_white.png", "textures/creature/horse_creamy.png", "textures/creature/horse_chestnut.png", "textures/creature/horse_brown.png", "textures/creature/horse_black.png", "textures/creature/horse_gray.png", "textures/creature/horse_darkbrown.png"};
|
||||||
private static final String[] HORSE_TEXTURES_ABBR = new String[] {"hwh", "hcr", "hch", "hbr", "hbl", "hgr", "hdb"};
|
private static final String[] HORSE_TEXTURES_ABBR = new String[] {"hwh", "hcr", "hch", "hbr", "hbl", "hgr", "hdb"};
|
||||||
private static final String[] horseMarkingTextures = new String[] {null, "textures/creature/horse_markings_white.png", "textures/creature/horse_markings_whitefield.png", "textures/creature/horse_markings_whitedots.png", "textures/creature/horse_markings_blackdots.png"};
|
private static final String[] horseMarkingTextures = new String[] {null, "textures/creature/horse_markings_white.png", "textures/creature/horse_markings_whitefield.png", "textures/creature/horse_markings_whitedots.png", "textures/creature/horse_markings_blackdots.png"};
|
||||||
|
@ -78,7 +77,7 @@ public class EntityHorse extends EntityAnimal implements IInvBasic
|
||||||
private int gallopTime;
|
private int gallopTime;
|
||||||
private String texturePrefix;
|
private String texturePrefix;
|
||||||
private String[] horseTexturesArray = new String[3];
|
private String[] horseTexturesArray = new String[3];
|
||||||
private boolean field_175508_bO = false;
|
private boolean validTexture = false;
|
||||||
|
|
||||||
public EntityHorse(World worldIn)
|
public EntityHorse(World worldIn)
|
||||||
{
|
{
|
||||||
|
@ -262,28 +261,10 @@ public class EntityHorse extends EntityAnimal implements IInvBasic
|
||||||
return this.getHorseWatchableBoolean(8);
|
return this.getHorseWatchableBoolean(8);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
public ItemHorseArmor getHorseArmorItem()
|
||||||
* Returns type of armor from DataWatcher (0 = iron, 1 = gold, 2 = diamond)
|
|
||||||
*/
|
|
||||||
public int getHorseArmorIndexSynced()
|
|
||||||
{
|
{
|
||||||
return this.dataWatcher.getWatchableObjectInt(22);
|
Item item = ItemRegistry.byId(this.dataWatcher.getWatchableObjectInt(22));
|
||||||
}
|
return item instanceof ItemHorseArmor armor ? armor : null;
|
||||||
|
|
||||||
/**
|
|
||||||
* 0 = iron, 1 = gold, 2 = diamond
|
|
||||||
*/
|
|
||||||
private int getHorseArmorIndex(ItemStack itemStackIn)
|
|
||||||
{
|
|
||||||
if (itemStackIn == null)
|
|
||||||
{
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
Item item = itemStackIn.getItem();
|
|
||||||
return item == Items.iron_horse_armor ? 1 : (item == Items.gold_horse_armor ? 2 : (item == Items.diamond_horse_armor ? 3 : 0));
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public boolean isEatingHaystack()
|
public boolean isEatingHaystack()
|
||||||
|
@ -306,12 +287,9 @@ public class EntityHorse extends EntityAnimal implements IInvBasic
|
||||||
return this.hasReproduced;
|
return this.hasReproduced;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* Set horse armor stack (for example: new ItemStack(Items.iron_horse_armor))
|
|
||||||
*/
|
|
||||||
public void setHorseArmorStack(ItemStack itemStackIn)
|
public void setHorseArmorStack(ItemStack itemStackIn)
|
||||||
{
|
{
|
||||||
this.dataWatcher.updateObject(22, Integer.valueOf(this.getHorseArmorIndex(itemStackIn)));
|
this.dataWatcher.updateObject(22, itemStackIn != null && itemStackIn.getItem() instanceof ItemHorseArmor armor ? ItemRegistry.getId(armor) : 0);
|
||||||
this.resetTexturePrefix();
|
this.resetTexturePrefix();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -366,7 +344,8 @@ public class EntityHorse extends EntityAnimal implements IInvBasic
|
||||||
*/
|
*/
|
||||||
public int getTotalArmorValue()
|
public int getTotalArmorValue()
|
||||||
{
|
{
|
||||||
return armorValues[this.getHorseArmorIndexSynced()];
|
ItemHorseArmor armor = this.getHorseArmorItem();
|
||||||
|
return armor != null ? armor.getArmorValue() : 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -689,9 +668,9 @@ public class EntityHorse extends EntityAnimal implements IInvBasic
|
||||||
return 400;
|
return 400;
|
||||||
}
|
}
|
||||||
|
|
||||||
public boolean func_110239_cn()
|
public boolean hasSpecificTexture()
|
||||||
{
|
{
|
||||||
return this.getHorseType() == 0 || this.getHorseArmorIndexSynced() > 0;
|
return this.getHorseType() == 0 || this.getHorseArmorItem() != null;
|
||||||
}
|
}
|
||||||
|
|
||||||
private void resetTexturePrefix()
|
private void resetTexturePrefix()
|
||||||
|
@ -699,9 +678,9 @@ public class EntityHorse extends EntityAnimal implements IInvBasic
|
||||||
this.texturePrefix = null;
|
this.texturePrefix = null;
|
||||||
}
|
}
|
||||||
|
|
||||||
public boolean func_175507_cI()
|
public boolean hasValidTexture()
|
||||||
{
|
{
|
||||||
return this.field_175508_bO;
|
return this.validTexture;
|
||||||
}
|
}
|
||||||
|
|
||||||
private void setHorseTexturePaths()
|
private void setHorseTexturePaths()
|
||||||
|
@ -720,7 +699,7 @@ public class EntityHorse extends EntityAnimal implements IInvBasic
|
||||||
|
|
||||||
if (k >= horseTextures.length)
|
if (k >= horseTextures.length)
|
||||||
{
|
{
|
||||||
this.field_175508_bO = false;
|
this.validTexture = false;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -729,7 +708,7 @@ public class EntityHorse extends EntityAnimal implements IInvBasic
|
||||||
|
|
||||||
if (l >= horseMarkingTextures.length)
|
if (l >= horseMarkingTextures.length)
|
||||||
{
|
{
|
||||||
this.field_175508_bO = false;
|
this.validTexture = false;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -742,18 +721,19 @@ public class EntityHorse extends EntityAnimal implements IInvBasic
|
||||||
this.texturePrefix = this.texturePrefix + "_" + i + "_";
|
this.texturePrefix = this.texturePrefix + "_" + i + "_";
|
||||||
}
|
}
|
||||||
|
|
||||||
int i1 = this.getHorseArmorIndexSynced();
|
ItemHorseArmor i1 = this.getHorseArmorItem();
|
||||||
|
|
||||||
if (i1 >= horseArmorTextures.length)
|
// if (i1 >= horseArmorTextures.length)
|
||||||
{
|
// {
|
||||||
this.field_175508_bO = false;
|
// this.field_175508_bO = false;
|
||||||
}
|
// }
|
||||||
else
|
// else
|
||||||
{
|
// {
|
||||||
this.horseTexturesArray[2] = horseArmorTextures[i1];
|
this.horseTexturesArray[2] = i1 == null ? null : "textures/armor/" + i1.getArmorTexture() + "_horse.png";
|
||||||
this.texturePrefix = this.texturePrefix + HORSE_ARMOR_TEXTURES_ABBR[i1];
|
if(i1 != null)
|
||||||
this.field_175508_bO = true;
|
this.texturePrefix = this.texturePrefix + i1.getArmorTexture();
|
||||||
}
|
this.validTexture = true;
|
||||||
|
// }
|
||||||
}
|
}
|
||||||
|
|
||||||
public String getHorseTexture()
|
public String getHorseTexture()
|
||||||
|
@ -816,22 +796,7 @@ public class EntityHorse extends EntityAnimal implements IInvBasic
|
||||||
|
|
||||||
if (this.canWearArmor())
|
if (this.canWearArmor())
|
||||||
{
|
{
|
||||||
int i = -1;
|
if (itemstack.getItem() instanceof ItemHorseArmor)
|
||||||
|
|
||||||
if (itemstack.getItem() == Items.iron_horse_armor)
|
|
||||||
{
|
|
||||||
i = 1;
|
|
||||||
}
|
|
||||||
else if (itemstack.getItem() == Items.gold_horse_armor)
|
|
||||||
{
|
|
||||||
i = 2;
|
|
||||||
}
|
|
||||||
else if (itemstack.getItem() == Items.diamond_horse_armor)
|
|
||||||
{
|
|
||||||
i = 3;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (i >= 0)
|
|
||||||
{
|
{
|
||||||
if (!this.isTame())
|
if (!this.isTame())
|
||||||
{
|
{
|
||||||
|
@ -1757,7 +1722,7 @@ public class EntityHorse extends EntityAnimal implements IInvBasic
|
||||||
*/
|
*/
|
||||||
public static boolean isArmorItem(Item p_146085_0_)
|
public static boolean isArmorItem(Item p_146085_0_)
|
||||||
{
|
{
|
||||||
return p_146085_0_ == Items.iron_horse_armor || p_146085_0_ == Items.gold_horse_armor || p_146085_0_ == Items.diamond_horse_armor;
|
return p_146085_0_ instanceof ItemHorseArmor;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -14,7 +14,6 @@ import common.item.Item;
|
||||||
import common.item.ItemStack;
|
import common.item.ItemStack;
|
||||||
import common.model.Model;
|
import common.model.Model;
|
||||||
import common.model.ModelProvider;
|
import common.model.ModelProvider;
|
||||||
import common.model.Transform;
|
|
||||||
import common.tileentity.TileEntity;
|
import common.tileentity.TileEntity;
|
||||||
import common.util.BlockPos;
|
import common.util.BlockPos;
|
||||||
import common.util.BoundingBox;
|
import common.util.BoundingBox;
|
||||||
|
@ -24,23 +23,8 @@ import common.world.World;
|
||||||
|
|
||||||
public class ItemArmor extends Item
|
public class ItemArmor extends Item
|
||||||
{
|
{
|
||||||
// public static final String[] EMPTY_SLOT_NAMES = new String[] {"items/empty_armor_slot_helmet", "items/empty_armor_slot_chestplate", "items/empty_armor_slot_leggings", "items/empty_armor_slot_boots"};
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Stores the armor type: 0 is helmet, 1 is plate, 2 is legs and 3 is boots
|
|
||||||
*/
|
|
||||||
public final UsageSlot armorType;
|
public final UsageSlot armorType;
|
||||||
|
|
||||||
/** Holds the amount of damage that the armor reduces at full durability. */
|
|
||||||
public final int damageReduceAmount;
|
public final int damageReduceAmount;
|
||||||
|
|
||||||
/**
|
|
||||||
* Used on RenderPlayer to select the correspondent armor to be rendered on the player: 0 is cloth, 1 is chain, 2 is
|
|
||||||
* iron, 3 is diamond and 4 is gold.
|
|
||||||
*/
|
|
||||||
// public final int renderIndex;
|
|
||||||
|
|
||||||
/** The EnumArmorMaterial used for this ItemArmor */
|
|
||||||
private final ToolMaterial material;
|
private final ToolMaterial material;
|
||||||
private final String texture;
|
private final String texture;
|
||||||
|
|
||||||
|
@ -49,7 +33,6 @@ public class ItemArmor extends Item
|
||||||
this.material = material;
|
this.material = material;
|
||||||
this.texture = texture;
|
this.texture = texture;
|
||||||
this.armorType = armorType;
|
this.armorType = armorType;
|
||||||
// this.renderIndex = renderIndex;
|
|
||||||
this.damageReduceAmount = material.getDamageReduction(armorType);
|
this.damageReduceAmount = material.getDamageReduction(armorType);
|
||||||
this.setMaxDamage(material.getDurability(armorType));
|
this.setMaxDamage(material.getDurability(armorType));
|
||||||
this.setTab(CheatTab.ARMOR);
|
this.setTab(CheatTab.ARMOR);
|
||||||
|
|
|
@ -1,8 +1,11 @@
|
||||||
package common.item.tool;
|
package common.item.tool;
|
||||||
|
|
||||||
|
import common.attributes.UsageSlot;
|
||||||
import common.init.ToolMaterial;
|
import common.init.ToolMaterial;
|
||||||
import common.item.CheatTab;
|
import common.item.CheatTab;
|
||||||
import common.item.Item;
|
import common.item.Item;
|
||||||
|
import common.model.Model;
|
||||||
|
import common.model.ModelProvider;
|
||||||
|
|
||||||
public class ItemHorseArmor extends Item {
|
public class ItemHorseArmor extends Item {
|
||||||
private final ToolMaterial material;
|
private final ToolMaterial material;
|
||||||
|
@ -15,7 +18,19 @@ public class ItemHorseArmor extends Item {
|
||||||
this.setTab(CheatTab.ARMOR);
|
this.setTab(CheatTab.ARMOR);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public int getArmorValue() {
|
||||||
|
return this.material.getDamageReduction(UsageSlot.BODY);
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getArmorTexture() {
|
||||||
|
return this.texture;
|
||||||
|
}
|
||||||
|
|
||||||
public boolean isMagnetic() {
|
public boolean isMagnetic() {
|
||||||
return this.material.isMagnetic();
|
return this.material.isMagnetic();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public Model getModel(ModelProvider provider, String name) {
|
||||||
|
return provider.getModel(provider.getEntityModel(), this.getTransform());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|