Jump to content
View in the app

A better way to browse. Learn more.

Forge Forums

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

olzi

Members
  • Joined

  • Last visited

  1. Hello I have an error that I can not solve which causes another error ERROR : java\net\mcreator\harmorvillager\client\renderer\ArmorRiderTESTRenderer.java:28: error: cannot find symbol super(context, new ModelArmoredRider<>(context.bakeLayer(ModelLayers.PLAYER_OUTER_ARMOR)), 0.5F); ^ symbol: variable ModelLayers location: class ArmorRiderTESTRenderer CODE : package net.mod.harmorvillager.client.renderer; import javax.annotation.Nullable; import com.mojang.blaze3d.vertex.PoseStack; import net.minecraft.client.model.HumanoidArmorModel; import net.minecraft.client.model.HumanoidModel; import net.minecraft.client.renderer.MultiBufferSource; import net.minecraft.client.renderer.entity.EntityRendererProvider; import net.minecraft.client.renderer.entity.HumanoidMobRenderer; import net.minecraft.client.resources.model.ModelLayers; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.InteractionHand; import net.minecraft.world.entity.HumanoidArm; import net.minecraft.world.item.CrossbowItem; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.UseAnim; import net.mcreator.harmorvillager.entity.ArmorRiderTESTEntity; import net.mcreator.harmorvillager.client.model.ModelArmoredRider; import net.mcreator.harmorvillager.client.model.ArmoredRiderArmorModel; public class ArmorRiderTESTRenderer extends HumanoidMobRenderer<ArmorRiderTESTEntity, HumanoidModel<ArmorRiderTESTEntity>> { private final HumanoidModel<ArmorRiderTESTEntity> normal = this.getModel(); public ArmorRiderTESTRenderer(EntityRendererProvider.Context context) { super(context, new ModelArmoredRider<>(context.bakeLayer(ModelLayers.PLAYER_OUTER_ARMOR)), 0.5F); this.addLayer(new HumanoidArmorLayer<>(this, new ArmoredRiderArmorModel<>(context.bakeLayer(ModelLayers.PLAYER_INNER_ARMOR)), new ArmoredRiderArmorModel<>(context.bakeLayer(ModelLayers.PLAYER_OUTER_ARMOR)))); } @Override public void render(ArmorRiderTESTEntity entityIn, float entityYaw, float partialTicks, PoseStack matrixStackIn, MultiBufferSource bufferIn, int packedLightIn) { this.setModelVisibilities(entityIn); super.render(entityIn, entityYaw, partialTicks, matrixStackIn, bufferIn, packedLightIn); } private void setModelVisibilities(ArmorRiderTESTEntity entityIn) { HumanoidModel<ArmorRiderTESTEntity> ridermodel = this.getModel(); ItemStack itemstack = entityIn.getMainHandItem(); ItemStack itemstack1 = entityIn.getOffhandItem(); ridermodel.setAllVisible(true); HumanoidModel.ArmPose bipedmodel$armpose = this.getArmPose(entityIn, itemstack, itemstack1, InteractionHand.MAIN_HAND); HumanoidModel.ArmPose bipedmodel$armpose1 = this.getArmPose(entityIn, itemstack, itemstack1, InteractionHand.OFF_HAND); ridermodel.crouching = entityIn.isCrouching(); if (entityIn.getMainArm() == HumanoidArm.RIGHT) { ridermodel.rightArmPose = bipedmodel$armpose; ridermodel.leftArmPose = bipedmodel$armpose1; } else { ridermodel.rightArmPose = bipedmodel$armpose1; ridermodel.leftArmPose = bipedmodel$armpose; } } private HumanoidModel.ArmPose getArmPose(ArmorRiderTESTEntity entityIn, ItemStack itemStackMain, ItemStack itemStackOff, InteractionHand handIn) { HumanoidModel.ArmPose bipedmodel$armpose = HumanoidModel.ArmPose.EMPTY; ItemStack itemstack = handIn == InteractionHand.MAIN_HAND ? itemStackMain : itemStackOff; if (!itemstack.isEmpty()) { bipedmodel$armpose = HumanoidModel.ArmPose.ITEM; if (entityIn.getUseItemRemainingTicks() > 0) { UseAnim useaction = itemstack.getUseAnimation(); switch (useaction) { case BLOCK: bipedmodel$armpose = HumanoidModel.ArmPose.BLOCK; break; case BOW: bipedmodel$armpose = HumanoidModel.ArmPose.BOW_AND_ARROW; break; case SPEAR: bipedmodel$armpose = HumanoidModel.ArmPose.THROW_SPEAR; break; case CROSSBOW: if (handIn == entityIn.getUsedItemHand()) { bipedmodel$armpose = HumanoidModel.ArmPose.CROSSBOW_CHARGE; } break; default: bipedmodel$armpose = HumanoidModel.ArmPose.EMPTY; break; } } else { boolean flag1 = itemStackMain.getItem() instanceof CrossbowItem; boolean flag2 = itemStackOff.getItem() instanceof CrossbowItem; if (flag1 && entityIn.isAggressive()) { bipedmodel$armpose = HumanoidModel.ArmPose.CROSSBOW_HOLD; } if (flag2 && itemStackMain.getItem().getUseAnimation(itemStackMain) == UseAnim.NONE && entityIn.isAggressive()) { bipedmodel$armpose = HumanoidModel.ArmPose.CROSSBOW_HOLD; } } } return bipedmodel$armpose; } @Override protected void scale(ArmorRiderTESTEntity entitylivingbaseIn, PoseStack matrixStackIn, float partialTickTime) { matrixStackIn.scale(0.9375F, 0.9375F, 0.9375F); } @Nullable @Override public ResourceLocation getTextureLocation(ArmorRiderTESTEntity entity) { return new ResourceLocation("harmorvillager:textures/entities/armoredvillager.png"); } }
  2. THANK YOU Really thanks to you I managed to do what I want
  3. Ok thank you I have to go where to ask for help to create what I want?
  4. Thank you for your help on which forum should I post then? Do you know how to increase the recoil inflicted on the opponent
  5. Hello I have an error in my mod I made a sword with a better range Here is the error and code. Error error: cannot find symbol this.addAttributeModifier(Attributes.ATTACK_DAMAGE, attackRangeModifier, EquipmentSlot.MAINHAND); ^ symbol: method addAttributeModifier(Attribute,AttributeModifier,EquipmentSlot) The code package net.mod.mod.item; import net.minecraft.world.item.Tier; import net.minecraft.world.item.SwordItem; import net.minecraft.world.item.Item; import net.minecraft.world.item.Item.Properties; import net.minecraft.world.item.crafting.Ingredient; import net.minecraft.world.entity.ai.attributes.AttributeModifier; import net.minecraft.world.entity.ai.attributes.AttributeModifier.Operation; import net.minecraft.world.entity.ai.attributes.Attributes; import net.minecraft.world.entity.EquipmentSlot; import java.util.UUID; public class Test1Item extends SwordItem { private static final UUID ATTACK_RANGE_MODIFIER_ID = UUID.fromString("6069a356-4c32-418c-afe1-c15d5c37c01a"); public Test1Item() { super(new Tier() { public int getUses() { return 100; } public float getSpeed() { return 0f; } public float getAttackDamageBonus() { return -2f; } public int getLevel() { return 0; } public int getEnchantmentValue() { return 2; } public Ingredient getRepairIngredient() { return Ingredient.of(); } }, 3, -3f, new Properties()); // Ajout du modificateur d'attribut pour augmenter la portée d'attaque AttributeModifier attackRangeModifier = new AttributeModifier( ATTACK_RANGE_MODIFIER_ID, "Attack Range Modifier", 8.0, // Ajustez cette valeur pour changer la portée d'attaque Operation.ADDITION ); this.addAttributeModifier(Attributes.ATTACK_DAMAGE, attackRangeModifier, EquipmentSlot.MAINHAND); } }

Important Information

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

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.