diff --git a/src/generated/resources/assets/anvilcraft/sounds.json b/src/generated/resources/assets/anvilcraft/sounds.json index 233e628372..df099d73a4 100644 --- a/src/generated/resources/assets/anvilcraft/sounds.json +++ b/src/generated/resources/assets/anvilcraft/sounds.json @@ -99,7 +99,10 @@ }, "quenched_out": { "sounds": [ - "anvilcraft:quenched_out" + { + "attenuation_distance": 64, + "name": "anvilcraft:quenched_out" + } ], "subtitle": "subtitles.anvilcraft.quenched_out" }, diff --git a/src/main/java/dev/dubhe/anvilcraft/block/entity/CelestialForgingAnvilBlockEntity.java b/src/main/java/dev/dubhe/anvilcraft/block/entity/CelestialForgingAnvilBlockEntity.java index f4dc51fb3a..fad8c30b69 100644 --- a/src/main/java/dev/dubhe/anvilcraft/block/entity/CelestialForgingAnvilBlockEntity.java +++ b/src/main/java/dev/dubhe/anvilcraft/block/entity/CelestialForgingAnvilBlockEntity.java @@ -35,6 +35,7 @@ import net.minecraft.core.BlockPos; import net.minecraft.core.HolderLookup; import net.minecraft.nbt.CompoundTag; +import net.minecraft.network.Connection; import net.minecraft.network.RegistryFriendlyByteBuf; import net.minecraft.network.chat.Component; import net.minecraft.network.protocol.Packet; @@ -1369,6 +1370,11 @@ public Packet getUpdatePacket() { return ClientboundBlockEntityDataPacket.create(this); } + @Override + public void onDataPacket(Connection connection, ClientboundBlockEntityDataPacket packet, HolderLookup.Provider registries) { + this.handleUpdateTag(packet.getTag(), registries); + } + /// === 巨构建造 === /// 切换锁定状态。玩家点击锁定按钮时在服务器端调用。 diff --git a/src/main/java/dev/dubhe/anvilcraft/client/event/QuenchedOutMusicHandler.java b/src/main/java/dev/dubhe/anvilcraft/client/event/QuenchedOutMusicHandler.java index 2b89f205a0..a19970f7d3 100644 --- a/src/main/java/dev/dubhe/anvilcraft/client/event/QuenchedOutMusicHandler.java +++ b/src/main/java/dev/dubhe/anvilcraft/client/event/QuenchedOutMusicHandler.java @@ -67,7 +67,7 @@ public static void onLogout(ClientPlayerNetworkEvent.LoggingOut event) { /** 固定在锻星砧位置的单次播放实例,不跟随玩家。 */ private static final class QuenchedOutSound extends AbstractTickableSoundInstance { private QuenchedOutSound(BlockPos pos) { - super(ModSoundEvents.QUENCHED_OUT.get(), SoundSource.MUSIC, SoundInstance.createUnseededRandom()); + super(ModSoundEvents.QUENCHED_OUT.get(), SoundSource.RECORDS, SoundInstance.createUnseededRandom()); this.looping = false; this.delay = 0; this.volume = 1.0F; diff --git a/src/main/java/dev/dubhe/anvilcraft/data/provider/ModSoundDefinitionsProvider.java b/src/main/java/dev/dubhe/anvilcraft/data/provider/ModSoundDefinitionsProvider.java index 75242707d9..e509cb3bc0 100644 --- a/src/main/java/dev/dubhe/anvilcraft/data/provider/ModSoundDefinitionsProvider.java +++ b/src/main/java/dev/dubhe/anvilcraft/data/provider/ModSoundDefinitionsProvider.java @@ -80,6 +80,6 @@ public void registerSounds() { add(ModSoundEvents.QUENCHED_OUT, definition() .subtitle("subtitles.anvilcraft.quenched_out") - .with(sound(AnvilCraft.of("quenched_out")))); + .with(sound(AnvilCraft.of("quenched_out")).attenuationDistance(64))); } } diff --git a/src/main/resources/assets/anvilcraft/sounds/quenched_out.ogg b/src/main/resources/assets/anvilcraft/sounds/quenched_out.ogg index 649c6f9129..0319b7ed24 100644 Binary files a/src/main/resources/assets/anvilcraft/sounds/quenched_out.ogg and b/src/main/resources/assets/anvilcraft/sounds/quenched_out.ogg differ