Я ему так же говорюOldestkon написал(а):Нет, ты втираешь мне какую-то дичь. Такого быть в принципе не может. Показывай весь код до и после вставки этих методов.
Oldestkon написал(а):Нет, ты втираешь мне какую-то дичь. Такого быть в принципе не может. Показывай весь код до и после вставки этих методов.
package com.minez.coremod;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import net.minecraft.client.model.ModelBiped;
import net.minecraft.client.renderer.texture.IconRegister;
import net.minecraft.entity.Entity;
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.item.EnumArmorMaterial;
import net.minecraft.item.ItemArmor;
import net.minecraft.item.ItemStack;
public class Green_Helmet extends ItemArmor {
public Green_Helmet (int par1) {
super(par1, EnumArmorMaterial.CHAIN, 0, 0);
this.setCreativeTab(CoreMod.CreativeTabs_medic);
}
@SideOnly(Side.CLIENT)
@Override
public void registerIcons(IconRegister par1IconRegister) {
this.itemIcon = par1IconRegister.registerIcon(ModInformation.MODID+":"+"icon_name");
}
@Override
public String getArmorTexture(ItemStack stack, Entity entity, int slot, String type) {
if (slot == 0)
return ModInformation.MODID + ":textures/armor/" + "texture_name.png";
return ModInformation.MODID + ":textures/armor/" + "texture_name.png";
}
@SideOnly(Side.CLIENT)
@Override
public ModelBiped getArmorModel(EntityLivingBase entityLiving, ItemStack itemStack, int armorSlot) {
if (armorSlot != 0)
return null;
if (itemStack != null && itemStack.getItem() instanceof Green_Helmet) {
ModelBiped model = ClientProxy.getArmorModel();
return model;
}
else
return null;
}
}
package com.minez.models;
import java.util.ArrayList;
import org.lwjgl.opengl.GL11;
import cpw.mods.fml.client.FMLClientHandler;
import net.minecraft.client.model.ModelBiped;
import net.minecraft.client.model.ModelRenderer;
import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.util.ResourceLocation;
public class Model_Green_Helmet extends ModelBiped
{
ModelRenderer Shape1;
ModelRenderer Shape2;
ModelRenderer Shape3;
ModelRenderer Shape4;
ModelRenderer Shape5;
ModelRenderer Shape6;
ResourceLocation mgh_texture = new ResourceLocation("minez:textures/path/green_helmet.png");
public Model_Green_Helmet()
{
textureWidth = 64;
textureHeight = 32;
Shape1 = new ModelRenderer(this, 0, 0);
Shape1.addBox(-4F, -8.5F, -4F, 8, 1, 8);
Shape1.setRotationPoint(0F, 0F, 0F);
Shape1.setTextureSize(64, 32);
Shape1.mirror = true;
setRotation(Shape1, 0F, 0F, 0F);
Shape2 = new ModelRenderer(this, 0, 0);
Shape2.addBox(-4.5F, -8F, -4F, 1, 8, 8);
Shape2.setRotationPoint(0F, 0F, 0F);
Shape2.setTextureSize(64, 32);
Shape2.mirror = true;
setRotation(Shape2, 0F, 0F, 0F);
Shape3 = new ModelRenderer(this, 0, 0);
Shape3.addBox(-4F, -8F, 3.5F, 8, 8, 1);
Shape3.setRotationPoint(0F, 0F, 0F);
Shape3.setTextureSize(64, 32);
Shape3.mirror = true;
setRotation(Shape3, 0F, 0F, 0F);
Shape4 = new ModelRenderer(this, 0, 0);
Shape4.addBox(-4F, -8F, -4.5F, 8, 8, 1);
Shape4.setRotationPoint(0F, 0F, 0F);
Shape4.setTextureSize(64, 32);
Shape4.mirror = true;
setRotation(Shape4, 0F, 0F, 0F);
Shape5 = new ModelRenderer(this, 0, 0);
Shape5.addBox(3.5F, -8F, -4F, 1, 8, 8);
Shape5.setRotationPoint(0F, 0F, 0F);
Shape5.setTextureSize(64, 32);
Shape5.mirror = true;
setRotation(Shape5, 0F, 0F, 0F);
Shape6 = new ModelRenderer(this, 0, 0);
Shape6.addBox(-4F, -0.5F, -4F, 8, 1, 8);
Shape6.setRotationPoint(0F, 0F, 0F);
Shape6.setTextureSize(64, 32);
Shape6.mirror = true;
setRotation(Shape6, 0F, 0F, 0F);
}
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);
this.setRotationAngles(f, f1, f2, f3, f4, f5, entity);
FMLClientHandler.instance().getClient().getTextureManager().bindTexture(this.mgh_texture);
if(entity instanceof EntityPlayer) {
EntityPlayer ep = (EntityPlayer)entity;
if(ep.isSneaking() && !ep.isInWater()) {
GL11.glPushMatrix();
GL11.glTranslatef(0.0F, 0.1F, 0.0F);
GL11.glRotatef(25.0F, 1.0F, 0.0F, 0.0F);
GL11.glPopMatrix();
}
}
this.Shape1.render(f5);
this.Shape2.render(f5);
this.Shape3.render(f5);
this.Shape4.render(f5);
this.Shape5.render(f5);
this.Shape6.render(f5);
}
public void render (float f5) {
this.Shape1.render(f5);
this.Shape2.render(f5);
this.Shape3.render(f5);
this.Shape4.render(f5);
this.Shape5.render(f5);
this.Shape6.render(f5);
}
private void setRotation(ModelRenderer model, float x, float y, float z)
{
model.rotateAngleX = x;
model.rotateAngleY = y;
model.rotateAngleZ = z;
}
public void setRotationAngles(float par4, float par5, float f, float f1, float f2, float f3, float f4, float f5, Entity entity) {
super.setRotationAngles(f, f1, f2, f3, f4, f5, entity);
}
}
package com.minez.coremod;
import net.minecraft.client.model.ModelBiped;
import net.minecraftforge.client.IItemRenderer;
import net.minecraftforge.client.MinecraftForgeClient;
import com.minez.api.player.render.RenderPlayerAPI;
import com.minez.foods.FoodList;
import com.minez.items.ItemsList;
import com.minez.models.Model_Green_Helmet_2;
import com.minez.renders.bandage_render;
import com.minez.renders.c_bob_render;
public class ClientProxy extends CommonProxy
{
public static Model_Green_Helmet_2 mgh = new Model_Green_Helmet_2();
@Override
public void initMod()
{
super.initMod();
MinecraftForgeClient.registerItemRenderer(ItemsList.Bandage.itemID, (IItemRenderer) new bandage_render());
MinecraftForgeClient.registerItemRenderer(FoodList.c_bob.itemID, (IItemRenderer) new c_bob_render());
}
public void renderSetup()
{
RenderPlayerAPI.register("minez", RenderPlayerMOD.class);
}
public static ModelBiped getArmorModel() {
return mgh;
}
}
package com.minez.coremod;
import net.minecraft.client.Minecraft;
import net.minecraft.client.entity.AbstractClientPlayer;
import net.minecraft.util.ResourceLocation;
import com.minez.api.player.render.RenderPlayerAPI;
import com.minez.api.player.render.RenderPlayerBase;
import com.minez.models.Model_Green_Helmet_2;
public class RenderPlayerMOD extends RenderPlayerBase {
private Minecraft mc = Minecraft.getMinecraft();
private static final ResourceLocation mgh_texture = new ResourceLocation("minez:textures/models/green_helmet.png");
private Model_Green_Helmet_2 mgh = new Model_Green_Helmet_2();
public RenderPlayerMOD(RenderPlayerAPI renderPlayerAPI) {
super(renderPlayerAPI);
}
public void renderSpecials(AbstractClientPlayer par1AbstractClientPlayer, float par2) {
super.renderSpecials(par1AbstractClientPlayer, par2);
if(par1AbstractClientPlayer.getCurrentArmor(0) != null) {
if(par1AbstractClientPlayer.getCurrentArmor(0).itemID == CoreMod.Green_Helmet.itemID) {
this.mc.getTextureManager().bindTexture(mgh_texture);
super.renderPlayerAPI.getModelBipedMainField().bipedHead.postRender(0.0625F);
this.mgh.render(0.0625F);
}
}
}
}
Такая же фигня. Но я решил всё проще, просто передвигаю на нужную позицию, например ноги на 12 вверх и на 4 в бок для одной ноги в одну сторону, для другой в другую (у каждого по разному). С руками так же, а с головой всё норм.части модели брони оказывали не на своём месте.