如何使用 Fabric 获取 Minecraft 路径

Dow*_*zza 3 java minecraft minecraft-fabric

我有一个 mod 想要读取splits.ymlminecraft 目录中的文件,其中包含其他配置(config.txt 等)。我不知道我会怎么做。我的第一个想法是使用 Mixin

@Mixin(GameOptions.class)
public class GameOptionsMixin {
    @Shadow @Final private File optionsFile;

    @Inject(method = "load", at = @At("RETURN"))
    private void load(CallbackInfo info) {
        File splits = new File(optionsFile.getParent(), "splits.yml");    
    }
}
Run Code Online (Sandbox Code Playgroud)

但我不知道如何提取价值。我也不相信该文件夹会是.minecraft因为许多结构用户使用 MultiMC。

Dow*_*zza 6

好吧,我现在想通了。

您可以使用FabricLoader.getInstance().getConfigDir()将目录获取为 aPathFabricLoader.getInstance().getConfigDir().resolve("splits.yml")获取我需要的文件。希望这对将来的任何人有帮助