forked from Blockception/Minecraft-bedrock-json-schemas
-
Notifications
You must be signed in to change notification settings - Fork 0
/
trading.json
1 lines (1 loc) · 24.9 KB
/
trading.json
1
{"$schema":"http:https://json-schema.org/draft-07/schema","$id":"blockception.minecraft.behavior.trading","type":"object","additionalProperties":false,"description":"UNDOCUMENTED","$comment":"UNDOCUMENTED","title":"Trading","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":"#/definitions/A"}},"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"},"choice":{"title":"Choice","description":"UNDOCUMENTED","$comment":"UNDOCUMENTED","type":"array","items":{"$ref":"#/definitions/Item"}}}}]}},"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"}}}]},"price_multiplier":{"title":"Price Multiplier","description":"UNDOCUMENTED","$comment":"UNDOCUMENTED","type":"number"},"functions":{"$ref":"#/definitions/Functions"},"choice":{"title":"Choice","description":"UNDOCUMENTED","$comment":"UNDOCUMENTED","type":"array","items":{"$ref":"#/definitions/Item"}}}}]}},"trader_exp":{"type":"integer","title":"Trader Experience"},"max_uses":{"type":"integer","title":"Maximum Uses"},"reward_exp":{"type":"boolean","title":"Reward Experience"}}}},"B":{"additionalProperties":false,"type":"object","description":"The function enchant_random_gear","title":"Enchant Random Gear","properties":{"function":{"type":"string","const":"enchant_random_gear","title":"Function","description":"UNDOCUMENTED","$comment":"UNDOCUMENTED"},"chance":{"type":"number","description":"Takes a chance modifier to manipulate the algorithm. Note that a chance modifier of 1.0 doesn't mean a 100% chance that gear will become enchanted.","title":"Chance"}}},"C":{"additionalProperties":false,"type":"object","description":"The function enchant_book_for_trading","title":"Enchant Book For Trading","required":["function","base_cost","base_random_cost","per_level_random_cost","per_level_cost"],"properties":{"function":{"type":"string","const":"enchant_book_for_trading","title":"Function","description":"UNDOCUMENTED","$comment":"UNDOCUMENTED"},"base_cost":{"type":"integer","title":"Base Cost","description":"UNDOCUMENTED","$comment":"UNDOCUMENTED"},"base_random_cost":{"type":"integer","title":"Base Cost","description":"UNDOCUMENTED","$comment":"UNDOCUMENTED"},"per_level_random_cost":{"type":"integer","title":"Base Cost","description":"UNDOCUMENTED","$comment":"UNDOCUMENTED"},"per_level_cost":{"type":"integer","title":"Base Cost","description":"UNDOCUMENTED","$comment":"UNDOCUMENTED"}}},"D":{"additionalProperties":false,"type":"object","description":"The function enchant_randomly","title":"Enchant Randomly","properties":{"function":{"type":"string","const":"enchant_randomly","title":"Function","description":"UNDOCUMENTED","$comment":"UNDOCUMENTED"},"treasure":{"type":"boolean","description":"Supports the optional treasure boolean (true/false) to allow treasure enchantments to be toggled on and off.","title":"Treasure"}}},"E":{"additionalProperties":false,"description":"The function enchant_with_levels","title":"Enchant With Levels","type":"object","properties":{"function":{"type":"string","const":"enchant_with_levels","description":"UNDOCUMENTED","$comment":"UNDOCUMENTED","title":"Function"},"levels":{"title":"Levels","description":"UNDOCUMENTED","$comment":"UNDOCUMENTED","oneOf":[{"type":"integer"},{"type":"object","additionalProperties":false,"required":["min","max"],"properties":{"min":{"type":"integer","title":"Minimum"},"max":{"type":"integer","title":"Maximum"}}}]},"treasure":{"type":"boolean","title":"Treasure","description":"UNDOCUMENTED","$comment":"UNDOCUMENTED"}}},"F":{"additionalProperties":false,"description":"Transforms a normal map into a treasure map that marks the location of hidden treasure","title":"Exploration Map","type":"object","properties":{"function":{"type":"string","const":"exploration_map","description":"Transforms a normal map into a treasure map that marks the location of hidden treasure","title":"Function"},"destination":{"type":"string","description":"The destination value defines what type of treasure map they receive.","enum":["endcity","fortress","mineshaft","monument","ruins","stronghold","temple","village","mansion","shipwreck","buriedtreasure","pillageroutpost"],"title":"Destination"}}},"G":{"additionalProperties":false,"type":"object","description":"The function fill_container","title":"Fill Container","properties":{"function":{"type":"string","const":"fill_container","title":"Function","description":"UNDOCUMENTED","$comment":"UNDOCUMENTED"},"loot_table":{"type":"string","title":"Loot Table","pattern":"^loot_tables/.*\\.json$","description":"UNDOCUMENTED","$comment":"UNDOCUMENTED"}}},"J":{"type":"object","additionalProperties":false,"description":"Returns true if the actor properties defined were executed.","title":"Entity Properties","properties":{"condition":{"type":"string","title":"Condition","description":"Returns true if the actor properties defined were executed.","$comment":"UNDOCUMENTED"},"entity":{"type":"string","default":"this","description":"The entity to test. The value must be only `this`.","title":"Entity"},"properties":{"type":"object","default":{},"description":"The entity's properties. `on_fire`, `on_ground` is used for now.","title":"Properties","additionalProperties":false,"properties":{"on_fire":{"title":"On Fire","description":"Checks if the entity is on fire or not","$comment":"UNDOCUMENTED","type":"boolean"},"on_ground":{"title":"On Ground","description":"Checks if the entity is on the ground or not","$comment":"UNDOCUMENTED","type":"boolean"}}}}},"BA":{"type":"object","additionalProperties":false,"description":"Returns the condition true if the actor's mark variant is matched to the value.","title":"Has Mark Variant","properties":{"condition":{"type":"string","title":"Condition","description":"Returns the condition true if the actor's mark variant is matched to the value.","$comment":"UNDOCUMENTED"},"value":{"type":"integer","default":"0","description":"Tests for the actor's mark variant (if it has one)","title":"Value"}}},"BB":{"type":"object","additionalProperties":false,"description":"Returns the condition true if the actor of the loot table is killed by player or entities that has owner.","title":"Killed By Player","properties":{"condition":{"type":"string","title":"Condition","description":"UNDOCUMENTED","$comment":"UNDOCUMENTED"}}},"BC":{"type":"object","additionalProperties":false,"description":"Returns the condition true if the actor of the loot table is killed by player or entities that has owner.","title":"Killed By Player Or Pets Or Pets","properties":{"condition":{"type":"string","title":"Condition","description":"UNDOCUMENTED","$comment":"UNDOCUMENTED"}}},"BD":{"type":"object","additionalProperties":false,"description":"Sets a random chance of the specified value.","title":"Random Chance","properties":{"condition":{"type":"string","title":"Condition","description":"UNDOCUMENTED","$comment":"UNDOCUMENTED"},"chance":{"type":"number","default":0,"description":"UNDOCUMENTED","$comment":"UNDOCUMENTED","title":"Chance"},"max_chance":{"type":"number","default":0,"description":"The maximum random chance value allowed.","title":"Maximum Chance"}}},"BE":{"type":"object","additionalProperties":false,"description":"Sets a random chance of the specified value. Looting enchantment increase the random chance multiplier.","title":"Random Chance With Looting","properties":{"condition":{"type":"string","title":"Condition","description":"UNDOCUMENTED","$comment":"UNDOCUMENTED"},"chance":{"type":"number","default":0,"description":"The random chance of the value.","title":"Chance"},"looting_multiplier":{"type":"number","default":0,"description":"The multiplier for the chance if the target entity has the looting enchant that affects the actor.","title":"Looting Multiplier"}}},"BF":{"type":"object","additionalProperties":false,"description":"Sets a random chance of the specified value based on the level difficulty.","title":"Random Difficulty Chance","properties":{"condition":{"type":"string","title":"Condition","description":"UNDOCUMENTED","$comment":"UNDOCUMENTED"},"default_chance":{"type":"number","default":0,"description":"The default random chance if the level difficulty is not assigned.","title":"Default Chance"},"easy":{"type":"number","default":0,"description":"The default random chance if the level difficulty is in easy. Omitting this field will set the value to `default_chance` field.","title":"Easy"},"hard":{"type":"number","default":0,"description":"The default random chance if the level difficulty is in hard. Omitting this field will set the value to `default_chance` field.","title":"Hard"},"normal":{"type":"number","default":0,"description":"The default random chance if the level difficulty is in normal. Omitting this field will set the value to `default_chance` field.","title":"Normal"},"peaceful":{"type":"number","default":0,"description":"The default random chance if the level difficulty is in peaceful. Omitting this field will set the value to `default_chance` field.","title":"Peaceful"}}},"BG":{"type":"object","additionalProperties":false,"description":"Sets a Maximum regional difficulty random chance of the specified value.","title":"Random Regional Difficulty Chance","properties":{"condition":{"type":"string","title":"Condition","description":"UNDOCUMENTED","$comment":"UNDOCUMENTED"},"default_chance":{"type":"number","default":0,"description":"The default random chance if the level difficulty is not assigned.","title":"Default Chance"},"max_chance":{"title":"Maximum Chance","type":"number","description":"UNDOCUMENTED","$comment":"UNDOCUMENTED"},"easy":{"type":"number","default":0,"description":"The default random chance if the level difficulty is in easy. Omitting this field will set the value to `default_chance` field.","title":"Easy"},"hard":{"type":"number","default":0,"description":"The default random chance if the level difficulty is in hard. Omitting this field will set the value to `default_chance` field.","title":"Hard"},"normal":{"type":"number","default":0,"description":"The default random chance if the level difficulty is in normal. Omitting this field will set the value to `default_chance` field.","title":"Normal"},"peaceful":{"type":"number","default":0,"description":"The default random chance if the level difficulty is in peaceful. Omitting this field will set the value to `default_chance` field.","title":"Peaceful"}}},"I":{"description":"A minecraft loot table condition","title":"Condition","allOf":[{"if":{"properties":{"condition":{"type":"string","const":"entity_properties"}}},"then":{"$ref":"#/definitions/J"}},{"if":{"properties":{"condition":{"type":"string","const":"has_mark_variant"}}},"then":{"$ref":"#/definitions/BA"}},{"if":{"properties":{"condition":{"type":"string","const":"killed_by_player"}}},"then":{"$ref":"#/definitions/BB"}},{"if":{"properties":{"condition":{"type":"string","const":"killed_by_player_or_pets"}}},"then":{"$ref":"#/definitions/BC"}},{"if":{"properties":{"condition":{"type":"string","const":"random_chance"}}},"then":{"$ref":"#/definitions/BD"}},{"if":{"properties":{"condition":{"type":"string","const":"random_chance_with_looting"}}},"then":{"$ref":"#/definitions/BE"}},{"if":{"properties":{"condition":{"type":"string","const":"random_difficulty_chance"}}},"then":{"$ref":"#/definitions/BF"}},{"if":{"properties":{"condition":{"type":"string","const":"random_regional_difficulty_chance"}}},"then":{"$ref":"#/definitions/BG"}}]},"H":{"additionalProperties":false,"type":"object","description":"If the item to return has a smelted crafting recipe and the loot table is triggered by an entity killed with fire. the result will be the smelted version of the item","title":"Furnace Smelt","properties":{"function":{"type":"string","const":"furnace_smelt","description":"UNDOCUMENTED","$comment":"UNDOCUMENTED","title":"Function"},"conditions":{"title":"Conditions","description":"UNDOCUMENTED","$comment":"UNDOCUMENTED","type":"array","items":{"$ref":"#/definitions/I"}}}},"BH":{"additionalProperties":false,"description":"The function looting_enchant","title":"Looting Enchant","type":"object","properties":{"function":{"type":"string","const":"looting_enchant","description":"UNDOCUMENTED","$comment":"UNDOCUMENTED","title":"Function"},"count":{"type":"object","properties":{"min":{"type":"integer"},"max":{"type":"integer"}},"description":"UNDOCUMENTED","$comment":"UNDOCUMENTED","title":"Count","additionalProperties":false}}},"BI":{"additionalProperties":false,"description":"The function random_aux_value","title":"Random Aux Value","type":"object","properties":{"function":{"type":"string","const":"random_aux_value","description":"UNDOCUMENTED","$comment":"UNDOCUMENTED","title":"Function"},"values":{"description":"UNDOCUMENTED","$comment":"UNDOCUMENTED","title":"Values","additionalProperties":false,"type":"object","properties":{"min":{"type":"integer","description":"UNDOCUMENTED","$comment":"UNDOCUMENTED","title":"Minimum"},"max":{"type":"integer","description":"UNDOCUMENTED","$comment":"UNDOCUMENTED","title":"Maximum"}}}}},"BJ":{"additionalProperties":false,"description":"The function random_block_state","title":"Random Block State","type":"object","properties":{"function":{"type":"string","const":"random_block_state","description":"UNDOCUMENTED","$comment":"UNDOCUMENTED","title":"Function"},"block_state":{"type":"string","description":"UNDOCUMENTED","$comment":"UNDOCUMENTED","title":"Block State"},"values":{"type":"object","properties":{"min":{"title":"Min","type":"integer"},"max":{"title":"Max","type":"integer"}},"description":"UNDOCUMENTED","$comment":"UNDOCUMENTED","title":"Values","additionalProperties":false}}},"CA":{"additionalProperties":false,"description":"The function set_actor_id","title":"Set Actor Id","type":"object","properties":{"function":{"type":"string","const":"set_actor_id","description":"UNDOCUMENTED","$comment":"UNDOCUMENTED","title":"Function"},"id":{"type":"string","description":"UNDOCUMENTED","$comment":"UNDOCUMENTED","title":"Id"}}},"CB":{"additionalProperties":false,"description":"The function set_banner_details","title":"Set Banner Details","type":"object","properties":{"function":{"type":"string","const":"set_banner_details","description":"UNDOCUMENTED","$comment":"UNDOCUMENTED","title":"Function"},"type":{"type":"integer","description":"UNDOCUMENTED","$comment":"UNDOCUMENTED","title":"Type"}}},"CC":{"additionalProperties":false,"description":"The function set_book_contents","title":"Set Book Contents","required":["function","author","title","pages"],"type":"object","properties":{"function":{"type":"string","const":"set_book_contents","description":"UNDOCUMENTED","$comment":"UNDOCUMENTED","title":"Function"},"author":{"type":"string","description":"UNDOCUMENTED","$comment":"UNDOCUMENTED","title":"Author"},"title":{"type":"string","description":"UNDOCUMENTED","$comment":"UNDOCUMENTED","title":"Title"},"pages":{"type":"array","items":{"type":"string","examples":["Some text","{`rawtext`:[ {`translate`:`some.text`}]}"]},"description":"UNDOCUMENTED","$comment":"UNDOCUMENTED","title":"Pages"}}},"CD":{"additionalProperties":false,"type":"object","description":"The function set_count","title":"Set Count","properties":{"function":{"type":"string","const":"set_count","title":"Function","description":"UNDOCUMENTED","$comment":"UNDOCUMENTED"},"count":{"title":"Count","oneOf":[{"type":"integer"},{"type":"object","properties":{"min":{"type":"integer","title":"Minimum"},"max":{"type":"integer","title":"Maximum"}}}],"description":"UNDOCUMENTED","$comment":"UNDOCUMENTED"}}},"CE":{"additionalProperties":false,"description":"The function set_damage","title":"Set Damage","type":"object","properties":{"function":{"type":"string","const":"set_damage","description":"UNDOCUMENTED","$comment":"UNDOCUMENTED","title":"Function"},"damage":{"description":"UNDOCUMENTED","$comment":"UNDOCUMENTED","title":"Damage","oneOf":[{"type":"number","minimum":0,"maximum":1},{"type":"object","properties":{"min":{"type":"number","description":"UNDOCUMENTED","$comment":"UNDOCUMENTED","title":"Minimum","minimum":0,"maximum":1},"max":{"type":"number","description":"UNDOCUMENTED","$comment":"UNDOCUMENTED","title":"Maximum","minimum":0,"maximum":1}}}]}}},"CF":{"additionalProperties":false,"description":"The function set_data","title":"Set Data","type":"object","properties":{"function":{"type":"string","const":"set_data","description":"UNDOCUMENTED","$comment":"UNDOCUMENTED","title":"Function"},"data":{"title":"Data","description":"UNDOCUMENTED","$comment":"UNDOCUMENTED","oneOf":[{"type":"integer"},{"type":"object","properties":{"min":{"type":"integer","title":"Minimum","description":"UNDOCUMENTED","$comment":"UNDOCUMENTED"},"max":{"type":"integer","title":"Maximum","description":"UNDOCUMENTED","$comment":"UNDOCUMENTED"}}}]}}},"CG":{"additionalProperties":false,"description":"The function set_data_from_color_index","title":"Set Data From Color Index","type":"object","properties":{"function":{"type":"string","const":"set_data_from_color_index","description":"UNDOCUMENTED","$comment":"UNDOCUMENTED","title":"Function"}}},"CH":{"additionalProperties":false,"description":"The function trader_material_type","title":"Trader Material Type","type":"object","properties":{"function":{"type":"string","const":"trader_material_type","description":"UNDOCUMENTED","$comment":"UNDOCUMENTED","title":"Function"}}},"CI":{"additionalProperties":false,"description":"The function random_dye","title":"Trader Material Type","type":"object","properties":{"function":{"type":"string","const":"random_dye","description":"UNDOCUMENTED","$comment":"UNDOCUMENTED","title":"Function"}}},"CJ":{"additionalProperties":false,"description":"The function set_lore","title":"Set Lore","type":"object","properties":{"function":{"type":"string","const":"set_lore","description":"UNDOCUMENTED","$comment":"UNDOCUMENTED","title":"Function"},"lore":{"type":"array","items":{"type":"string"},"description":"UNDOCUMENTED","$comment":"UNDOCUMENTED","title":"Lore"}}},"DA":{"additionalProperties":false,"description":"The function set_name","title":"Set Name","type":"object","properties":{"function":{"type":"string","const":"set_name","description":"UNDOCUMENTED","$comment":"UNDOCUMENTED","title":"Function"},"name":{"type":"string","description":"UNDOCUMENTED","$comment":"UNDOCUMENTED","title":"name"}}},"DB_IDEnchant":{"type":"string","title":"ID Enchantment","enum":["aqua_affinity","bane_of_arthropods","blast_protection","channeling","binding","curse_of_vanishing","depth_strider","efficiency","feather_falling","fire_aspect","fire_protection","flame","fortune","frost_walker","impaling","infinity","knockback","looting","loyalty","luck_of_the_sea","lure","mending","multishot","piercing","projectile_protection","protection","power","punch","quick_charge","respiration","riptide","sharpness","silk_touch","smite","soul_speed","thorns","unbreaking"]},"DB_Enchant":{"type":"object","title":"Enchantment","additionalProperties":false,"properties":{"id":{"$ref":"#/definitions/DB_IDEnchant"},"level":{"title":"Level","oneOf":[{"type":"integer","title":"Level"},{"type":"array","items":[{"type":"integer","title":"Min"},{"type":"integer","title":"Max"}]}]}}},"DB":{"additionalProperties":false,"type":"object","description":"The function specific_enchants","title":"Specific Enchants","properties":{"function":{"type":"string","const":"specific_enchants","description":"Specific enchants","title":"Specific Enchants"},"enchants":{"title":"Enchants","description":"A enchanting specification","oneOf":[{"type":"string","$ref":"#/definitions/DB_IDEnchant"},{"type":"object","$ref":"#/definitions/DB_Enchant"},{"type":"array","items":{"$ref":"#/definitions/DB_Enchant"}}]}}},"A":{"description":"A minecraft loot table condition","title":"Functions","type":"object","properties":{"function":{"type":"string","enum":["enchant_random_gear","enchant_book_for_trading","enchant_randomly","enchant_with_levels","exploration_map","fill_container","furnace_smelt","looting_enchant","random_aux_value","random_block_state","set_actor_id","set_banner_details","set_book_contents","set_count","set_damage","set_data","set_data_from_color_index","trader_material_type","random_dye","set_lore","set_name","specific_enchants"]}},"allOf":[{"if":{"properties":{"function":{"type":"string","pattern":"^(minecraft:)*enchant_random_gear$"}}},"then":{"$ref":"#/definitions/B"}},{"if":{"properties":{"function":{"type":"string","pattern":"^(minecraft:)*enchant_book_for_trading$"}}},"then":{"$ref":"#/definitions/C"}},{"if":{"properties":{"function":{"type":"string","pattern":"^(minecraft:)*enchant_randomly$"}}},"then":{"$ref":"#/definitions/D"}},{"if":{"properties":{"function":{"type":"string","pattern":"^(minecraft:)*enchant_with_levels$"}}},"then":{"$ref":"#/definitions/E"}},{"if":{"properties":{"function":{"type":"string","pattern":"^(minecraft:)*exploration_map$"}}},"then":{"$ref":"#/definitions/F"}},{"if":{"properties":{"function":{"type":"string","pattern":"^(minecraft:)*fill_container$"}}},"then":{"$ref":"#/definitions/G"}},{"if":{"properties":{"function":{"type":"string","pattern":"^(minecraft:)*furnace_smelt$"}}},"then":{"$ref":"#/definitions/H"}},{"if":{"properties":{"function":{"type":"string","pattern":"^(minecraft:)*looting_enchant$"}}},"then":{"$ref":"#/definitions/BH"}},{"if":{"properties":{"function":{"type":"string","pattern":"^(minecraft:)*random_aux_value$"}}},"then":{"$ref":"#/definitions/BI"}},{"if":{"properties":{"function":{"type":"string","pattern":"^(minecraft:)*random_block_state$"}}},"then":{"$ref":"#/definitions/BJ"}},{"if":{"properties":{"function":{"type":"string","pattern":"^(minecraft:)*set_actor_id$"}}},"then":{"$ref":"#/definitions/CA"}},{"if":{"properties":{"function":{"type":"string","pattern":"^(minecraft:)*set_banner_details$"}}},"then":{"$ref":"#/definitions/CB"}},{"if":{"properties":{"function":{"type":"string","pattern":"^(minecraft:)*set_book_contents$"}}},"then":{"$ref":"#/definitions/CC"}},{"if":{"properties":{"function":{"type":"string","pattern":"^(minecraft:)*set_count$"}}},"then":{"$ref":"#/definitions/CD"}},{"if":{"properties":{"function":{"type":"string","pattern":"^(minecraft:)*set_damage$"}}},"then":{"$ref":"#/definitions/CE"}},{"if":{"properties":{"function":{"type":"string","pattern":"^(minecraft:)*set_data$"}}},"then":{"$ref":"#/definitions/CF"}},{"if":{"properties":{"function":{"type":"string","pattern":"^(minecraft:)*set_data_from_color_index$"}}},"then":{"$ref":"#/definitions/CG"}},{"if":{"properties":{"function":{"type":"string","pattern":"^(minecraft:)*trader_material_type$"}}},"then":{"$ref":"#/definitions/CH"}},{"if":{"properties":{"function":{"type":"string","pattern":"^(minecraft:)*random_dye$"}}},"then":{"$ref":"#/definitions/CI"}},{"if":{"properties":{"function":{"type":"string","pattern":"^(minecraft:)*set_lore$"}}},"then":{"$ref":"#/definitions/CJ"}},{"if":{"properties":{"function":{"type":"string","pattern":"^(minecraft:)*set_name$"}}},"then":{"$ref":"#/definitions/DA"}},{"if":{"properties":{"function":{"type":"string","pattern":"^(minecraft:)*specific_enchants$"}}},"then":{"$ref":"#/definitions/DB"}}]}},"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"}}}}}}}}}