SuperMartijn642的配置库

![SuperMartijn642的配置库](https://api.mozugongfang.com/image/62cd01b0da48415bb60d8c9c2881d3cd_webp.png) **SuperMartijn642的配置库**

资源介绍

![SuperMartijn642的配置库](https://api.mozugongfang.com/image/62cd01b0da48415bb60d8c9c2881d3cd_webp.png) **SuperMartijn642的配置库** 允许你**只需指定一次配置**,它随后会**自动处理世界加载之间的值重载、与客户端同步值**,并**自行生成仅适用于客户端或服务器的值**。### 创建配置:使用 `ModConfigBuilder` 创建配置。只需使用 `#ModConfigBuilder()` 创建新实例即可。```java    ModConfigBuilder builder = new ModConfigBuilder(); 可以使用 `ModConfigBuilder#define` 向配置添加值,该方法接受名称和默认值。对于整数和双精度值,还需要最小值和最大值。`ModConfigBuilder#define` 返回一个 `Supplier`,应将其存储以便从配置中检索值。```java    Supplier<Boolean> booleanValue = builder.define( "booleanValue", true );    Supplier<Integer> integerValue = builder.define( "integerValue", 5, 0, 10 );    Supplier<Double> doubleValue = builder.define( "doubleValue", 0.5, 0, 1);    Supplier<ExampleEnum> enumValue = builder.define( "enumValue", ExampleEnum.VALUE_1 ); 在定义值之前调用 `ModConfigBuilder#comment(String)` 可以为值添加注释。```java    Supplier<Boolean> valueWithComment = builder.comment( "这是'valueWithComment'的注释" ).define( "valueWithComment ", true ); 默认情况下,在世界加载时会重载值。这可以通过在定义值之前调用 `ModConfigBuilder#gameRestart()` 更改为仅在 Minecraft 启动时重载值。```java    Supplier<Boolean> notReloadedValue = builder.comment( "此值不会被重载" ).define( "notReloadedValue", true ); COMMON 或 SERVER 配置中的值默认会与客户端同步,要防止这种情况,请使用 `ModConfigBuilder#dontSync()`。```java    Supplier<Boolean> notSynchronizedValue = builder.comment( "此值不会同步" ).define( "notSynchronizedValue", true ); 值也可以放入类别中。`ModConfigBuilder#push(String)` 推送一个类别,而 `ModConfigBuilder#pop()` 弹出类别。```java    builder.push( "special" );    Supplier<Boolean> specialValue = builder.comment( "此值位于'special'类别中" ).define( "specialValue", true );    builder.pop(); 可以使用 `ModConfigBuilder#categoryComment(String)` 为活动类别添加注释。```java    builder.push( "client" ).categoryComment( "这是'client'类别的注释" ); 定义所有值后,必须调用 `ModConfigBuilder#build()` 来完成配置。```java    builder.build(); 现在,配置中的值将自动重载和同步,并且可以使用存储的 `Supplier` 实例检索这些值。这将适用于所有可用版本,包括 Minecraft 1.12、1.14、1.15、1.16、1.17、1.18 和 1.19。### 示例模组:有关如何使用配置库的具体示例,请查看 (https://github.com/SuperMartijn642/SuperMartijn642sConfigLib/blob/1.16/src/test/java/ExampleModConfig.java)。### 常见问题我可以在我的整合包中使用你的模组吗?是的,请随意在你的整合包中使用我的模组### Discord 如需未来内容、即将推出的模组和讨论,欢迎加入 SuperMartijn642 Discord 服务器! [ ](https://discord.gg/QEbGyUYB2e)

在鱼乐云资源中心浏览该资源,登录后可一键安装到你的游戏服务器。

返回资源中心