- 65
- 6
Снова здравствуйте!И снова проблема
Рукав не двигается вместе с рукой:
Делал по: [1.6.4]Гайд: создание брони с нестандартной моделью и [Гайд] Бронь с моделью 1.7.10.
Рукав не двигается вместе с рукой:
Делал по: [1.6.4]Гайд: создание брони с нестандартной моделью и [Гайд] Бронь с моделью 1.7.10.
Код Предмета:
package ru.mrtenfan.travicraft.armors;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import net.minecraft.client.model.ModelBiped;
import net.minecraft.entity.Entity;
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemArmor;
import net.minecraft.item.ItemStack;
import ru.mrtenfan.travicraft.Main;
public class WolfArmor extends ItemArmor {
public WolfArmor(int id, int armorType) {
super(Main.WOLF, id, armorType);
this.setCreativeTab(Main.tabTravi);
this.setMaxStackSize(1);
}
@Override
public String getArmorTexture(ItemStack stack, Entity entity, int slot,
String type) {
return "travicraft:textures/models/armors/WolfArmor.png"; //текстурка брони на игроке
}
ModelBiped WolfArmor = new ModelBiped(); //вместо WolfArmor называем как хотим
@Override
@SideOnly(Side.CLIENT)
public ModelBiped getArmorModel(EntityLivingBase entityLiving,
ItemStack itemStack, int armorSlot) {
if(itemStack != null){
if(itemStack.getItem() instanceof WolfArmor){
int type = ((ItemArmor)itemStack.getItem()).armorType;
WolfArmor = Main.proxy.getWolfArmorModel(3);
// TestMOD-ваш гл класс, proxy - это переменная с сервер прокси [пример: public static ServerProxy proxy1;]
//Все это,это регистрация модели в прокси .Где (0) это тип брони. 1-нагрудник, 2 - штаны , 3 - ботинки
}
if(WolfArmor != null){
WolfArmor.bipedHead.showModel = armorSlot == 0;
WolfArmor.bipedHeadwear.showModel = armorSlot == 10;
WolfArmor.bipedBody.showModel = armorSlot == 1 || armorSlot == 2;
WolfArmor.bipedRightArm.showModel = armorSlot == 1;
WolfArmor.bipedLeftArm.showModel = armorSlot == 1;
WolfArmor.bipedRightLeg.showModel = armorSlot == 2 || armorSlot == 3;
WolfArmor.bipedLeftLeg.showModel = armorSlot == 2 || armorSlot == 3;
WolfArmor.isSneak = entityLiving.isSneaking();
WolfArmor.isRiding = entityLiving.isRiding();
WolfArmor.isChild = entityLiving.isChild();
if(entityLiving instanceof EntityPlayer){
WolfArmor.aimedBow =((EntityPlayer)entityLiving).getItemInUseDuration() > 2;
}
}
}
return WolfArmor;
}
}
Код модели:
// Date: 07.11.2019 19:35:35
// Template version 1.1
// Java generated by Techne
// Keep in mind that you still need to fill in some blanks
// - ZeuX
package ru.mrtenfan.travicraft.models;
import org.lwjgl.opengl.GL11;
import net.minecraft.client.model.ModelBiped;
import net.minecraft.client.model.ModelRenderer;
import net.minecraft.entity.Entity;
import ru.mrtenfan.travicraft.armors.WolfArmor;
public class WolfArmor_model extends ModelBiped
{
//fields
ModelRenderer wolfhead;
ModelRenderer wolfnose;
ModelRenderer wolfearright;
ModelRenderer helmet;
ModelRenderer wolfearleft;
ModelRenderer wolftail;
ModelRenderer chestplate;
ModelRenderer rightarmarmor;
ModelRenderer leftarmarmor;
ModelRenderer rightlegarmor;
ModelRenderer leftlegarmor;
public WolfArmor_model(float f)
{
textureWidth = 128;
textureHeight = 64;
wolfhead = new ModelRenderer(this, 49, 18);
wolfhead.addBox(-3F, -7F, -6F, 6, 6, 4);
wolfhead.setRotationPoint(0F, 0F, 0F);
wolfhead.setTextureSize(128, 64);
wolfhead.mirror = true;
setRotation(wolfhead, 0F, 0F, 0F);
wolfnose = new ModelRenderer(this, 68, 26);
wolfnose.addBox(-1.5F, -4F, -10F, 3, 3, 4);
wolfnose.setRotationPoint(0F, 0F, 0F);
wolfnose.setTextureSize(128, 64);
wolfnose.mirror = true;
setRotation(wolfnose, 0F, 0F, 0F);
wolfearright = new ModelRenderer(this, 101, 4);
wolfearright.addBox(-3F, -10F, -4F, 2, 2, 1);
wolfearright.setRotationPoint(0F, 0F, 0F);
wolfearright.setTextureSize(128, 64);
wolfearright.mirror = true;
setRotation(wolfearright, 0F, 0F, 0F);
helmet = new ModelRenderer(this, 49, 0);
helmet.addBox(-4F, -8F, -4F, 8, 8, 8);
helmet.setRotationPoint(0F, 0F, 0F);
helmet.setTextureSize(128, 64);
helmet.mirror = true;
setRotation(helmet, 0F, 0F, 0F);
wolfearleft = new ModelRenderer(this, 23, 4);
wolfearleft.addBox(1F, -10F, -4F, 2, 2, 1);
wolfearleft.setRotationPoint(0F, 0F, 0F);
wolfearleft.setTextureSize(128, 64);
wolfearleft.mirror = true;
setRotation(wolfearleft, 0F, 0F, 0F);
wolftail = new ModelRenderer(this, 60, 54);
wolftail.addBox(-1F, 5.5F, -9.5F, 2, 8, 2);
wolftail.setRotationPoint(0F, 0F, 0F);
wolftail.setTextureSize(128, 64);
wolftail.mirror = true;
setRotation(wolftail, 1.130066F, 0F, 0F);
chestplate = new ModelRenderer(this, 50, 35);
chestplate.addBox(-4.5F, 0F, -2.5F, 9, 12, 5);
chestplate.setRotationPoint(0F, 0F, 0F);
chestplate.setTextureSize(128, 64);
chestplate.mirror = true;
setRotation(chestplate, 0F, 0F, 0F);
rightarmarmor = new ModelRenderer(this, 83, 39);
rightarmarmor.addBox(-3.5F, -2.5F, -2.5F, 5, 8, 5);
rightarmarmor.setRotationPoint(0F, 0F, 0F);
rightarmarmor.setTextureSize(128, 64);
rightarmarmor.mirror = true;
setRotation(rightarmarmor, 0F, 0F, 0F);
leftarmarmor = new ModelRenderer(this, 25, 39);
leftarmarmor.addBox(-1.5F, -2.5F, -2.5F, 5, 8, 5);
leftarmarmor.setRotationPoint(0F, 0F, 0F);
leftarmarmor.setTextureSize(128, 64);
leftarmarmor.mirror = true;
setRotation(leftarmarmor, 0F, 0F, 0F);
rightlegarmor = new ModelRenderer(this, 108, 38);
rightlegarmor.addBox(-2.5F, 0F, -2.5F, 5, 9, 5);
rightlegarmor.setRotationPoint(0F, 0F, 0F);
rightlegarmor.setTextureSize(128, 64);
rightlegarmor.mirror = true;
setRotation(rightlegarmor, 0F, 0F, 0F);
leftlegarmor = new ModelRenderer(this, 0, 38);
leftlegarmor.addBox(-2.5F, 0F, -2.5F, 5, 9, 5);
leftlegarmor.setRotationPoint(0F, 0F, 0F);
leftlegarmor.setTextureSize(128, 64);
leftlegarmor.mirror = true;
this.bipedHead.addChild(wolfhead);
this.bipedHead.addChild(wolfnose);
this.bipedHead.addChild(helmet);
this.bipedHead.addChild(wolfearleft);
this.bipedHead.addChild(wolfearright);
this.bipedHead.cubeList.clear();
this.bipedBody.addChild(wolftail);
this.bipedBody.addChild(chestplate);
this.bipedLeftArm.addChild(leftarmarmor);
this.bipedRightArm.addChild(rightarmarmor);
this.bipedHead.cubeList.clear();
this.bipedLeftArm.cubeList.clear();
this.bipedRightArm.cubeList.clear();
this.bipedLeftLeg.addChild(leftlegarmor);
this.bipedLeftLeg.cubeList.clear();
this.bipedRightLeg.addChild(rightlegarmor);
this.bipedRightLeg.cubeList.clear();
}
public void render(Entity entity, float f, float f1, float f2, float f3, float f4, float f5)
{
super.render(entity, f, f1, f2, f3, f4, f5);
setRotationAngles(f, f1, f2, f3, f4, f5, entity);
}
private void setRotation(ModelRenderer model, float x, float y, float z)
{
model.rotateAngleX = x;
model.rotateAngleY = y;
model.rotateAngleZ = z;
}
public void setRotationAngles(float f, float f1, float f2, float f3, float f4, float f5, Entity entity)
{
super.setRotationAngles(f, f1, f2, f3, f4, f5, entity);
}
}