Jump to content

Faro

Members
  • Posts

    33
  • Joined

  • Last visited

Everything posted by Faro

  1. Ok I removed all the model visibillities settings. Could I replace "LokiModel model = new LokiModel(1f);" with "BipedModel model = new LokiModel(1f);" ?
  2. I am not sure what you meant with your first point but I changed this things and it didn t change anything. public class LokiArmorItem extends ArmorItem{ LokiModel model = new LokiModel(1f); private static final String TEXTURE = FarosVikingsMod.modID + ":textures/armor/loki.png"; public LokiArmorItem(IArmorMaterial p_i48534_1_, EquipmentSlotType slot, Properties p_i48534_3_) { super(p_i48534_1_, slot, p_i48534_3_); } @SuppressWarnings("unchecked") @Nullable @Override public <A extends BipedModel<?>> A getArmorModel(LivingEntity entityLiving, ItemStack itemStack, EquipmentSlotType slot, A _default) { model.setAllVisible(false); switch(slot) { case HEAD: model.head.visible = true; model.hat.visible = true; break; case CHEST: model.body.visible = true; model.rightArm.visible = true; model.leftArm.visible = true; break; case LEGS: model.body.visible = true; model.rightLeg.visible = true; model.leftLeg.visible = true; break; case FEET: model.rightLeg.visible = true; model.leftLeg.visible = true; } model.young = _default.young; model.riding = _default.riding; model.crouching = _default.crouching; model.rightArmPose = _default.rightArmPose; model.leftArmPose = _default.leftArmPose; return (A) model; } @Override public String getArmorTexture(ItemStack stack, Entity entity, EquipmentSlotType slot, String type) { return TEXTURE; } }
  3. I have some trouble with redering my ArmorModel. It renderes my whole armor, also if there is only one item in my armorslot. And my armor doesen t react on basic animation like hit somethink or walk. Also if the player turns his head, the armor doesn t turn with him. Here is my code: ArmorItem: public class LokiArmorItem extends ArmorItem{ private static final String TEXTURE = FarosVikingsMod.modID + ":textures/armor/loki.png"; public LokiArmorItem(IArmorMaterial p_i48534_1_, EquipmentSlotType p_i48534_2_, Properties p_i48534_3_) { super(p_i48534_1_, p_i48534_2_, p_i48534_3_); } @SuppressWarnings("unchecked") @Nullable @Override public <A extends BipedModel<?>> A getArmorModel(LivingEntity entityLiving, ItemStack itemStack, EquipmentSlotType slot, A _default) { LokiModel model = (slot == EquipmentSlotType.LEGS ? new LokiModel(0.5f) : new LokiModel(1f)); model.head.visible = slot == EquipmentSlotType.HEAD; model.hat.visible = slot == EquipmentSlotType.HEAD; model.body.visible = (slot == EquipmentSlotType.CHEST); model.rightArm.visible = slot == EquipmentSlotType.CHEST; model.leftArm.visible = slot == EquipmentSlotType.CHEST; model.rightLeg.visible = (slot == EquipmentSlotType.LEGS) || (slot == EquipmentSlotType.FEET); model.leftLeg.visible = (slot == EquipmentSlotType.LEGS) || (slot == EquipmentSlotType.FEET); model.young = _default.young; model.crouching = _default.crouching; model.riding = _default.riding; model.rightArmPose = _default.rightArmPose; model.leftArmPose = _default.leftArmPose; return (A) model; } @Override public String getArmorTexture(ItemStack stack, Entity entity, EquipmentSlotType slot, String type) { return TEXTURE; } } ArmorModel: @OnlyIn(Dist.CLIENT) public class LokiModel extends BipedModel<LivingEntity>{ private final ModelRenderer Loki; private final ModelRenderer cube_r1; private final ModelRenderer Head; private final ModelRenderer hornV1; private final ModelRenderer cube_r2; private final ModelRenderer cube_r3; private final ModelRenderer cube_r4; private final ModelRenderer cube_r5; private final ModelRenderer hornV2; private final ModelRenderer cube_r6; private final ModelRenderer cube_r7; private final ModelRenderer cube_r8; private final ModelRenderer cube_r9; private final ModelRenderer LeftLeg; private final ModelRenderer RightLeg; private final ModelRenderer LeftArm; private final ModelRenderer RightArm; private final ModelRenderer Body; public LokiModel(float p_i1148_1_) { super(p_i1148_1_); texWidth = 64; texHeight = 64; Loki = new ModelRenderer(this); Loki.setPos(0.0F, 24.0F, 0.0F); cube_r1 = new ModelRenderer(this); cube_r1.setPos(0.0F, 0.0F, 0.0F); Loki.addChild(cube_r1); setRotationAngle(cube_r1, 0.3054F, 0.0F, 0.0F); cube_r1.texOffs(34, 38).addBox(-5.0F, -23.0F, 10.0F, 10.0F, 15.0F, 1.0F, 0.0F, false); Head = new ModelRenderer(this); Head.setPos(0.0F, -24.0F, 0.0F); Loki.addChild(Head); Head.texOffs(0, 0).addBox(-4.0F, -8.0F, -4.0F, 8.0F, 8.0F, 8.0F, 1.0F, false); Head.texOffs(32, 0).addBox(-4.0F, -8.0F, -4.0F, 8.0F, 8.0F, 8.0F, 1.5F, false); hornV1 = new ModelRenderer(this); hornV1.setPos(2.0F, 26.0F, 0.0F); Head.addChild(hornV1); setRotationAngle(hornV1, -3.1416F, -1.309F, 3.1416F); hornV1.texOffs(9, 0).addBox(-3.5F, -36.0F, -2.0F, 3.0F, 1.0F, 3.0F, 0.0F, false); cube_r2 = new ModelRenderer(this); cube_r2.setPos(3.2132F, -39.5353F, -0.5F); hornV1.addChild(cube_r2); setRotationAngle(cube_r2, 0.0F, -0.5672F, -0.6981F); cube_r2.texOffs(9, 0).addBox(-6.5F, -7.0F, 2.25F, 2.0F, 7.0F, 1.0F, 0.0F, false); cube_r2.texOffs(9, 0).addBox(-6.5F, -7.0F, 4.0F, 2.0F, 7.0F, 1.0F, 0.0F, false); cube_r3 = new ModelRenderer(this); cube_r3.setPos(3.075F, -40.311F, -0.5F); hornV1.addChild(cube_r3); setRotationAngle(cube_r3, 0.0F, 0.0F, 0.7854F); cube_r3.texOffs(9, 0).addBox(-8.875F, -1.25F, -1.0F, 2.0F, 4.0F, 2.0F, 0.0F, false); cube_r4 = new ModelRenderer(this); cube_r4.setPos(3.1719F, -40.3345F, -0.5F); hornV1.addChild(cube_r4); setRotationAngle(cube_r4, 0.0F, 0.0F, 0.3491F); cube_r4.texOffs(9, 0).addBox(-9.5F, -0.75F, -1.0F, 2.0F, 4.0F, 2.0F, 0.0F, false); cube_r5 = new ModelRenderer(this); cube_r5.setPos(3.2132F, -39.5353F, -0.5F); hornV1.addChild(cube_r5); setRotationAngle(cube_r5, 0.0F, 0.0F, -0.6981F); cube_r5.texOffs(9, 0).addBox(-7.5F, -7.0F, -1.0F, 2.0F, 7.0F, 2.0F, 0.0F, false); hornV2 = new ModelRenderer(this); hornV2.setPos(-3.0F, 26.0F, 0.0F); Head.addChild(hornV2); setRotationAngle(hornV2, 0.0F, -1.1781F, 0.0F); hornV2.texOffs(11, 0).addBox(-3.5F, -36.0F, -2.0F, 3.0F, 1.0F, 3.0F, 0.0F, false); cube_r6 = new ModelRenderer(this); cube_r6.setPos(3.2132F, -39.5353F, -0.5F); hornV2.addChild(cube_r6); setRotationAngle(cube_r6, 0.0F, -0.5672F, -0.6981F); cube_r6.texOffs(11, 0).addBox(-6.5F, -7.0F, 2.25F, 2.0F, 7.0F, 1.0F, 0.0F, false); cube_r6.texOffs(11, 0).addBox(-6.5F, -7.0F, 4.0F, 2.0F, 7.0F, 1.0F, 0.0F, false); cube_r7 = new ModelRenderer(this); cube_r7.setPos(3.075F, -40.311F, -0.5F); hornV2.addChild(cube_r7); setRotationAngle(cube_r7, 0.0F, 0.0F, 0.7854F); cube_r7.texOffs(11, 0).addBox(-8.875F, -1.25F, -1.0F, 2.0F, 4.0F, 2.0F, 0.0F, false); cube_r8 = new ModelRenderer(this); cube_r8.setPos(3.1719F, -40.3345F, -0.5F); hornV2.addChild(cube_r8); setRotationAngle(cube_r8, 0.0F, 0.0F, 0.3491F); cube_r8.texOffs(11, 0).addBox(-9.5F, -0.75F, -1.0F, 2.0F, 4.0F, 2.0F, 0.0F, false); cube_r9 = new ModelRenderer(this); cube_r9.setPos(3.2132F, -39.5353F, -0.5F); hornV2.addChild(cube_r9); setRotationAngle(cube_r9, 0.0F, 0.0F, -0.6981F); cube_r9.texOffs(11, 0).addBox(-7.5F, -7.0F, -1.0F, 2.0F, 7.0F, 2.0F, 0.0F, false); LeftLeg = new ModelRenderer(this); LeftLeg.setPos(1.9F, -12.0F, 0.0F); Loki.addChild(LeftLeg); LeftLeg.texOffs(0, 16).addBox(-2.0F, 0.0F, -2.0F, 4.0F, 12.0F, 4.0F, 1.0F, true); RightLeg = new ModelRenderer(this); RightLeg.setPos(-1.9F, -12.0F, 0.0F); Loki.addChild(RightLeg); RightLeg.texOffs(0, 16).addBox(-2.0F, 0.0F, -2.0F, 4.0F, 12.0F, 4.0F, 1.0F, false); LeftArm = new ModelRenderer(this); LeftArm.setPos(5.0F, -22.0F, 0.0F); Loki.addChild(LeftArm); LeftArm.texOffs(40, 15).addBox(-1.0F, -2.0F, -2.0F, 4.0F, 12.0F, 4.0F, 1.0F, true); RightArm = new ModelRenderer(this); RightArm.setPos(-5.0F, -22.0F, 0.0F); Loki.addChild(RightArm); RightArm.texOffs(40, 15).addBox(-3.0F, -2.0F, -2.0F, 4.0F, 12.0F, 4.0F, 1.0F, false); Body = new ModelRenderer(this); Body.setPos(0.0F, -24.0F, 0.0F); Loki.addChild(Body); Body.texOffs(16, 16).addBox(-4.0F, 0.0F, -2.0F, 8.0F, 12.0F, 4.0F, 1.01F, false); } @Override public void renderToBuffer(MatrixStack matrixStack, IVertexBuilder buffer, int packedLight, int packedOverlay, float red, float green, float blue, float alpha){ Loki.render(matrixStack, buffer, packedLight, packedOverlay); } public void setRotationAngle(ModelRenderer modelRenderer, float x, float y, float z) { modelRenderer.xRot = x; modelRenderer.yRot = y; modelRenderer.zRot = z; } } for the armormaterial I tried both an Enum ArmorMaterial and a class that extends my ArmorItem with an AmorMaterial in it: public enum LokiArmor implements IArmorMaterial { LOKI_ARMOR("loki", 7, new int[]{7, 9, 10, 6}, 17, SoundEvents.ARMOR_EQUIP_LEATHER,2f, 0.1f,()-> Ingredient.of(ModItems.COPPER_INGOT.get())); private static final int[] baseDurability = {128, 144, 160, 112}; private final String name; private final int durability; private final int[] armorVal; private final int enchantability; private final SoundEvent equipSound; private final float toughniss; private final float knockBackResistance; private final Ingredient repairMaterial; LokiArmor(String name, int durability, int[] armorVal, int enchantability, SoundEvent equipSound, float toughniss, float knockBackResistance, Supplier<Ingredient> repairMaterial) { this.name = name; this.durability = durability; this.armorVal = armorVal; this.enchantability = enchantability; this.equipSound = equipSound; this.toughniss = toughniss; this.knockBackResistance = knockBackResistance; this.repairMaterial = repairMaterial.get(); } @Override public int getDurabilityForSlot(EquipmentSlotType slot) { return this.baseDurability[slot.getIndex() ]* this.durability ; } @Override public int getDefenseForSlot(EquipmentSlotType slot) { return this.armorVal[slot.getIndex()]; } @Override public int getEnchantmentValue() { return this.enchantability; } @Override public SoundEvent getEquipSound() { return this.equipSound; } @Override public Ingredient getRepairIngredient() { return this.repairMaterial; } @Override public String getName() { return this.name; } @Override public float getToughness() { return this.toughniss; } @Override public float getKnockbackResistance() { return this.knockBackResistance; } } public class DLokiArmor extends LokiArmorItem{ public DLokiArmor(IArmorMaterial p_i48534_1_, EquipmentSlotType p_i48534_2_, Properties p_i48534_3_) { super(p_i48534_1_, p_i48534_2_, p_i48534_3_); } public static final IArmorMaterial LOKI = new IArmorMaterial() { private final int[] damageReduction = {7, 9, 10, 6}; @Override public int getDurabilityForSlot(EquipmentSlotType slotType) { return 7000; } @Override public int getDefenseForSlot(EquipmentSlotType slotType) { return damageReduction[slotType.getIndex()]; } @Override public int getEnchantmentValue() { return 17; } @Override public SoundEvent getEquipSound() { return SoundEvents.ARMOR_EQUIP_DIAMOND; } @Override public Ingredient getRepairIngredient() { Item item = ForgeRegistries.ITEMS.getValue(new ResourceLocation("minecraft", "diamond")); return Ingredient.of(item); } @Override public String getName() { return "loki_armor"; } @Override public float getToughness() { return 3; } @Override public float getKnockbackResistance() { return 0; } }; @Override public String getArmorTexture(ItemStack stack, Entity entity, EquipmentSlotType slot, String type) { if(stack.getItem() == ModItems.LOKI_LEGGINGS.get()) { return FarosVikingsMod.modID + ":" + "/textures/armor/loki.png" ; } else if(stack.getItem() == ModItems.LOKI_HELMET.get() || stack.getItem() == ModItems.LOKI_CHEST.get() || stack.getItem() == ModItems.LOKI_BOOTS.get()) { return FarosVikingsMod.modID + ":" + "/textures/armor/loki.png" ; } return null; } }
  4. Ok. But now I have the problem that my armor is fully rendered, also if I have only one item in my armorslot. And if I turn my armor doesn t turn with my charakter. Here is my code: ArmorItem public class LokiArmorItem extends ArmorItem{ private static final String TEXTURE = FarosVikingsMod.modID + ":textures/armor/loki.png"; public LokiArmorItem(IArmorMaterial p_i48534_1_, EquipmentSlotType p_i48534_2_, Properties p_i48534_3_) { super(p_i48534_1_, p_i48534_2_, p_i48534_3_); } @SuppressWarnings("unchecked") @Nullable @Override public <A extends BipedModel<?>> A getArmorModel(LivingEntity entityLiving, ItemStack itemStack, EquipmentSlotType slot, A _default) { LokiModel model = (slot == EquipmentSlotType.LEGS ? new LokiModel(0.5f) : new LokiModel(1f)); model.head.visible = slot == EquipmentSlotType.HEAD; model.hat.visible = slot == EquipmentSlotType.HEAD; model.body.visible = (slot == EquipmentSlotType.CHEST); model.rightArm.visible = slot == EquipmentSlotType.CHEST; model.leftArm.visible = slot == EquipmentSlotType.CHEST; model.rightLeg.visible = (slot == EquipmentSlotType.LEGS) || (slot == EquipmentSlotType.FEET); model.leftLeg.visible = (slot == EquipmentSlotType.LEGS) || (slot == EquipmentSlotType.FEET); model.young = _default.young; model.crouching = _default.crouching; model.riding = _default.riding; model.rightArmPose = _default.rightArmPose; model.leftArmPose = _default.leftArmPose; return (A) model; } @Override public String getArmorTexture(ItemStack stack, Entity entity, EquipmentSlotType slot, String type) { return TEXTURE; } } Model: @OnlyIn(Dist.CLIENT) public class LokiModel extends BipedModel<LivingEntity>{ private final ModelRenderer Loki; private final ModelRenderer cube_r1; private final ModelRenderer Head; private final ModelRenderer hornV1; private final ModelRenderer cube_r2; private final ModelRenderer cube_r3; private final ModelRenderer cube_r4; private final ModelRenderer cube_r5; private final ModelRenderer hornV2; private final ModelRenderer cube_r6; private final ModelRenderer cube_r7; private final ModelRenderer cube_r8; private final ModelRenderer cube_r9; private final ModelRenderer LeftLeg; private final ModelRenderer RightLeg; private final ModelRenderer LeftArm; private final ModelRenderer RightArm; private final ModelRenderer Body; public LokiModel(float p_i1148_1_) { super(p_i1148_1_); texWidth = 64; texHeight = 64; Loki = new ModelRenderer(this); Loki.setPos(0.0F, 24.0F, 0.0F); cube_r1 = new ModelRenderer(this); cube_r1.setPos(0.0F, 0.0F, 0.0F); Loki.addChild(cube_r1); setRotationAngle(cube_r1, 0.3054F, 0.0F, 0.0F); cube_r1.texOffs(34, 38).addBox(-5.0F, -23.0F, 10.0F, 10.0F, 15.0F, 1.0F, 0.0F, false); Head = new ModelRenderer(this); Head.setPos(0.0F, -24.0F, 0.0F); Loki.addChild(Head); Head.texOffs(0, 0).addBox(-4.0F, -8.0F, -4.0F, 8.0F, 8.0F, 8.0F, 1.0F, false); Head.texOffs(32, 0).addBox(-4.0F, -8.0F, -4.0F, 8.0F, 8.0F, 8.0F, 1.5F, false); hornV1 = new ModelRenderer(this); hornV1.setPos(2.0F, 26.0F, 0.0F); Head.addChild(hornV1); setRotationAngle(hornV1, -3.1416F, -1.309F, 3.1416F); hornV1.texOffs(9, 0).addBox(-3.5F, -36.0F, -2.0F, 3.0F, 1.0F, 3.0F, 0.0F, false); cube_r2 = new ModelRenderer(this); cube_r2.setPos(3.2132F, -39.5353F, -0.5F); hornV1.addChild(cube_r2); setRotationAngle(cube_r2, 0.0F, -0.5672F, -0.6981F); cube_r2.texOffs(9, 0).addBox(-6.5F, -7.0F, 2.25F, 2.0F, 7.0F, 1.0F, 0.0F, false); cube_r2.texOffs(9, 0).addBox(-6.5F, -7.0F, 4.0F, 2.0F, 7.0F, 1.0F, 0.0F, false); cube_r3 = new ModelRenderer(this); cube_r3.setPos(3.075F, -40.311F, -0.5F); hornV1.addChild(cube_r3); setRotationAngle(cube_r3, 0.0F, 0.0F, 0.7854F); cube_r3.texOffs(9, 0).addBox(-8.875F, -1.25F, -1.0F, 2.0F, 4.0F, 2.0F, 0.0F, false); cube_r4 = new ModelRenderer(this); cube_r4.setPos(3.1719F, -40.3345F, -0.5F); hornV1.addChild(cube_r4); setRotationAngle(cube_r4, 0.0F, 0.0F, 0.3491F); cube_r4.texOffs(9, 0).addBox(-9.5F, -0.75F, -1.0F, 2.0F, 4.0F, 2.0F, 0.0F, false); cube_r5 = new ModelRenderer(this); cube_r5.setPos(3.2132F, -39.5353F, -0.5F); hornV1.addChild(cube_r5); setRotationAngle(cube_r5, 0.0F, 0.0F, -0.6981F); cube_r5.texOffs(9, 0).addBox(-7.5F, -7.0F, -1.0F, 2.0F, 7.0F, 2.0F, 0.0F, false); hornV2 = new ModelRenderer(this); hornV2.setPos(-3.0F, 26.0F, 0.0F); Head.addChild(hornV2); setRotationAngle(hornV2, 0.0F, -1.1781F, 0.0F); hornV2.texOffs(11, 0).addBox(-3.5F, -36.0F, -2.0F, 3.0F, 1.0F, 3.0F, 0.0F, false); cube_r6 = new ModelRenderer(this); cube_r6.setPos(3.2132F, -39.5353F, -0.5F); hornV2.addChild(cube_r6); setRotationAngle(cube_r6, 0.0F, -0.5672F, -0.6981F); cube_r6.texOffs(11, 0).addBox(-6.5F, -7.0F, 2.25F, 2.0F, 7.0F, 1.0F, 0.0F, false); cube_r6.texOffs(11, 0).addBox(-6.5F, -7.0F, 4.0F, 2.0F, 7.0F, 1.0F, 0.0F, false); cube_r7 = new ModelRenderer(this); cube_r7.setPos(3.075F, -40.311F, -0.5F); hornV2.addChild(cube_r7); setRotationAngle(cube_r7, 0.0F, 0.0F, 0.7854F); cube_r7.texOffs(11, 0).addBox(-8.875F, -1.25F, -1.0F, 2.0F, 4.0F, 2.0F, 0.0F, false); cube_r8 = new ModelRenderer(this); cube_r8.setPos(3.1719F, -40.3345F, -0.5F); hornV2.addChild(cube_r8); setRotationAngle(cube_r8, 0.0F, 0.0F, 0.3491F); cube_r8.texOffs(11, 0).addBox(-9.5F, -0.75F, -1.0F, 2.0F, 4.0F, 2.0F, 0.0F, false); cube_r9 = new ModelRenderer(this); cube_r9.setPos(3.2132F, -39.5353F, -0.5F); hornV2.addChild(cube_r9); setRotationAngle(cube_r9, 0.0F, 0.0F, -0.6981F); cube_r9.texOffs(11, 0).addBox(-7.5F, -7.0F, -1.0F, 2.0F, 7.0F, 2.0F, 0.0F, false); LeftLeg = new ModelRenderer(this); LeftLeg.setPos(1.9F, -12.0F, 0.0F); Loki.addChild(LeftLeg); LeftLeg.texOffs(0, 16).addBox(-2.0F, 0.0F, -2.0F, 4.0F, 12.0F, 4.0F, 1.0F, true); RightLeg = new ModelRenderer(this); RightLeg.setPos(-1.9F, -12.0F, 0.0F); Loki.addChild(RightLeg); RightLeg.texOffs(0, 16).addBox(-2.0F, 0.0F, -2.0F, 4.0F, 12.0F, 4.0F, 1.0F, false); LeftArm = new ModelRenderer(this); LeftArm.setPos(5.0F, -22.0F, 0.0F); Loki.addChild(LeftArm); LeftArm.texOffs(40, 15).addBox(-1.0F, -2.0F, -2.0F, 4.0F, 12.0F, 4.0F, 1.0F, true); RightArm = new ModelRenderer(this); RightArm.setPos(-5.0F, -22.0F, 0.0F); Loki.addChild(RightArm); RightArm.texOffs(40, 15).addBox(-3.0F, -2.0F, -2.0F, 4.0F, 12.0F, 4.0F, 1.0F, false); Body = new ModelRenderer(this); Body.setPos(0.0F, -24.0F, 0.0F); Loki.addChild(Body); Body.texOffs(16, 16).addBox(-4.0F, 0.0F, -2.0F, 8.0F, 12.0F, 4.0F, 1.01F, false); } @Override public void renderToBuffer(MatrixStack matrixStack, IVertexBuilder buffer, int packedLight, int packedOverlay, float red, float green, float blue, float alpha){ Loki.render(matrixStack, buffer, packedLight, packedOverlay); } public void setRotationAngle(ModelRenderer modelRenderer, float x, float y, float z) { modelRenderer.xRot = x; modelRenderer.yRot = y; modelRenderer.zRot = z; } } for the armormaterial I tried both an Enum ArmorMaterial and a class that extends my ArmorItem with an AmorMaterial in it: public class DLokiArmor extends LokiArmorItem{ public DLokiArmor(IArmorMaterial p_i48534_1_, EquipmentSlotType p_i48534_2_, Properties p_i48534_3_) { super(p_i48534_1_, p_i48534_2_, p_i48534_3_); } public static final IArmorMaterial LOKI = new IArmorMaterial() { private final int[] damageReduction = {7, 9, 10, 6}; @Override public int getDurabilityForSlot(EquipmentSlotType slotType) { return 7000; } @Override public int getDefenseForSlot(EquipmentSlotType slotType) { return damageReduction[slotType.getIndex()]; } @Override public int getEnchantmentValue() { return 17; } @Override public SoundEvent getEquipSound() { return SoundEvents.ARMOR_EQUIP_DIAMOND; } @Override public Ingredient getRepairIngredient() { Item item = ForgeRegistries.ITEMS.getValue(new ResourceLocation("minecraft", "diamond")); return Ingredient.of(item); } @Override public String getName() { return "loki_armor"; } @Override public float getToughness() { return 3; } @Override public float getKnockbackResistance() { return 0; } }; @Override public String getArmorTexture(ItemStack stack, Entity entity, EquipmentSlotType slot, String type) { if(stack.getItem() == ModItems.LOKI_LEGGINGS.get()) { return FarosVikingsMod.modID + ":" + "/textures/armor/loki.png" ; } else if(stack.getItem() == ModItems.LOKI_HELMET.get() || stack.getItem() == ModItems.LOKI_CHEST.get() || stack.getItem() == ModItems.LOKI_BOOTS.get()) { return FarosVikingsMod.modID + ":" + "/textures/armor/loki.png" ; } return null; } } public enum LokiArmor implements IArmorMaterial { LOKI_ARMOR("loki", 7, new int[]{7, 9, 10, 6}, 17, SoundEvents.ARMOR_EQUIP_LEATHER,2f, 0.1f,()-> Ingredient.of(ModItems.COPPER_INGOT.get())); private static final int[] baseDurability = {128, 144, 160, 112}; private final String name; private final int durability; private final int[] armorVal; private final int enchantability; private final SoundEvent equipSound; private final float toughniss; private final float knockBackResistance; private final Ingredient repairMaterial; LokiArmor(String name, int durability, int[] armorVal, int enchantability, SoundEvent equipSound, float toughniss, float knockBackResistance, Supplier<Ingredient> repairMaterial) { this.name = name; this.durability = durability; this.armorVal = armorVal; this.enchantability = enchantability; this.equipSound = equipSound; this.toughniss = toughniss; this.knockBackResistance = knockBackResistance; this.repairMaterial = repairMaterial.get(); } @Override public int getDurabilityForSlot(EquipmentSlotType slot) { return this.baseDurability[slot.getIndex() ]* this.durability ; } @Override public int getDefenseForSlot(EquipmentSlotType slot) { return this.armorVal[slot.getIndex()]; } @Override public int getEnchantmentValue() { return this.enchantability; } @Override public SoundEvent getEquipSound() { return this.equipSound; } @Override public Ingredient getRepairIngredient() { return this.repairMaterial; } @Override public String getName() { return this.name; } @Override public float getToughness() { return this.toughniss; } @Override public float getKnockbackResistance() { return this.knockBackResistance; } }
  5. @Valtiel In your ClientProxy code you are implementing IProxy but in 1.16.5 we have now the MojangMappings, so do you know what IProxy is in 1.16.5?
  6. I want to have an Trident item that on use creates an lightning. But if I write somethink into the use funktion it´s impossible to throw the Trident. Heres my Code: https://pastebin.com/9dGFUTMf I know it´s because if i write somethink into the use funktion it overrides the vanilla code but I dont know how to code a throable item.
×
×
  • Create New...

Important Information

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