Trophy Properties(奖杯条目数据类)
基本信息
| 属性 | 值 |
|---|---|
| 类名 | glowredman.amazingtrophies.api.TrophyProperties |
| 构造 | new TrophyProperties(modelHandler) |
| 注册 | AmazingTrophiesAPI.registerTrophy(id, props) |
字段
| 字段 | 类型 | 含义 |
|---|---|---|
id |
String | 由 registerTrophy 注入;equals 也按 id 匹配 |
modelHandler |
TrophyModelHandler | 服务端必须为 null;客户端可为 null(不画模型)或一个 handler |
服务端的
modelHandler也允许为非空——TrophyHandler.parseTrophy会根据FMLLaunchHandler.side().isClient()决定是否解析model子对象。在专用服务端上该值为null。
配置字段(来自 TrophyHandler.parseTrophy)
| 字段 | 类型 | 必填 | 含义 |
|---|---|---|---|
id |
字符串 | 是 | 条目 ID |
condition |
JSON 对象 | 否 | {"type": "<ConditionHandler ID>", ...};type 字段选 Handler,condition 子对象传给 parse |
model |
JSON 对象 | 否 | 仅客户端生效;{"type": "<ModelHandler ID>", ...} 选 model handler,子对象传给 handler parse |
注意:
condition必须最后解析——它可能会读取props.getID()。
equals
两个 TrophyProperties 相等当且仅当 id.equals(other.id)。
JSON 示例
{
"id": "first_iron_cup",
"condition": {
"type": "block.break",
"block": "minecraft:iron_ore",
"meta": 0
},
"model": {
"type": "pedestal"
}
}
相关条目
源码
src/main/java/glowredman/amazingtrophies/api/TrophyProperties.javasrc/main/java/glowredman/amazingtrophies/TrophyHandler.java