BBSMC Logo
模组
资源包
数据包
整合包
光影
插件
软件资源
论坛
登录
模组插件数据包光影资源包整合包资源
登录
设置
SuperMartijn642's Config Lib

SuperMartijn642's Config Lib

配置依赖使处理配置文件变得更加容易一些。

3
0
前置
实用工具
游戏机制

基本信息

我的世界Java版本

1.21–1.21.4
1.20.x
1.19.x
1.18.x
1.17.x
1.16.x
1.15.x
1.14.x
1.12.x

平台

\n \n \n Fabric
\n \n \n Forge
NeoForge
\n \n \n \n \n \n \n \n \n Quilt

其他链接

反馈问题 查看源码
CurseForge地址

创作团队

BBSMC 官方搬运(3)
BBSMC 官方搬运(3)团队

详情信息

许可证 保留所有权益/无许可证
发布于 4 months ago
更新于 5 months ago
简介更新日志版本百科反馈讨论

SuperMartijn642的配置库

SuperMartijn642的配置库 允许你 仅指定一次配置 ,然后它会 自行处理在世界加载之间重新加载值 、 与客户端同步值 以及 为仅客户端或仅服务器生成值 等操作。

分隔符

创建一个配置:

使用ModConfigBuilder来创建一个配置。

只需使用#ModConfigBuilder()创建一个新实例即可。

ModConfigBuilder builder = 新的 ModConfigBuilder();

可以使用ModConfigBuilder#define向配置中添加一个值,该方法接受一个名称和一个默认值。

对于整数和双精度值,还需要指定最小值和最大值。

测试代码块;

ModConfigBuilder#define会返回一个Supplier,应该将其存储起来以便从配置中获取值。

Supplier <boolean> booleanValue = builder .define( "booleanValue" , true ); </boolean>

Supplier <integer> integerValue = builder .define( "integerValue" , 5 , 0 , 10 ); </integer>

Supplier <double> doubleValue = builder .define( "doubleValue" , 0.5 , 0 , 1 ); </double>

Supplier <exampleenum> enumValue = builder .define( "enumValue" , ExampleEnum. VALUE_1 ); </exampleenum>

在定义值之前,可以通过调用ModConfigBuilder#comment(String)为一个值添加注释。

Supplier <boolean> valueWithComment = builder .comment( "这是针对'valueWithComment'的注释" ).define( "valueWithComment " , true ); </boolean>

默认情况下,值会在世界加载时重新加载。

可以通过在定义值之前调用ModConfigBuilder#gameRestart()将其改为仅在Minecraft启动时重新加载一个值。

Supplier <boolean> notReloadedValue = builder .comment( "这个值将不会被重新加载" ).define( "notReloadedValue" , true ); </boolean>

默认情况下,COMMON或SERVER配置中的值会与客户端同步,要阻止这种情况可使用ModConfigBuilder#dontSync()。

Supplier <boolean> notSynchronizedValue = builder .comment( "这个值将不会被同步" ).define( "notSynchronizedValue" , true ); </boolean>

值也可以被归入类别。

ModConfigBuilder#push(String)会推送一个类别,而ModConfigBuilder#pop()会弹出一个类别。

builder .push( "特殊" );

Supplier <boolean> specialValue = builder .comment( "这个值在'特殊'类别中" ).define( "specialValue" , true ); </boolean>

builder .pop();

可以使用ModConfigBuilder#categoryComment(String)为当前活动类别添加注释。

builder .push( "客户端" ).categoryComment( "这是针对'客户端'类别的注释" );

在定义完所有值之后,必须调用ModConfigBuilder#build()来完成配置。

builder .build();

现在,你配置中的值将自动重新加载和同步,并且可以使用存储的Supplier实例来获取这些值。

这将适用于所有可用版本,包括Minecraft 1.12、1.14、1.15和1.16。

分隔符

示例模组:

有关如何使用配置库的具体示例,请查看 示例模组 。

分隔符

Discord

如需了解未来内容、即将推出的模组以及参与讨论,欢迎随时加入SuperMartijn642的Discord服务器!

分隔符

Patreon

法律相关事项

SuperMartijn642的配置库是SuperMartijn642的财产,受版权法保护,未经SuperMartijn642直接许可,不得修改或重新上传。
设置
"Minecraft"以及"我的世界"为美国微软公司的商标 本站与微软公司没有从属关系

本站与Modrinth无从属关系,网站遵循Modrinth网站程序的LGPL协议开源 开源地址

版权所有 © 2019-2024 青岛柒兮网络科技有限公司 | ICP经营许可证: 鲁B2-20210590 | ICP备案: 鲁ICP备2021009459号-12