Class ExtendedSoundType
java.lang.Object
net.minecraft.world.level.block.SoundType
net.minecraftforge.common.util.ForgeSoundType
team.lodestar.lodestone.systems.sound.ExtendedSoundType
public class ExtendedSoundType
extends net.minecraftforge.common.util.ForgeSoundType
An ExtendedSoundType is a simple extension of ForgeSoundType, also providing hooks for when each individual sound is played.
-
Field Summary
Fields inherited from class net.minecraft.world.level.block.SoundType
AMETHYST, AMETHYST_CLUSTER, ANCIENT_DEBRIS, ANVIL, AZALEA, AZALEA_LEAVES, BAMBOO, BAMBOO_SAPLING, BASALT, BIG_DRIPLEAF, BONE_BLOCK, CALCITE, CANDLE, CAVE_VINES, CHAIN, COPPER, CORAL_BLOCK, CROP, DEEPSLATE, DEEPSLATE_BRICKS, DEEPSLATE_TILES, DRIPSTONE_BLOCK, FLOWERING_AZALEA, FUNGUS, GILDED_BLACKSTONE, GLASS, GLOW_LICHEN, GRASS, GRAVEL, HANGING_ROOTS, HARD_CROP, HONEY_BLOCK, LADDER, LANTERN, LARGE_AMETHYST_BUD, LILY_PAD, LODESTONE, MEDIUM_AMETHYST_BUD, METAL, MOSS, MOSS_CARPET, NETHER_BRICKS, NETHER_GOLD_ORE, NETHER_ORE, NETHER_SPROUTS, NETHER_WART, NETHERITE_BLOCK, NETHERRACK, NYLIUM, pitch, POINTED_DRIPSTONE, POLISHED_DEEPSLATE, POWDER_SNOW, ROOTED_DIRT, ROOTS, SAND, SCAFFOLDING, SCULK_SENSOR, SHROOMLIGHT, SLIME_BLOCK, SMALL_AMETHYST_BUD, SMALL_DRIPLEAF, SNOW, SOUL_SAND, SOUL_SOIL, SPORE_BLOSSOM, STEM, STONE, SWEET_BERRY_BUSH, TUFF, TWISTING_VINES, VINE, volume, WART_BLOCK, WEEPING_VINES, WET_GRASS, WOOD, WOOL -
Constructor Summary
ConstructorsConstructorDescriptionExtendedSoundType(float volumeIn, float pitchIn, Supplier<net.minecraft.sounds.SoundEvent> breakSoundIn, Supplier<net.minecraft.sounds.SoundEvent> stepSoundIn, Supplier<net.minecraft.sounds.SoundEvent> placeSoundIn, Supplier<net.minecraft.sounds.SoundEvent> hitSoundIn, Supplier<net.minecraft.sounds.SoundEvent> fallSoundIn) -
Method Summary
Modifier and TypeMethodDescriptionvoidonPlayBreakSound(net.minecraft.world.level.Level level, net.minecraft.core.BlockPos pos) Called by mixin injection when the block broken sound plays invoidonPlayFallSound(net.minecraft.world.level.Level level, net.minecraft.core.BlockPos pos, net.minecraft.sounds.SoundSource category) Called by mixin injection when an entity plays the fall sound invoidonPlayHitSound(net.minecraft.core.BlockPos pos) Called by mixin injection when the block breaking progress sound is played invoidonPlayPlaceSound(net.minecraft.world.level.Level level, net.minecraft.core.BlockPos pos, net.minecraft.world.entity.player.Player player) Called by mixin injection when a player triggers the block place sound invoidonPlayStepSound(net.minecraft.world.level.Level level, net.minecraft.core.BlockPos pos, net.minecraft.world.level.block.state.BlockState state, net.minecraft.sounds.SoundSource category) Called by mixin injection when an entity triggers the block step sound inMethods inherited from class net.minecraftforge.common.util.ForgeSoundType
getBreakSound, getFallSound, getHitSound, getPlaceSound, getStepSoundMethods inherited from class net.minecraft.world.level.block.SoundType
getPitch, getVolume
-
Constructor Details
-
ExtendedSoundType
public ExtendedSoundType(float volumeIn, float pitchIn, Supplier<net.minecraft.sounds.SoundEvent> breakSoundIn, Supplier<net.minecraft.sounds.SoundEvent> stepSoundIn, Supplier<net.minecraft.sounds.SoundEvent> placeSoundIn, Supplier<net.minecraft.sounds.SoundEvent> hitSoundIn, Supplier<net.minecraft.sounds.SoundEvent> fallSoundIn)
-
-
Method Details
-
onPlayBreakSound
public void onPlayBreakSound(net.minecraft.world.level.Level level, net.minecraft.core.BlockPos pos) Called by mixin injection when the block broken sound plays inLevelRenderer.levelEvent(Player, int, BlockPos, int)Example Implementation, matches the original logic of the parent sound being played:
level.playLocalSound(pos.getX() + 0.5, pos.getY() + 0.5, pos.getZ() + 0.5, getBreakSound(), SoundSource.BLOCKS, (getVolume() + 1.0F) / 2.0F, getPitch() * 0.8F, false); -
onPlayStepSound
public void onPlayStepSound(net.minecraft.world.level.Level level, net.minecraft.core.BlockPos pos, net.minecraft.world.level.block.state.BlockState state, net.minecraft.sounds.SoundSource category) Called by mixin injection when an entity triggers the block step sound inEntity.playStepSound(BlockPos, BlockState)Example Implementation, matches the original logic of the parent sound being played:
level.playSound(null, pos.getX(), pos.getY(), pos.getZ(), getStepSound(), category, getVolume() * 0.15F, getPitch()); -
onPlayPlaceSound
public void onPlayPlaceSound(net.minecraft.world.level.Level level, net.minecraft.core.BlockPos pos, net.minecraft.world.entity.player.Player player) Called by mixin injection when a player triggers the block place sound inBlockItem.place(BlockPlaceContext)Example Implementation, matches the original logic of the parent sound being played:
level.playSound(player, pos, getPlaceSound(), SoundSource.BLOCKS, (getVolume() + 1.0F) / 2.0F, getPitch() * 0.8F); -
onPlayHitSound
public void onPlayHitSound(net.minecraft.core.BlockPos pos) Called by mixin injection when the block breaking progress sound is played inMultiPlayerGameMode.continueDestroyBlock(BlockPos, Direction)Example Implementation, matches the original logic of the parent sound being played:
Minecraft.getInstance().getSoundManager().play(new SimpleSoundInstance(getHitSound(), SoundSource.BLOCKS, (getVolume() + 1.0F) / 8.0F, getPitch() * 0.5F, pos)); -
onPlayFallSound
public void onPlayFallSound(net.minecraft.world.level.Level level, net.minecraft.core.BlockPos pos, net.minecraft.sounds.SoundSource category) Called by mixin injection when an entity plays the fall sound inLivingEntity.playBlockFallSound()Example Implementation, matches the original logic of the parent sound being played:
level.playSound(null, pos.getX(), pos.getY(), pos.getZ(), getFallSound(), category, getVolume() * 0.5F, getPitch() * 0.75f);
-