Files
minecraft-bedrock-json-schemas/source/behavior/trading/trading.json

178 lines
6.3 KiB
JSON
Raw Normal View History

2021-06-06 10:07:19 +00:00
{
"$id": "blockception.minecraft.behavior.trading",
"type": "object",
"additionalProperties": false,
2021-06-16 16:19:12 +02:00
"description": "UNDOCUMENTED",
2021-07-01 11:35:53 +02:00
"$comment": "UNDOCUMENTED",
2021-06-09 11:12:18 +02:00
"title": "Trading",
2021-06-06 10:07:19 +00:00
"examples": [
{
"tiers": [
{
"trades": [{ "wants": [{ "item": "minecraft:coal:0", "quantity": { "min": 16, "max": 24 } }], "gives": [{ "item": "minecraft:emerald" }] }]
}
]
}
],
"definitions": {
"Item": {
"title": "Item",
"oneOf": [
{ "type": "string" },
{
"type": "object",
"additionalProperties": false,
"properties": {
"item": { "type": "string", "title": "Item Identifier" },
"price_multiplier": { "type": "number", "title": "Price Multiplier" },
"quantity": {
"title": "Quantity",
"oneOf": [
{ "type": "integer", "minimum": 1, "title": "Amount" },
{
"type": "object",
"additionalProperties": false,
"required": ["min", "max"],
"properties": {
"min": { "type": "integer", "minimum": 1, "title": "Minimum" },
"max": { "type": "integer", "minimum": 1, "title": "Maximum" }
}
}
]
},
"functions": { "$ref": "#/definitions/Functions" }
}
}
]
},
"Functions": {
"title": "Functions",
"type": "array",
"items": { "type": "object", "required": ["function"], "$ref": "../loot_tables/functions.json" }
},
"TradeArray": {
"type": "array",
"title": "Trades",
"items": {
"additionalProperties": false,
"type": "object",
"title": "Trade",
"required": ["wants", "gives"],
"properties": {
"gives": {
"type": "array",
"title": "Gives",
"items": {
"title": "Give",
"oneOf": [
{ "type": "string" },
{
"type": "object",
"additionalProperties": false,
"properties": {
"item": { "type": "string", "title": "Item Identifier" },
"quantity": {
"title": "Quantity",
"oneOf": [
{ "type": "integer", "minimum": 1, "title": "Amount" },
{
"type": "object",
"additionalProperties": false,
"required": ["min", "max"],
"properties": {
"min": { "type": "integer", "minimum": 1, "title": "Minimum" },
"max": { "type": "integer", "minimum": 1, "title": "Maximum" }
}
}
]
},
"functions": { "$ref": "#/definitions/Functions" },
2021-07-01 11:35:53 +02:00
"choice": {
"title": "Choice",
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"type": "array",
"items": { "$ref": "#/definitions/Item" }
}
2021-06-06 10:07:19 +00:00
}
}
]
}
},
"wants": {
"type": "array",
"title": "Wants",
"items": {
"title": "Want",
"oneOf": [
{ "type": "string" },
{
"type": "object",
"additionalProperties": false,
"properties": {
"item": { "type": "string", "title": "Item Identifier" },
"quantity": {
"title": "Quantity",
"oneOf": [
{ "type": "integer", "minimum": 1, "title": "Amount" },
{
"type": "object",
"additionalProperties": false,
"required": ["min", "max"],
"properties": {
"min": { "type": "integer", "minimum": 1, "title": "Minimum" },
"max": { "type": "integer", "minimum": 1, "title": "Maximum" }
}
}
]
},
2021-07-01 16:37:41 +02:00
"price_multiplier": { "title": "Price Multiplier", "description": "UNDOCUMENTED", "$comment": "UNDOCUMENTED", "type": "number" },
2021-06-06 10:07:19 +00:00
"functions": { "$ref": "#/definitions/Functions" },
2021-07-01 11:35:53 +02:00
"choice": {
"title": "Choice",
"description": "UNDOCUMENTED",
"$comment": "UNDOCUMENTED",
"type": "array",
"items": { "$ref": "#/definitions/Item" }
}
2021-06-06 10:07:19 +00:00
}
}
]
}
},
"trader_exp": { "type": "integer", "title": "Trader Experience" },
"max_uses": { "type": "integer", "title": "Maximum Uses" },
"reward_exp": { "type": "boolean", "title": "Reward Experience" }
}
}
}
},
"properties": {
"tiers": {
"type": "array",
"title": "Tiers",
"description": "A collection of tiers",
"items": {
"additionalProperties": false,
"type": "object",
"title": "Tier",
"properties": {
"trades": { "$ref": "#/definitions/TradeArray" },
"total_exp_required": { "title": "Total Experience Required", "type": "integer" },
"groups": {
"type": "array",
"title": "Groups",
"description": "A collection of groups",
"items": {
"type": "object",
"title": "Group",
"additionalProperties": false,
"properties": { "num_to_select": { "title": "Number To Select", "type": "integer" }, "trades": { "$ref": "#/definitions/TradeArray" } }
}
}
}
}
}
2021-06-09 11:12:18 +02:00
}
2021-06-06 10:07:19 +00:00
}