概览
minecraft:economy_trade_table 是一个实体组件:写在自定义生物的 components 对象中,或其中某个组件组里。 让玩家通过价格随需求变化的交易表与实体交易,就像村民交易一样。把它指向你包里的交易文件。
字段
| 字段 | 类型 | 默认值 | 说明 |
|---|---|---|---|
convert_trades_economy | Boolean | "false" | 生物转变时,用新的交易表重建交易,同时保留相同的交易不变。 |
cured_discount | Range [a, b] | "[-25, -20]" | 玩家治愈这个僵尸村民后获得的价格折扣。 |
display_name | String | 无 | 交易界面顶部显示的名称。 |
hero_demand_discount | Integer | "-4" | 在旧价格公式中,村庄英雄效果降低需求的程度。 |
max_cured_discount | Range [a, b] | "[-25, -20]" | 治愈这个僵尸村民最多能获得的折扣。 |
max_nearby_cured_discount | Integer | "-200" | 治愈附近僵尸村民最多能获得的折扣,仅用于旧公式。 |
nearby_cured_discount | Integer | "-20" | 玩家治愈附近的僵尸村民后获得的价格折扣。 |
new_screen | Boolean | "false" | 使用较新的交易界面。 |
persist_trades | Boolean | "false" | 生物转变成另一个商人后保留相同的交易。 |
show_trade_screen | Boolean | "true" | 玩家与生物互动时打开交易界面。 |
table | String | 无 | 你包中交易表文件的路径。 |
use_legacy_price_formula | Boolean | "false" | 使用旧的价格计算方式。 |
示例
写在 BP/entities/<name>.json 的 components 对象中(值为默认值或占位值):
BP/entities/<name>.json
{
"minecraft:economy_trade_table": {
"convert_trades_economy": "false",
"cured_discount": "[-25, -20]",
"display_name": "",
"hero_demand_discount": "-4",
"max_cured_discount": "[-25, -20]",
"max_nearby_cured_discount": "-200",
"nearby_cured_discount": "-20",
"new_screen": "false"
}
}