在我的 Minecraft 1.14.4 中,音乐光盘不会因距离而变得更安静 mod

Music discs have do not get quieter by distance in my Minecraft 1.14.4 mod

我在将自定义音乐光盘应用到游戏中时遇到问题。实际项目的所有内容(纹理、模型、点唱机中播放的音乐等)都可以正常工作,但是,当音乐正在播放时,无论您身在何处,都可以听到它。我想使我的音乐光盘像原版光盘一样具有有限的距离。

这是我注册的物品(只有一张音乐碟,为了方便我把其他的都去掉了):

@SubscribeEvent
public static void registerItems(final RegistryEvent.Register<Item> event) {

    event.getRegistry().registerAll
    (
        //All other items
        ModItems.music_disc_song = new ModMusicDiscItem(15, new SoundEvent(location("song")), (new Item.Properties().group(MODGROUP).maxStackSize(1).rarity(Rarity.RARE))).setRegistryName(location("music_disc_song"))
    );
}

这是我在 ModItems 中对光盘的初始化:

//All other items
public static Item music_disc_song;

这是 class ModMusicDiscItem:

public class ModMusicDiscItem extends MusicDiscItem {

    public ModMusicDiscItem(int id, SoundEvent sound, Item.Properties prop) {
        super(id, sound, prop);
    }
}

这是我的 sounds.json:

{
    "song": {
        "sounds": [
            {
                "name": "censoredid:music_discs/song",
                "volume": 0.05,
                "stream": true
            }
        ]
    }
}

同样,音乐播放正常,但音量不会随着距离的增加而降低。此代码适用于 1.13.2(当然将 MusicDiscItem 更改为 ItemRecord),但不适用于 1.14.3 或 1.14.4。感谢您的帮助。

This answer on Arqade 表示声音有可以影响它的控制台命令;这似乎表明,在 sounds.json 文件中为 "volume" 输入一个非零值可能会导致它成为全局的。 我现在无法对其进行试验,但请尝试删除 volume 变量,或将其设置为等于值 0。

如果这不起作用,请尝试其他答案中的服务器命令。

文件需要以单声道录制,然后传输到 .ogg。单声道允许游戏单独基于视角编辑声音,而立体声(你正在处理的是什么)播放音频文件,一个音频文件。