Jump to content

Oscarita25

Members
  • Posts

    143
  • Joined

  • Last visited

  • Days Won

    1

Everything posted by Oscarita25

  1. when you don't find its okay .. but i am hoping for others right now that have expierence on that kind of thing or know what it could be to point it out for me :I because:
  2. still searching for a solution .. i am really stuck .. ?
  3. then sorry i couldn't help
  4. and did it work?
  5. nah no worries..
  6. try changing in the twitch settings the minecraft launcher to .jar instead of native if you are desparate you can also: downgrade the launcher .. not a permanent solution but should work - if you can solve it in another way that do it like that :I
  7. because there exists this video .. that helped a friend of mine that did had the same error
  8. are you using the twitch client app to run Minecraft or just normally the minecraft launcher?
  9. Does really nobody know here how to do this?
  10. Well hello there, i had a mod in 1.7.10 that had custom armor rendering and i am now trying to do the same with 1.12.2 .. :I additional info: this is just for tests... i want to do this with a different model that my friend makes for me right now I got confused at the new item registering and i bet i did something wrong at that .. (the last version i did mod in was 1.7.10) I got that working in 1.7.10 .. but i don't even ..know if i did it correctly there not being sure if i do it correctly .. (i mean like with the proxy sided stuff i obviously don't want to send a model to the server side.. >-<) here is my problem i am trying to do a armor with a custom Model and encountered these problems: the armor is rendered like a "child" mob so the little version of the model the animation of hitting, pulling a bow, blocking with shield... is NOT shown how do i get them in 1.12.2? .. getting it "double" rendered (it gets rendered 2 times) so here is actual code: Model class: package maki325.bnha.models; import net.minecraft.client.model.ModelBase; import net.minecraft.client.model.ModelBiped; import net.minecraft.client.model.ModelRenderer; import net.minecraft.entity.Entity; public class ClothModel extends ModelBiped { private ModelRenderer RArm; private ModelRenderer LLeg; private ModelRenderer Head; private ModelRenderer Body; private ModelRenderer LArm; private ModelRenderer RLeg; public ClothModel(float f) { super(f, 0, 64,32); this.textureWidth = 64; this.textureHeight = 32; this.LArm = new ModelRenderer(this, 40, 16); this.LArm.addBox(-1.0F, -2.0F, -2.0F, 4, 12, 4, 0.0F); this.LArm.isHidden = true; this.Body = new ModelRenderer(this, 16, 16); this.Body.addBox(-4.0F, 0.0F, -2.0F, 8, 12, 4, 0.0F); this.RLeg = new ModelRenderer(this, 0, 16); this.RLeg.addBox(-2.0F, 0.0F, -2.0F, 4, 12, 4, 0.0F); this.LLeg = new ModelRenderer(this, 0, 16); this.LLeg.addBox(-2.0F, 0.0F, -2.0F, 4, 12, 4, 0.0F); this.RArm = new ModelRenderer(this, 40, 16); this.RArm.addBox(-3.0F, -2.0F, -2.0F, 4, 12, 4, 0.0F); this.Head = new ModelRenderer(this, 0, 0); this.Head.addBox(-4.0F, -8.0F, -4.0F, 8, 8, 8, 0.0F); /* bipedLeftArm.addChild(LArm); bipedBody.addChild(Body); bipedRightLeg.addChild(RLeg); bipedLeftLeg.addChild(LLeg); bipedRightArm.addChild(RArm); bipedHead.addChild(Head); trying stuff */ } @Override 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); } } Item class: package maki325.bnha.init.items; import java.util.HashSet; import java.util.Set; import maki325.bnha.util.Reference; import net.minecraft.init.SoundEvents; import net.minecraft.inventory.EntityEquipmentSlot; import net.minecraft.item.Item; import net.minecraft.item.ItemArmor; import net.minecraftforge.common.util.EnumHelper; import net.minecraftforge.event.RegistryEvent; import net.minecraftforge.fml.common.Mod; import net.minecraftforge.fml.common.eventhandler.SubscribeEvent; import net.minecraftforge.fml.common.registry.GameRegistry.ObjectHolder; import net.minecraftforge.registries.IForgeRegistry; @ObjectHolder(Reference.MOD_ID) public class ModItems { public static class ArmorMaterials { public static final ItemArmor.ArmorMaterial UA_SPORTS_MAT = EnumHelper.addArmorMaterial (Reference.MOD_ID +":ua_sports", Reference.MOD_ID +":ua_sports", 15, new int[]{1, 4, 5, 2}, 12, SoundEvents.ITEM_ARMOR_EQUIP_LEATHER, (float) 0); } /* ITEMS */ /*——————————————————————————————————————————————————*/ /*——————————————————————————————————————————————————*/ /* ARMOR */ /*——————————————————————————————————————————————————*/ public static final ClothArmor UA_SPORTS_CHESTPLATE = new ClothArmor("ua_sports_chestplate", ArmorMaterials.UA_SPORTS_MAT, 1, EntityEquipmentSlot.CHEST); public static final ClothArmor UA_SPORTS_LEGGINGS = new ClothArmor("ua_sports_leggings", ArmorMaterials.UA_SPORTS_MAT, 2, EntityEquipmentSlot.LEGS); /*——————————————————————————————————————————————————*/ private static void initialiseItems() { UA_SPORTS_CHESTPLATE .setUnlocalizedName(UA_SPORTS_CHESTPLATE.getRegistryName().toString()); UA_SPORTS_LEGGINGS .setUnlocalizedName(UA_SPORTS_LEGGINGS.getRegistryName().toString()); } @Mod.EventBusSubscriber(modid = Reference.MOD_ID) public static class RegistrationHandler { public static final Set<Item> ITEMS = new HashSet<>(); @SubscribeEvent public static void registerItems(final RegistryEvent.Register<Item> event) { final Item[] items = { UA_SPORTS_CHESTPLATE, UA_SPORTS_LEGGINGS, }; final IForgeRegistry<Item> registry = event.getRegistry(); for (final Item item : items) { registry.register(item); ITEMS.add(item); } initialiseItems(); } } } Armor class: package maki325.bnha.init.items; import maki325.bnha.BnHA; import maki325.bnha.models.ClothModel; import maki325.bnha.util.IHasModel; import maki325.bnha.util.Reference; import net.minecraft.client.model.ModelBiped; import net.minecraft.creativetab.CreativeTabs; import net.minecraft.entity.EntityLivingBase; import net.minecraft.inventory.EntityEquipmentSlot; import net.minecraft.item.ItemArmor; import net.minecraft.item.ItemStack; import net.minecraftforge.fml.relauncher.Side; import net.minecraftforge.fml.relauncher.SideOnly; public class ClothArmor extends ItemArmor implements IHasModel{ public ClothArmor(String name,ArmorMaterial material,int renderindex, EntityEquipmentSlot slot) { super(material, renderindex, slot); this.setRegistryName(Reference.MOD_ID, name); this.setCreativeTab(CreativeTabs.COMBAT); } @Override @SideOnly(Side.CLIENT) public ModelBiped getArmorModel(EntityLivingBase living, ItemStack stack, EntityEquipmentSlot slot, ModelBiped defaultModel) { if(!stack.isEmpty()) { if(stack.getItem() instanceof ItemArmor) { ClothModel armorModel = BnHA.proxy.getClothModel(); armorModel.bipedRightLeg.showModel = slot == EntityEquipmentSlot.FEET; armorModel.bipedLeftLeg.showModel = slot == EntityEquipmentSlot.FEET; armorModel.bipedBody.showModel = slot == EntityEquipmentSlot.CHEST; armorModel.bipedLeftArm.showModel = slot == EntityEquipmentSlot.CHEST; armorModel.bipedRightArm.showModel = slot == EntityEquipmentSlot.CHEST; armorModel.bipedHead.showModel = slot == EntityEquipmentSlot.HEAD; armorModel.isSneak = defaultModel.isSneak; armorModel.isRiding = defaultModel.isRiding; armorModel.rightArmPose = defaultModel.rightArmPose.BLOCK; armorModel.leftArmPose = defaultModel.leftArmPose.BLOCK; armorModel.rightArmPose = defaultModel.rightArmPose; armorModel.leftArmPose = defaultModel.leftArmPose; return armorModel; } } return null; } @Override public void registerModels() { BnHA.proxy.registerItemRenderer(this, 0, "inventory"); } } ClientProxy class: package maki325.bnha.proxy; import maki325.bnha.models.ClothModel; import net.minecraft.client.renderer.block.model.ModelResourceLocation; import net.minecraft.item.Item; import net.minecraftforge.client.model.ModelLoader; public class ClientProxy extends CommonProxy { private static final ClothModel clothmodel = new ClothModel(1F); public void registerItemRenderer(Item item, int meta, String id) { ModelLoader.setCustomModelResourceLocation(item, meta, new ModelResourceLocation(item.getRegistryName(), id)); } @Override public ClothModel getClothModel() { return clothmodel; } public static void registerModel() { } } thanks for reading this and helping me
  11. yeah thats why i am still answering!
  12. okay thanks i will check that out! -Edit okay afterwards i found out that Capabilities and IEEP works almost the same (except for registering and some other things) and so for my question: no i think its actually not possible without out writing something that does that for you - as Draco18s said before ... - but that what i want to achive to make abilities/properties that will be only used when they are triggered by a keybind is possible ..
  13. just a simple question about this.. is a IExtendedEntityproperty that is given to the player removable while playing? - like with a command or on a keybind.. and if yes how would i do that?
  14. simply overwrite the player model i've done this in the 1.7.10 so its not 100% sure if this still works but give it a try (btw this will COMPLETELY overwrite the model): import net.minecraft.client.entity.AbstractClientPlayer; import net.minecraft.client.model.ModelBlaze; import net.minecraft.client.renderer.entity.RenderPlayer; import net.minecraft.util.ResourceLocation; public class OverwritePlayer extends RenderPlayer { public OverwritePlayer(){ super(); //Overwriting it with our own model this.mainModel = new YourModelClass(1.0F); } protected ResourceLocation getEntityTexture(AbstractClientPlayer player) { //returning Resource .. Obviously return new ResourceLocation("textures/pathto/texture.png"); } } and register it like this: RenderingRegistry.registerEntityRenderingHandler(EntityPlayer.class, new OverwritePlayer()); YourModelClass should extend ModelBiped and can be modeled / animated in Techne or in code that should be look something about this: import net.minecraft.client.model.ModelBiped; import net.minecraft.client.model.ModelRenderer; import net.minecraft.entity.Entity; public class YourModelClass extends ModelBiped { public ModelRenderer head; public ModelRenderer body; public ModelRenderer rightArm; public ModelRenderer leftArm; public ModelRenderer rightLeg; public ModelRenderer leftLeg; public YourModelClass(float size) { //Modelsize rotation xTextureSize yTextureSize super(size, 0.0f, 64, 32); head = new ModelRenderer(this, 0, 0); head.setRotationPoint(0.0F, 0.0F, 0.0F); head.addBox(-4.0F, -8.0F, -4.0F, 8, 8, 8, 0.0F); body = new ModelRenderer(this, 16, 16); body.setRotationPoint(0.0F, 0.0F, 0.0F); body.addBox(-4.0F, 0.0F, -2.0F, 8, 12, 4, 0.0F); leftArm = new ModelRenderer(this, 40, 16); leftArm.setRotationPoint(5.0F, 2.0F, 0.0F); leftArm.addBox(-1.0F, -2.0F, -2.0F, 4, 12, 4, 0.0F); rightArm = new ModelRenderer(this, 40, 16); rightArm.setRotationPoint(-5.0F, 2.0F, 0.0F); rightArm.addBox(-3.0F, -2.0F, -2.0F, 4, 12, 4, 0.0F); leftLeg = new ModelRenderer(this, 0, 16); leftLeg.setRotationPoint(2.0F, 12.0F, 0.0F); leftLeg.addBox(-2.0F, 0.0F, -2.0F, 4, 12, 4, 0.0F); rightLeg = new ModelRenderer(this, 0, 16); rightLeg.setRotationPoint(-2.0F, 12.0F, 0.0F); rightLeg.addBox(-2.0F, 0.0F, -2.0F, 4, 12, 4, 0.0F); } @Override public void render(Entity entity, float f, float f1, float f2, float f3, float f4, float f5) { } public void setRotationAngles(float s, float s1, float s2, float s3, float s4, float s5, Entity entiy) { } } i hope this will help you or give you a better understanding how you could do it oh and this here will be also very helpfull (because its basicly the same concept!) https://www.minecraftforum.net/forums/mapping-and-modding-java-edition/mapping-and-modding-tutorials/1571595-1-10-2-how-to-code-custom-3d-armor-models
  15. let the custom armor extend model biped and then add in the render method something like: @Override 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); bipedHead.addChild(insertHeadarmorhere); bipedBody.addChild(insertBodyarmorhere); //etc.. to lazy to write the rest } hope this helps you - or someone else... basicly this syncs your Model with the movements of the bipedBody (the Player)
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.