|
环境驱动JSON (env.json)Github |相关wiki |源站链接支持: fabric , quiltenv.json是一个Minecraft库,引入了一种新的子JSON文件扩展格式,其目标是根据环境上下文将Minecraft资源重定向到其他资源。
支持
[https://github.com/JR1811/Boatism/blob/5bdbea79b11428101353c4a67ccd4b3821200a76/extrernal/promo/badges/supported_on_fabric_loader.png?raw=true] ](链接)
[https://github.com/JR1811/Boatism/blob/5bdbea79b11428101353c4a67ccd4b3821200a76/extrernal/promo/badges/supported_on_quilt_loader.png?raw=true] ](链接)
需求
[https://github.com/JR1811/Boatism/blob/5bdbea79b11428101353c4a67ccd4b3821200a76/extrernal/promo/badges/requires_fabric_api.png?raw=true] ](链接)
概念
env.json是一个Minecraft库,引入了一种新的子JSON文件扩展格式,其目标是根据环境上下文将Minecraft资源重定向到其他资源。
实现
env.json不直接提供这些重定向,而是提供环境驱动资产(EDA)和环境驱动数据(EDD)两个官方实现。
- [环境驱动资产 (EDA)](链接)
Mod标识符:env-driven-assets。
环境:客户端。
将env.json操作应用于Minecraft基础资产类型。
- [环境驱动数据 (EDD)](链接)
Mod标识符:env-driven-data。
环境:通用和服务器。
将env.json操作应用于Minecraft基础数据类型。
env.json格式
json
[
{
\"rules\": [ // 主要规则集,是一个\"任意\"类型
{
\"type\": \"sequence\", // 序列中的所有规则都必须通过
\"rule\": [] // 规则
},
{
\"type\": \"any\", // 如果至少有一个规则通过则通过
\"rule\": [] // 规则
},
{
\"type\": \"not\", // 反转规则
\"rule\": { // 规则
\"type\": \"...\",
\"rule\": \"...\"
}
},
{
\"type\": \"dimension\", // 如果当前维度与此匹配则通过
\"rule\": \"minecraft:overworld\" // 维度,也可以是标签
},
{
\"type\": \"biome\", // 如果当前生物群系与此匹配则通过
\"rule\": \"minecraft:plains\" // 生物群系,也可以是标签
},
{
\"type\": \"x_coord\", // 如果x轴上的以下操作有效则通过
\"rule\": {
\"comparator\": \"==\", // 必须是<, >, ==, <=, >=, =<或=>
\"value\": \"100\" // 必须是整数
}
},
{
\"type\": \"y_coord\", // 如果y轴上的以下操作有效则通过
\"rule\": {
\"comparator\": \"==\", // 必须是<, >, ==, <=, >=, =<或=>
\"value\": \"100\" // 必须是整数
}
},
{
\"type\": \"z_coord\", // 如果z轴上的以下操作有效则通过
\"rule\": {
\"comparator\": \"==\", // 必须是<, >, ==, <=, >=, =<或=>
\"value\": \"100\" // 必须是整数
}
},
{
\"type\": \"submerged\", // 如果当前上下文被水包围则通过
\"rule\": true // 如果被水包围则为true,否则为false
},
{
\"type\": \"sky\", // 如果上下文在天空限制上方,等于或下方则通过
\"rule\": \"at\" // 必须是\"above\",\"at\"或\"below\"
},
{
\"type\": \"water\", // 如果上下文在水面上方,等于或下方则通过
\"rule\": \"at\" // 必须是\"above\",\"at\"或\"below\"
},
{
\"type\": \"void\", // 如果上下文在虚空限制上方,等于或下方则通过
\"rule\": \"at\" // 必须是\"above\",\"at\"或\"below\"
}
],
\"result\": \"minecraft:block/stone\" // 重定向的资源
}
]
文件必须按照以下格式注册:`redirected_resource_name-redirected_resource_extension.env.json`。
开发者使用方法
在你的`build.gradle`中:
groovy
repositories {
// ...
maven { url \'https://jitpack.io\' }
}
// ...
dependencies {
// ...
modImplementation \"com.github.FirstMegaGame4:env.json:${theMostBeautifulVersionYouCanFind}\"
}
现在你可以通过`ExtendedResource#of(Resource)#getEnvJson`从`Resource`对象中获取你的`EnvJson`对象,或者使用`EnvJson#parse(Path)`或`EnvJson#parse(InputStream)`进行解析。
开发者徽章
[https://github.com/FirstMegaGame4/env.json/blob/main/external/promo/badge.png?raw=true] ](链接)
`[https://github.com/FirstMegaGame4/env.json/blob/main/external/promo/badge.png?raw=true] ](链接)`
推广
[[img]https://raw.githubusercontent.com/ModFest/art/3
[modrinth_id id=[/img]
文章类型:收录
layui.use([\'form\'], function(){
var form = layui.form;
});
环境驱动JSON |
楼主
2025-8-10 17:36:22
回复(0)
收起回复
|