Jump to content
Search In
  • More options...
Find results that contain...
Find results in...

[1.14] [SOLVED] problem with custom armor model


Valtiel
 Share

Recommended Posts

I don’t think that much else changed. What problems are you having?

About Me

Spoiler

My Discord - Cadiboo#8887

My WebsiteCadiboo.github.io

My ModsCadiboo.github.io/projects

My TutorialsCadiboo.github.io/tutorials

Versions below 1.14.4 are no longer supported on this forum. Use the latest version to receive support.

When asking support remember to include all relevant log files (logs are found in .minecraft/logs/), code if applicable and screenshots if possible.

Only download mods from trusted sites like CurseForge (minecraft.curseforge.com). A list of bad sites can be found here, with more information available at stopmodreposts.org

Edit your own signature at www.minecraftforge.net/forum/settings/signature/ (Make sure to check its compatibility with the Dark Theme)

Link to comment
Share on other sites

I guess the most changes are Namechanges anyway (Class and function name changes).

For example

- ModelRenderer renamed to RendererModel

- Methodes like haskey (in some color method or something) to contains or something, etc.

- There are maybe one or two package changes as well, but there aren't that much of changes.

 

 

Edited by Okmeis
Link to comment
Share on other sites

7 hours ago, Cadiboo said:

I don’t think that much else changed. What problems are you having?

 

 

my model armor is not rendered, I think the biggest change is armor class:

 

1.7.10 to 1.13.2 

 

public ModelBiped getArmorModel (EntityLivingBase entityLiving, ItemStack itemStack, EntityEquipmentSlot armorSlot,    ModelBiped defaultModel)
    {
        
        ModelBiped armorModel = ClientProxy.armorModels.get(this);
        ///////////////////////////////////////////////////////////////////////////////////////////////////////////////

 

1.14 

modelbiped change by "BipedModel <LivingEntity>"   

EntityLivingBase  change by  LivingEntity

 

 

public BipedModel<LivingEntity> getArmorModel (LivingEntity entityLiving, ItemStack itemStack, EquipmentSlotType armorSlot,    BipedModel defaultModel)
    {
        
        BipedModel<LivingEntity> armorModel = ClientProxy.armorModels.get(this);

 

 

 

 


        

 

Link to comment
Share on other sites

Try something like this in your ArmorItem Class:
 

 @SuppressWarnings("unchecked")
    @Nullable
    @Override
    public <A extends BipedModel<?>> A getArmorModel(LivingEntity entityLiving, ItemStack itemStack, EquipmentSlotType armorSlot, A _default) {
                YourModelObject model = new YourModelObject();
                model.bipedHeadwear.showModel = armorSlot == EquipmentSlotType.HEAD;

                model.isChild = _default.isChild;
                model.isSneak = _default.isSneak;
                model.isSitting = _default.isSitting;
                model.rightArmPose = _default.rightArmPose;
                model.leftArmPose = _default.leftArmPose;

                return (A) model;
    }

    @Nullable
    @Override
    public String getArmorTexture(ItemStack stack, Entity entity, EquipmentSlotType slot, String type) {
        return "yourmodid:textures/models/armor/yourtexturename.png";
    }

 

Does it work?

Edited by Okmeis
Link to comment
Share on other sites

2 hours ago, Okmeis said:

Try something like this in your ArmorItem Class:
 


 @SuppressWarnings("unchecked")
    @Nullable
    @Override
    public <A extends BipedModel<?>> A getArmorModel(LivingEntity entityLiving, ItemStack itemStack, EquipmentSlotType armorSlot, A _default) {
                YourModelObject model = new YourModelObject();
                model.bipedHeadwear.showModel = armorSlot == EquipmentSlotType.HEAD;

                model.isChild = _default.isChild;
                model.isSneak = _default.isSneak;
                model.isSitting = _default.isSitting;
                model.rightArmPose = _default.rightArmPose;
                model.leftArmPose = _default.leftArmPose;

                return (A) model;
    }

    @Nullable
    @Override
    public String getArmorTexture(ItemStack stack, Entity entity, EquipmentSlotType slot, String type) {
        return "yourmodid:textures/models/armor/yourtexturename.png";
    }

 

Does it work?

 

it works.

 

2019-07-13_13_49_07.png.dc9a249224d18e7c27875c3d61237262.png

 

 

I leave this code in case someone needs it

 

 @SuppressWarnings("unchecked")
    @Nullable
    @Override
    public <A extends BipedModel<?>> A getArmorModel(LivingEntity entityLiving, ItemStack itemStack, EquipmentSlotType armorSlot, A _default) {
        GirlArmorModel girl_armor = new GirlArmorModel(1F);
        
        
        
        girl_armor.field_78116_c.showModel = armorSlot == EquipmentSlotType.HEAD;
        girl_armor.bipedHeadwear.showModel = armorSlot == EquipmentSlotType.HEAD;
        girl_armor.field_78115_e.showModel = (armorSlot == EquipmentSlotType.CHEST)
                || (armorSlot == EquipmentSlotType.CHEST);
        girl_armor.bipedRightArm.showModel = armorSlot == EquipmentSlotType.CHEST;
        girl_armor.bipedLeftArm.showModel = armorSlot == EquipmentSlotType.CHEST;
        girl_armor.bipedRightLeg.showModel = (armorSlot == EquipmentSlotType.LEGS)
                || (armorSlot == EquipmentSlotType.FEET);
        girl_armor.bipedLeftLeg.showModel = (armorSlot == EquipmentSlotType.LEGS)
                || (armorSlot == EquipmentSlotType.FEET);

        girl_armor.isChild = _default.isChild;
        girl_armor.isSneak = _default.isSneak;
        girl_armor.isSitting = _default.isSitting;
        girl_armor.rightArmPose = _default.rightArmPose;
        girl_armor.leftArmPose = _default.leftArmPose;

                return (A) girl_armor;
    }
}
        
    


 

changes

 

ModelBiped               BipedModel<LivingEntity>

ModelRenderer        RendererModel

bipedBody                 field_78115_e

bipedHead                field_78116_c

Link to comment
Share on other sites

  • Valtiel changed the title to [1.14] [SOLVED] problem with custom armor model
2 hours ago, Valtiel said:

bipedBody                 field_78115_e

bipedHead                field_78116_c

These haven't changed, you're just on old mappings

About Me

Spoiler

My Discord - Cadiboo#8887

My WebsiteCadiboo.github.io

My ModsCadiboo.github.io/projects

My TutorialsCadiboo.github.io/tutorials

Versions below 1.14.4 are no longer supported on this forum. Use the latest version to receive support.

When asking support remember to include all relevant log files (logs are found in .minecraft/logs/), code if applicable and screenshots if possible.

Only download mods from trusted sites like CurseForge (minecraft.curseforge.com). A list of bad sites can be found here, with more information available at stopmodreposts.org

Edit your own signature at www.minecraftforge.net/forum/settings/signature/ (Make sure to check its compatibility with the Dark Theme)

Link to comment
Share on other sites

  • 5 months later...

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share



  • Recently Browsing

    No registered users viewing this page.

  • Posts

    • Minecraft Version: 1.16.5 Forge Version: 36.2.0 Description of issue: A loaded mod containing data pack tag registries, which creates new tags and references the new tags to further register the items in existing tags fails to register anything in the existing tags. Example: Tinkers Construct v3.1.2.265 contains Json files to register: forge:ingots/cobalt as a new tag containing cobalt_ingot and add to previously registered tag forge:ingots. In the file for forge:ingots, values of "tconstruct:seared_brick", "tconstruct:scorched_brick", "#forge:ingots/copper", "#forge:ingots/cobalt", etc. are indicated. In-game, none of the items listed as values are tagged under forge:ingots, however the new tags including forge:ingots/cobalt include the items tagged in those files. Further, copying the json file for forge:ingots and placing in a later applied datapack, such as Kubejs, and reloading, properly registers the forge:ingots tags. This would appear to be an issue with timing of registering the new tags. Before copying the json file to a datapack, the existing tag (forge:ingots) appears to be handled first, which containing references to new tags that are not yet processed (forge:ingots/cobalt) fails and does not register any of the appended values. But in the second instance because the copied json file is processed after the mod jar file as a whole, the new tags exist and the appending of the new values succeeds. While I have given Tinkers construct as an example I have viewed the same issue with multiple mods, each of which uses references to new tags in an appending of an existing tag. Likewise, mods that do not exhibit this behavior use explicit item listings rather than referencing a new tag. I looked through the log files and did not identify any error or other message relating to the registration of tags in general or specifically these exemplar tags.
    • Debug.log here: https://gist.github.com/DexTGS/4f33065cbe2ad844b76ed1b1890fd069 . Game crashing once I die.
    • I'm making a mob like zombified piglin except instead of all the mobs getting mad at you I want to make it do they all go into a panic. How can I do this?
    • What. Just register your events in your mod constructor or use the class annotation.
    • How could I bake obj models without wrapping them in blocks or items? I'm guessing I have to use ModelBakeEvent and ModelRegistryEvent, but I'd appreciate a little more clarification.
  • Topics

  • Who's Online (See full list)

×
×
  • Create New...

Important Information

By using this site, you agree to our Privacy Policy.