Изменение звуков шагов/прыжков/бега при ношении определённого сета брони

Версия Minecraft
1.12.2
API
51
8
5
Привет, я создаю мод на силовую броню для Minecraft, все работает хорошо, но я столкнулся с одной проблемой. Как мне изменить звук при ходьбе / прыжках / беге в этой броне? Я не имею в виду звук надевания брони. Я создаю мод с помощью mcreator 2021.1, есть ли возможность добавить мои собственные звуки (перечисленные выше) с помощью пользовательского кода и как это сделать?


Вот код брони (без элементов модели)
package net.mcreator.falloutarmor.item;

import net.minecraftforge.fml.relauncher.SideOnly; import net.minecraftforge.fml.relauncher.Side; import net.minecraftforge.fml.common.registry.GameRegistry; import net.minecraftforge.common.util.EnumHelper; import net.minecraftforge.client.model.ModelLoader; import net.minecraftforge.client.event.ModelRegistryEvent; import net.minecraft.world.World; import net.minecraft.util.ResourceLocation; import net.minecraft.item.ItemStack; import net.minecraft.item.ItemArmor; import net.minecraft.item.Item; import net.minecraft.inventory.EntityEquipmentSlot; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.entity.EntityLivingBase; import net.minecraft.entity.Entity; import net.minecraft.creativetab.CreativeTabs; import net.minecraft.client.renderer.block.model.ModelResourceLocation; import net.minecraft.client.model.ModelRenderer; import net.minecraft.client.model.ModelBox; import net.minecraft.client.model.ModelBiped; import net.minecraft.client.model.ModelBase; import net.mcreator.falloutarmor.procedure.ProcedureX03armorBodyTickEvent; import net.mcreator.falloutarmor.ElementsFalloutArmorMod; import java.util.Map; import java.util.HashMap; @ElementsFalloutArmorMod.ModElement.Tag public class ItemX03armor extends ElementsFalloutArmorMod.ModElement { @GameRegistry.ObjectHolder("fallout_armor:x_01armorhelmet") public static final Item helmet = null; @GameRegistry.ObjectHolder("fallout_armor:x_01armorbody") public static final Item body = null; @GameRegistry.ObjectHolder("fallout_armor:x_01armorlegs") public static final Item legs = null; @GameRegistry.ObjectHolder("fallout_armor:x_01armorboots") public static final Item boots = null; public ItemX03armor(ElementsFalloutArmorMod instance) { super(instance, 1); } @Override public void initElements() { ItemArmor.ArmorMaterial enuma = EnumHelper.addArmorMaterial("X_01ARMOR", "fallout_armor:xo1_armor_", 100, new int[]{2, 5, 6, 2}, 9, (net.minecraft.util.SoundEvent) net.minecraft.util.SoundEvent.REGISTRY.getObject(new ResourceLocation("")), 0f); elements.items.add(() -> new ItemArmor(enuma, 0, EntityEquipmentSlot.HEAD) { @Override @SideOnly(Side.CLIENT) public ModelBiped getArmorModel(EntityLivingBase living, ItemStack stack, EntityEquipmentSlot slot, ModelBiped defaultModel) { ModelBiped armorModel = new ModelBiped(); armorModel.bipedHead = new Modelxo1_head().HEAD; armorModel.isSneak = living.isSneaking(); armorModel.isRiding = living.isRiding(); armorModel.isChild = living.isChild(); return armorModel; } @Override public String getArmorTexture(ItemStack stack, Entity entity, EntityEquipmentSlot slot, String type) { return "fallout_armor:textures/xo1_head.png"; } }.setUnlocalizedName("x_01armorhelmet").setRegistryName("x_01armorhelmet").setCreativeTab(CreativeTabs.COMBAT)); elements.items.add(() -> new ItemArmor(enuma, 0, EntityEquipmentSlot.CHEST) { @Override @SideOnly(Side.CLIENT) public ModelBiped getArmorModel(EntityLivingBase living, ItemStack stack, EntityEquipmentSlot slot, ModelBiped defaultModel) { ModelBiped armorModel = new ModelBiped(); armorModel.bipedBody = new Modelxo1_body().body; armorModel.isSneak = living.isSneaking(); armorModel.isRiding = living.isRiding(); armorModel.isChild = living.isChild(); return armorModel; } @Override public String getArmorTexture(ItemStack stack, Entity entity, EntityEquipmentSlot slot, String type) { return "fallout_armor:textures/xo1_head.png"; } @Override public void onArmorTick(World world, EntityPlayer entity, ItemStack itemstack) { int x = (int) entity.posX; int y = (int) entity.posY; int z = (int) entity.posZ; { Map<String, Object> $_dependencies = new HashMap<>(); $_dependencies.put("entity", entity); $_dependencies.put("itemstack", itemstack); ProcedureX03armorBodyTickEvent.executeProcedure($_dependencies); } } }.setUnlocalizedName("x_01armorbody").setRegistryName("x_01armorbody").setCreativeTab(CreativeTabs.COMBAT)); elements.items.add(() -> new ItemArmor(enuma, 0, EntityEquipmentSlot.LEGS) { @Override @SideOnly(Side.CLIENT) public ModelBiped getArmorModel(EntityLivingBase living, ItemStack stack, EntityEquipmentSlot slot, ModelBiped defaultModel) { ModelBiped armorModel = new ModelBiped(); armorModel.bipedLeftLeg = new Modelxo1_leggs().leftleg; armorModel.bipedRightLeg = new Modelxo1_leggs().rightleg; armorModel.isSneak = living.isSneaking(); armorModel.isRiding = living.isRiding(); armorModel.isChild = living.isChild(); return armorModel; } @Override public String getArmorTexture(ItemStack stack, Entity entity, EntityEquipmentSlot slot, String type) { return "fallout_armor:textures/xo1_head.png"; } }.setUnlocalizedName("x_01armorlegs").setRegistryName("x_01armorlegs").setCreativeTab(CreativeTabs.COMBAT)); elements.items.add(() -> new ItemArmor(enuma, 0, EntityEquipmentSlot.FEET) { @Override @SideOnly(Side.CLIENT) public ModelBiped getArmorModel(EntityLivingBase living, ItemStack stack, EntityEquipmentSlot slot, ModelBiped defaultModel) { ModelBiped armorModel = new ModelBiped(); armorModel.bipedLeftLeg = new Modelxo1_boots().leftboot; armorModel.bipedRightLeg = new Modelxo1_boots().rightboot; armorModel.isSneak = living.isSneaking(); armorModel.isRiding = living.isRiding(); armorModel.isChild = living.isChild(); return armorModel; } @Override public String getArmorTexture(ItemStack stack, Entity entity, EntityEquipmentSlot slot, String type) { return "fallout_armor:textures/xo1_head.png"; } }.setUnlocalizedName("x_01armorboots").setRegistryName("x_01armorboots").setCreativeTab(CreativeTabs.COMBAT)); } @SideOnly(Side.CLIENT) @Override public void registerModels(ModelRegistryEvent event) { ModelLoader.setCustomModelResourceLocation(helmet, 0, new ModelResourceLocation("fallout_armor:x_01armorhelmet", "inventory")); ModelLoader.setCustomModelResourceLocation(body, 0, new ModelResourceLocation("fallout_armor:x_01armorbody", "inventory")); ModelLoader.setCustomModelResourceLocation(legs, 0, new ModelResourceLocation("fallout_armor:x_01armorlegs", "inventory")); ModelLoader.setCustomModelResourceLocation(boots, 0, new ModelResourceLocation("fallout_armor:x_01armorboots", "inventory")); }
 
Назад
Сверху