diff --git a/behavior/items/items.json b/behavior/items/items.json index f3eda0df..ae52a171 100644 --- a/behavior/items/items.json +++ b/behavior/items/items.json @@ -1 +1,1729 @@ -{"$id":"blockception.minecraft.behavior.items","defaultSnippets":[{"label":"New item","body":{"format_version":"${1:1.20.80}","minecraft:item":{"description":{"identifier":"$2:${3:${TM_FILENAME/[\\.].*//}}","menu_category":{"category":"${4:items}"}},"components":{"minecraft:icon":"$2.${3:${TM_FILENAME/[\\.].*//}}"}}}}],"description":"Minecraft items","required":["format_version","minecraft:item"],"title":"Item","type":"object","properties":{"format_version":{"$ref":"#/definitions/A"},"minecraft:item":{"$ref":"#/definitions/B"}},"definitions":{"A":{"title":"Format Version","description":"A version that tells minecraft what type of data format can be expected when reading this file.","pattern":"^([1-9]+)\\.([0-9]+)\\.([0-9]+)$","type":"string","default":"1.20.81","examples":["1.20.81","1.20.40","1.19.0","1.12.0","1.10.0","1.8.0"],"defaultSnippets":[{"label":"New Format version","body":"1.${1|8,10,12,17,18,19,20|}.${3|2|0|}"}]},"C":{"description":"A minecraft item identifier.","pattern":"^[0-9a-zA-Z:_\\-\\.]+$","title":"Item Identifier","type":"string","defaultSnippets":[{"label":"New Identifier","body":"$1:$2"}]},"D":{"type":"string","title":"Item Group","description":"A translation string of an existing group in minecraft to group this block/item under","enum":["itemGroup.name.anvil","itemGroup.name.arrow","itemGroup.name.axe","itemGroup.name.banner","itemGroup.name.banner_pattern","itemGroup.name.bed","itemGroup.name.boat","itemGroup.name.boots","itemGroup.name.buttons","itemGroup.name.candles","itemGroup.name.chalkboard","itemGroup.name.chest","itemGroup.name.chestboat","itemGroup.name.chestplate","itemGroup.name.concrete","itemGroup.name.concretePowder","itemGroup.name.cookedFood","itemGroup.name.copper","itemGroup.name.coral","itemGroup.name.coral_decorations","itemGroup.name.crop","itemGroup.name.door","itemGroup.name.dye","itemGroup.name.enchantedBook","itemGroup.name.fence","itemGroup.name.fenceGate","itemGroup.name.firework","itemGroup.name.fireworkStars","itemGroup.name.flower","itemGroup.name.glass","itemGroup.name.glassPane","itemGroup.name.glazedTerracotta","itemGroup.name.goatHorn","itemGroup.name.grass","itemGroup.name.hanging_sign","itemGroup.name.helmet","itemGroup.name.hoe","itemGroup.name.horseArmor","itemGroup.name.leaves","itemGroup.name.leggings","itemGroup.name.lingeringPotion","itemGroup.name.log","itemGroup.name.minecart","itemGroup.name.miscFood","itemGroup.name.mobEgg","itemGroup.name.monsterStoneEgg","itemGroup.name.mushroom","itemGroup.name.netherWartBlock","itemGroup.name.ore","itemGroup.name.permission","itemGroup.name.pickaxe","itemGroup.name.planks","itemGroup.name.potion","itemGroup.name.potterySherds","itemGroup.name.pressurePlate","itemGroup.name.rail","itemGroup.name.rawFood","itemGroup.name.record","itemGroup.name.sandstone","itemGroup.name.sapling","itemGroup.name.sculk","itemGroup.name.seed","itemGroup.name.shovel","itemGroup.name.shulkerBox","itemGroup.name.sign","itemGroup.name.skull","itemGroup.name.slab","itemGroup.name.smithing_templates","itemGroup.name.splashPotion","itemGroup.name.stainedClay","itemGroup.name.stairs","itemGroup.name.stone","itemGroup.name.stoneBrick","itemGroup.name.sword","itemGroup.name.trapdoor","itemGroup.name.walls","itemGroup.name.wood","itemGroup.name.wool","itemGroup.name.woolCarpet"]},"E":{"type":"string","title":"Category","description":"Determines which category this block/item will be placed under in the inventory and crafting table container screens.","enum":["construction","equipment","items","nature","none"]},"F":{"title":"Allow Off Hand","description":"The allow off hand component determines whether the item can be placed in the off hand slot of the inventory.","default":false,"examples":[true,{"value":true}],"oneOf":[{"type":"boolean"},{"type":"object","additionalProperties":false,"required":["value"],"properties":{"value":{"title":"Value","description":"Whether the item can be placed in the off hand slot","type":"boolean","default":false}}}]},"G_use_on_item":{"type":"object","title":"Allowed Block","description":"A block descriptor that allows to be placed.","properties":{"tags":{"title":"Tags","description":"Tags.","$ref":"#/definitions/H"}}},"H":{"type":"string","title":"Molang","description":"Molang definition.","format":"molang","examples":["query.variant","(1.0)","query.","variable.=;"],"defaultSnippets":[{"label":"New Molang","body":"$1"}]},"G":{"title":"Block Placer","description":"Planter item component. planter items are items that can be planted.","type":"object","additionalProperties":false,"required":["block"],"properties":{"block":{"type":"string","description":"Set the placement block name for the planter item.","title":"Block"},"use_on":{"description":"List of block descriptors that contain blocks that this item can be used on. If left empty, all blocks will be allowed.","title":"Use On","type":"array","items":{"$ref":"#/definitions/G_use_on_item"}}}},"I":{"title":"Can Destroy In Creative","description":"The can destroy in creative component determines if the item will break blocks in creative when swinging.","default":true,"examples":[false,{"value":false}],"oneOf":[{"type":"boolean"},{"type":"object","additionalProperties":false,"required":["value"],"properties":{"value":{"title":"Value","description":"Whether the item can destroy blocks while in creative","type":"boolean","default":true}}}]},"J":{"title":"Cooldown","description":"Cool down time for a component. After you use an item it becomes unusable for the duration specified by the `cool down time` setting in this component.","type":"object","additionalProperties":false,"required":["category","duration"],"properties":{"category":{"type":"string","description":"The type of cool down for this item.","title":"Category"},"duration":{"description":"The duration of time this item will spend cooling down before becoming usable again.","title":"Duration","type":"number"}},"examples":[{"category":"attack","duration":0.2}]},"BA":{"title":"Custom Components","description":"Used to register custom components.","additionalProperties":false,"type":"array","items":{"type":"string"}},"BB":{"additionalProperties":false,"type":"object","title":"Damage","description":"The damage component determines how much extra damage the item does on attack.","required":["value"],"properties":{"value":{"type":"number","title":"Value","description":"How much extra damage the item does, must be a positive number.","minimum":1}},"examples":[{"value":7}]},"BC":{"title":"Digger","description":"Digger item. Component put on items that dig.","type":"object","additionalProperties":false,"required":["destroy_speeds"],"properties":{"use_efficiency":{"title":"Use Efficiency","type":"boolean","description":"Toggles if the item will be used efficiently.","default":false},"destroy_speeds":{"type":"array","title":"Destroy Speeds","description":"Destroy speed per block.","items":{"title":"Destroy Speed","description":"Destroy speed per block.","type":"object","additionalProperties":false,"properties":{"speed":{"title":"Speed","type":"number"},"block":{"title":"Block","oneOf":[{"type":"string","description":"The block identifier."},{"type":"object","additionalProperties":false,"properties":{"tags":{"type":"string","title":"Block Tags","description":"The block tags.","examples":["query.any_tag( 'stone', 'metal' )"]}}}]}}}}}},"BD":{"title":"Display Name","description":"Display Name item component. Display Names display the name of an item.","$comment":"Does not currently support single value parsing.","type":"object","additionalProperties":false,"required":["value"],"properties":{"value":{"type":"string","title":"Value","description":"Set the display name for an item."}},"examples":[{"value":"secret_weapon"}]},"BE":{"title":"Durability","description":"Durability item component: how much damage can this item take before breaking.","type":"object","additionalProperties":false,"required":["max_durability"],"properties":{"damage_chance":{"type":"object","title":"Damage Chance","description":"Damage chance.","additionalProperties":false,"required":["min","max"],"properties":{"min":{"title":"Min","type":"integer","description":"The minimum."},"max":{"title":"Max","type":"integer","description":"The maximum."}}},"max_durability":{"title":"Maximum Durability","description":"Maximum durability is the amount of damage that this item can take before breaking.","type":"integer","minimum":0}},"examples":[{"damage_chance":{"min":10,"max":50},"max_durability":36}]},"BF":{"title":"Enchantable","description":"The enchantable component determines what enchantments can be applied to the item.","type":"object","additionalProperties":false,"required":["slot"],"properties":{"slot":{"title":"Slot","description":"If true you can always eat this item (even when not hungry), defaults to false.","enum":["axe","bow","armor_feet","armor_torso","armor_head","armor_legs","hoe","pickaxe","shovel","elytra","fishing_rod","flintsteel","sword","shears","cosmetic_head"]},"value":{"title":"Value","description":"The value of the enchantment.","type":"number","minimum":0}}},"BG":{"title":"Entity Placer","description":"Entity placer item component. You can specifiy allowed blocks that the item is restricted to.","type":"object","additionalProperties":false,"required":["entity"],"properties":{"entity":{"type":"string","title":"Entity","description":"The entity to be placed in the world."},"dispense_on":{"type":"array","title":"Dispense On","description":"List of block descriptors that contain blocks that this item can be dispensed on. If left empty, all blocks will be allowed.","items":{"title":"Block Descriptor","description":"Block that item can be dispensed on.","$comment":"UNDOCUMENTED"}},"use_on":{"type":"array","title":"Use On","description":"List of block descriptors that contain blocks that this item can be used on. If left empty, all blocks will be allowed.","items":{"title":"Block Descriptor","description":"Block that item can be used on","$comment":"UNDOCUMENTED"}}}},"BH":{"title":"Food","description":"When an item has a food component, it becomes edible to the player.","type":"object","additionalProperties":false,"properties":{"can_always_eat":{"title":"Can Always Eat","description":"If true you can always eat this item (even when not hungry), defaults to false.","type":"boolean","default":false},"nutrition":{"title":"Nutrition","description":"How much nutrition does this food item give the player when eaten.","type":"number","default":0},"saturation_modifier":{"title":"Saturation Modifier","description":"Saturation Modifier is used in this formula: (nutrition * saturation_modifier * 2) when appling the saturation buff. Which happens when you eat the item.","type":"number","default":0.6},"using_converts_to":{"title":"Using Converts To","description":"When used, convert the *this* item to the one specified by `using_converts_to`.","type":"string"}}},"BI":{"title":"Fuel","description":"Fuel component. Allows this item to be used as fuel in a furnace to `cook` other items.","type":"object","additionalProperties":false,"required":["duration"],"properties":{"duration":{"type":"number","title":"Duration","description":"How long in seconds will this fuel cook items for."}},"examples":[{"duration":3.0}]},"BJ":{"title":"Glint","description":"The glint component determines whether the item has the enchanted glint render effect on it","default":false,"examples":[true,{"value":true}],"oneOf":[{"type":"boolean"},{"type":"object","additionalProperties":false,"required":["value"],"properties":{"value":{"title":"Value","description":"Whether the item has the glint effect.","type":"boolean","default":false}}}]},"CA":{"title":"Hand Equipped","description":"This component determines if an item is rendered like a tool while in hand.","default":false,"examples":[true,{"value":true}],"oneOf":[{"type":"boolean"},{"type":"object","additionalProperties":false,"required":["value"],"properties":{"value":{"title":"Value","description":"If the item is rendered like a tool while in hand.","type":"boolean","default":false}}}]},"CB":{"title":"Icon","description":"The icon item componenent determines the icon to represent the item in the UI and elsewhere.","examples":["stick",{"textures":{"default":"stick"}}],"oneOf":[{"type":"string"},{"type":"object","additionalProperties":false,"required":["textures"],"properties":{"textures":{"title":"Textures","description":"Contains key-value pairs of textures used by the item","type":"object","additionalProperties":{"type":"string","title":"Texture","description":"The key from the resource_pack/textures/item_texture.json `texture_data` object associated with the texture file Example: blaze_powder."},"required":["default"],"properties":{"default":{"type":"string","title":"Default Texture","description":"The key from the resource_pack/textures/item_texture.json `texture_data` object associated with the texture file Example: blaze_powder."}}}}}]},"CC":{"title":"Liquid Clipped","description":"The liquid clipped component determines whether the item interacts with liquid blocks on use.","default":false,"examples":[true,{"value":true}],"oneOf":[{"type":"boolean"},{"additionalProperties":false,"type":"object","required":["value"],"properties":{"value":{"title":"Value","description":"Whether the item interacts with liquid blocks on use.","type":"boolean","default":false}}}]},"CD":{"title":"Max Stack Size","description":"The max stack size component determines how many of the item can be stacked together.","default":64,"examples":[1,{"value":1},16,{"value":16}],"oneOf":[{"type":"number","minimum":1,"maximum":64},{"type":"object","additionalProperties":false,"required":["value"],"properties":{"value":{"title":"Value","description":"How many of the item that can be stacked.","type":"number","default":64,"minimum":1,"maximum":64}}}]},"CE":{"title":"Projectile","description":"Compels the item shoot, like an arrow. Pair with minecraft:shooter for dispensers or as ammunition. Pair with minecraft:throwable to set the entity spawned.","type":"object","additionalProperties":false,"required":["projectile_entity"],"properties":{"minimum_critical_power":{"type":"number","title":"Minimum Critical Power","description":"How long you must charge a projectile for it to critically hit."},"projectile_entity":{"title":"Projectile Entity","description":"The entity to be fired as a projectile.","type":"string"}},"examples":[{"minimum_critical_power":1.25,"projectile_entity":"arrow"}]},"CF":{"title":"Record","description":"Used by record items to play music.","type":"object","additionalProperties":false,"required":["sound_event"],"properties":{"comparator_signal":{"title":"Comparator Signal","description":"Signal strength for comparator blocks to use, from 1 - 13","type":"number","minimum":1,"maximum":13},"duration":{"title":"Duration","description":"Duration of sound event in seconds, float value.","type":"number","minimum":0},"sound_event":{"title":"Sound Event","description":"Sound event type: 13, cat, blocks, chirp, far, mall, mellohi, stal, strad, ward, 11, wait, pigstep, otherside, 5, relic.","type":"string"}}},"CH":{"title":"Molang Number","description":"The minecraft molang definition that results in a float.","anyOf":[{"type":"string","minLength":0},{"type":"number"}],"examples":[0,"query.variant","(1.0)","query.","variable.=;"],"defaultSnippets":[{"label":"New Molang","body":"$1"}]},"CG":{"title":"Repairable","description":"Repairable item component: how much damage can this item repair, what items can repair it.","type":"object","additionalProperties":false,"properties":{"repair_items":{"title":"Repair Items","description":"Repair item entries.","type":"array","items":{"type":"object","title":"Repar Item","description":"List of repair item entries.","additionalProperties":false,"properties":{"items":{"title":"Items","description":"Items that can be used to repeair it","$comment":"List of items","type":"array","items":{"type":"string","title":"Item","description":"Item identifier"}},"repair_amount":{"title":"Repair Amount","description":"Amount that can be repaired","$ref":"#/definitions/CH"}}}}}},"CI":{"title":"Shooter","description":"Shooter Item Component.","type":"object","additionalProperties":false,"properties":{"ammunition":{"title":"Ammunition","description":"Ammunition.","type":"array","items":{"type":"object","title":"Ammunition","description":"Ammunition definition","additionalProperties":false,"properties":{"item":{"title":"Item","description":"Item identifier","type":"string"},"use_offhand":{"title":"Use Offhand","description":"If ammo can be in offhand","type":"boolean"},"search_inventory":{"title":"Search Inventory","description":"If ammo can be stored in the inventory","type":"boolean"},"use_in_creative":{"title":"Use In Creative","description":"If it needs ammo to be used in creative","type":"boolean"}}}},"charge_on_draw":{"title":"Charge On Draw","description":"Charge on draw? Default is set to false.","default":false,"type":"boolean"},"max_draw_duration":{"title":"Maximum Draw Duration","description":"Draw Duration. Default is set to 0.","default":0,"type":"number"},"scale_power_by_draw_duration":{"title":"Scale Power By Draw Duration","description":"Scale power by draw duration? Default is set to false.","default":false,"type":"boolean"}},"examples":[{"ammunition":[{"item":"custom_projectile","use_offhand":true,"search_inventory":true,"use_in_creative":true}],"max_draw_duration":1.0,"scale_power_by_draw_duration":true,"charge_on_draw":false}]},"CJ":{"title":"Should Despawn","description":"Should despawn component determines if the item should eventually despawn while floating in the world","default":true,"examples":[false,{"value":false}],"oneOf":[{"type":"boolean"},{"type":"object","additionalProperties":false,"required":["value"],"properties":{"value":{"title":"Value","description":"Whether the item should eventually despawn while floating in the world","type":"boolean","default":true}}}]},"DA":{"title":"Stacked By Data","description":"The stacked by data component determines if the same item with different aux values can stack.","default":false,"examples":[true,{"value":true}],"oneOf":[{"type":"boolean"},{"type":"object","additionalProperties":false,"required":["value"],"properties":{"value":{"title":"Value","description":"Also defines whether the item actors can merge while floating in the world.","type":"boolean","default":false}}}]},"DB":{"title":"Tags","description":"The tags component determines which tags an item has on it.","type":"object","additionalProperties":false,"required":["tags"],"properties":{"tags":{"title":"Tags","description":"An array that can contain multiple item tags.","type":"array","uniqueItems":true,"minItems":1,"items":{"anyOf":[{"enum":["minecraft:arrow","minecraft:banner","minecraft:boat","minecraft:boats","minecraft:bookshelf_books","minecraft:chainmail_tier","minecraft:coals","minecraft:crimson_stems","minecraft:decorated_pot_sherds","minecraft:diamond_tier","minecraft:digger","minecraft:door","minecraft:golden_tier","minecraft:hanging_actor","minecraft:hanging_sign","minecraft:horse_armor","minecraft:iron_tier","minecraft:is_armor","minecraft:is_axe","minecraft:is_cooked","minecraft:is_fish","minecraft:is_food","minecraft:is_hoe","minecraft:is_meat","minecraft:is_minecart","minecraft:is_pickaxe","minecraft:is_shovel","minecraft:is_sword","minecraft:is_tool","minecraft:is_trident","minecraft:leather_tier","minecraft:lectern_books","minecraft:logs","minecraft:logs_that_burn","minecraft:mangrove_logs","minecraft:music_disc","minecraft:netherite_tier","minecraft:planks","minecraft:sand","minecraft:sign","minecraft:soul_fire_base_blocks","minecraft:spawn_egg","minecraft:stone_bricks","minecraft:stone_crafting_materials","minecraft:stone_tier","minecraft:stone_tool_materials","minecraft:transform_materials","minecraft:transform_templates","minecraft:transformable_items","minecraft:trim_templates","minecraft:trimmable_armors","minecraft:vibration_damper","minecraft:warped_stems","minecraft:wooden_slabs","minecraft:wooden_tier","minecraft:wool"]},{"type":"string"}]}}}},"DC":{"title":"Throwable","description":"Throwable item component. Throwable items, such as a snowball.","type":"object","additionalProperties":false,"properties":{"do_swing_animation":{"title":"Do Swing Animation","description":"Whether the item should use the swing animation when thrown. Default is set to false.","default":false,"type":"boolean"},"launch_power_scale":{"title":"Launch Power Scale","description":"The scale at which the power of the throw increases. Default is set to 1.0.","default":1.0,"type":"number"},"max_draw_duration":{"title":"Maximum Draw Duration","description":"The maximum duration to draw a throwable item. Default is set to 0.0.","default":0,"type":"number"},"min_draw_duration":{"title":"Minimum Draw Duration","description":"The minimum duration to draw a throwable item. Default is set to 0.0.","default":0,"type":"number"},"max_launch_power":{"title":"Maximum Launch Power","description":"The maximum power to launch the throwable item. Default is set to 1.0.","default":1.0,"type":"number"},"scale_power_by_draw_duration":{"title":"Scale Power By Draw Duration","description":"Whether or not the power of the throw increases with duration charged. Default is set to false.","default":false,"type":"boolean"}},"examples":[{"do_swing_animation":false,"min_draw_duration":0.0,"max_draw_duration":1.0,"launch_power_scale":1.0,"max_launch_power":2.0,"scale_power_by_draw_duration":false}]},"DD_animation":{"enum":["bow","brush","camera","crossbow","drink","eat","none","spear","spyglass"]},"DD":{"title":"Use Animation","description":"This component determines which animation plays when using the item.","oneOf":[{"$ref":"#/definitions/DD_animation"},{"type":"object","additionalProperties":false,"required":["value"],"properties":{"value":{"title":"Value","description":"Which animation to play when using the item.","$ref":"#/definitions/DD_animation"}}}]},"DE":{"additionalProperties":false,"required":["use_duration"],"type":"object","title":"Use Modifiers","description":"How long to use before item is done being used.","properties":{"movement_modifier":{"title":"Movement Modifier","description":"Modifier value to scale the players movement speed when item is in use.","type":"number","minimum":0},"use_duration":{"title":"Use Duration","description":"How long the item takes to use in seconds.","type":"number","minimum":0}}},"DF":{"title":"Wearable","description":"Wearable item component.","type":"object","additionalProperties":false,"properties":{"protection":{"type":"integer","description":"How much protection does the armor item have.","title":"Protection","minimum":0},"dispensable":{"title":"Dispensable","description":"Sets if the item can be dropped by a dispenser block","type":"boolean"},"slot":{"title":"Slot","description":"Which equipment slot the item can fit in","type":"string","enum":["none","slot.weapon.mainhand","slot.weapon.offhand","slot.armor.head","slot.armor.chest","slot.armor.legs","slot.armor.feet","slot.hotbar","slot.inventory","slot.enderchest","slot.saddle","slot.armor","slot.chest","slot.equippable"]}}},"DG_event_base":{"title":"Event","description":"UNDOCUMENTED.","$comment":"UNDOCUMENTED","type":"object","additionalProperties":false,"$ref":"#/definitions/DG_event_functions","properties":{"sequence":{"title":"Sequence","description":"UNDOCUMENTED.","$comment":"UNDOCUMENTED","type":"array","items":{"title":"Sequence","description":"UNDOCUMENTED.","$comment":"UNDOCUMENTED","type":"object","$ref":"#/definitions/DG_event_functions"}},"randomize":{"title":"Randomize","description":"UNDOCUMENTED.","$comment":"UNDOCUMENTED","type":"array","items":{"title":"Randomize","description":"UNDOCUMENTED.","$comment":"UNDOCUMENTED","type":"object","$ref":"#/definitions/DG_event_functions","required":["weight"],"properties":{"weight":{"title":"Weight","description":"UNDOCUMENTED.","$comment":"UNDOCUMENTED","type":"integer","minimum":0}}}},"run_command":{"title":"Run Command","description":"UNDOCUMENTED.","$comment":"UNDOCUMENTED","type":"object","additionalProperties":false,"properties":{"command":{"title":"Command","description":"UNDOCUMENTED.","$comment":"UNDOCUMENTED","type":"array","items":{"type":"string","title":"Command","description":"UNDOCUMENTED.","$comment":"UNDOCUMENTED"}},"target":{"type":"string","title":"Target","description":"UNDOCUMENTED.","$comment":"UNDOCUMENTED","enum":["other"]}}}}},"DG_event_functions":{"title":"Event","description":"UNDOCUMENTED.","$comment":"UNDOCUMENTED","type":"object","properties":{"add_mob_effect":{"$ref":"#/definitions/DH"},"damage":{"$ref":"#/definitions/DI"},"decrement_stack":{"$ref":"#/definitions/DJ"},"remove_mob_effect":{"$ref":"#/definitions/EA"},"shoot":{"$ref":"#/definitions/EB"},"swing":{"$ref":"#/definitions/EC"},"teleport":{"$ref":"#/definitions/ED"},"transform_item":{"$ref":"#/definitions/EE"}}},"DH":{"title":"Add Mob Effect","description":"UNDOCUMENTED.","$comment":"UNDOCUMENTED","type":"object","additionalProperties":false,"properties":{"effect":{"type":"string","title":"Effect","description":"UNDOCUMENTED.","$comment":"UNDOCUMENTED"},"target":{"type":"string","title":"Target","description":"UNDOCUMENTED.","$comment":"UNDOCUMENTED","enum":["holder"]},"duration":{"type":"number","title":"Duration","description":"UNDOCUMENTED.","$comment":"UNDOCUMENTED"},"amplifier":{"type":"number","title":"Amplifier","description":"UNDOCUMENTED.","$comment":"UNDOCUMENTED"}}},"DI":{"title":"Shoot","description":"UNDOCUMENTED.","$comment":"UNDOCUMENTED","type":"object","additionalProperties":false,"properties":{"type":{"type":"string","title":"Type","description":"UNDOCUMENTED.","$comment":"UNDOCUMENTED","enum":["magic"]},"amount":{"type":"number","title":"Amount","description":"UNDOCUMENTED.","$comment":"UNDOCUMENTED"}}},"DJ":{"title":"Decrement Stack","description":"UNDOCUMENTED.","$comment":"UNDOCUMENTED","type":"object","additionalProperties":false},"EA":{"title":"Remove Mob Effect","description":"UNDOCUMENTED.","$comment":"UNDOCUMENTED","type":"object","additionalProperties":false,"properties":{"effect":{"type":"string","title":"Effect","description":"UNDOCUMENTED.","$comment":"UNDOCUMENTED"},"target":{"type":"string","title":"Target","description":"UNDOCUMENTED.","$comment":"UNDOCUMENTED","enum":["holder"]}}},"EB":{"title":"Shoot","description":"UNDOCUMENTED.","$comment":"UNDOCUMENTED","type":"object","additionalProperties":false,"properties":{"angle_offset":{"type":"number","title":"Angle Offset","description":"UNDOCUMENTED.","$comment":"UNDOCUMENTED"},"launch_power":{"type":"number","title":"Launch Power","description":"UNDOCUMENTED.","$comment":"UNDOCUMENTED"},"projectile":{"type":"string","title":"Projectile","description":"UNDOCUMENTED.","$comment":"UNDOCUMENTED"}}},"EC":{"title":"Swing","description":"UNDOCUMENTED.","$comment":"UNDOCUMENTED","type":"object","additionalProperties":false},"ED":{"title":"Teleport","description":"UNDOCUMENTED.","$comment":"UNDOCUMENTED","type":"object","additionalProperties":false,"properties":{"target":{"type":"string","title":"Target","description":"UNDOCUMENTED.","$comment":"UNDOCUMENTED","enum":["holder"]},"max_range":{"type":"array","title":"Maximum Range","description":"UNDOCUMENTED.","$comment":"UNDOCUMENTED","items":[{"type":"number","title":"X","description":"UNDOCUMENTED.","$comment":"UNDOCUMENTED"},{"type":"number","title":"Y","description":"UNDOCUMENTED.","$comment":"UNDOCUMENTED"},{"type":"number","title":"Z","description":"UNDOCUMENTED.","$comment":"UNDOCUMENTED"}]}}},"EE":{"title":"Transform Item","description":"UNDOCUMENTED.","$comment":"UNDOCUMENTED","type":"object","additionalProperties":false,"properties":{"transform":{"title":"Transform","description":"UNDOCUMENTED.","$comment":"UNDOCUMENTED","type":"string"}}},"DG":{"title":"Events","description":"UNDOCUMENTED.","$comment":"UNDOCUMENTED","type":"object","properties":{"on_consume":{"$ref":"#/definitions/DG_event_base"}},"additionalProperties":{"$ref":"#/definitions/DG_event_base"}},"B":{"additionalProperties":false,"required":["description"],"type":"object","description":"UNDOCUMENTED.","$comment":"UNDOCUMENTED","title":"Item","properties":{"description":{"additionalProperties":false,"type":"object","title":"Description","description":"The description for this item","$comment":"UNDOCUMENTED","properties":{"identifier":{"title":"Identifier","type":"string","description":"The identifier for this item. The name must include a namespace and must not use the Minecraft namespace unless overriding a Vanilla item.","$ref":"#/definitions/C"},"is_experimental":{"type":"boolean","default":false,"description":"If this item is experimental, it will only be registered if the world is marked as experimental.","title":"Is Experimental"},"menu_category":{"type":"object","title":"Menu Category","description":"The Creative Category that includes the specified item.","additionalProperties":false,"properties":{"group":{"$ref":"#/definitions/D"},"category":{"$ref":"#/definitions/E"},"is_hidden_in_commands":{"type":"boolean","default":false,"title":"Is Hidden In Commands","description":"Determines whether or not this item can be used with commands. Commands can use items by default"}}}}},"components":{"additionalProperties":{"type":"object"},"type":"object","description":"The components of this item.","properties":{"minecraft:allow_off_hand":{"$ref":"#/definitions/F"},"minecraft:block_placer":{"$ref":"#/definitions/G"},"minecraft:can_destroy_in_creative":{"$ref":"#/definitions/I"},"minecraft:cooldown":{"$ref":"#/definitions/J"},"minecraft:custom_components":{"$ref":"#/definitions/BA"},"minecraft:damage":{"$ref":"#/definitions/BB"},"minecraft:digger":{"$ref":"#/definitions/BC"},"minecraft:display_name":{"$ref":"#/definitions/BD"},"minecraft:durability":{"$ref":"#/definitions/BE"},"minecraft:enchantable":{"$ref":"#/definitions/BF"},"minecraft:entity_placer":{"$ref":"#/definitions/BG"},"minecraft:food":{"$ref":"#/definitions/BH"},"minecraft:fuel":{"$ref":"#/definitions/BI"},"minecraft:glint":{"$ref":"#/definitions/BJ"},"minecraft:hand_equipped":{"$ref":"#/definitions/CA"},"minecraft:icon":{"$ref":"#/definitions/CB"},"minecraft:liquid_clipped":{"$ref":"#/definitions/CC"},"minecraft:max_stack_size":{"$ref":"#/definitions/CD"},"minecraft:projectile":{"$ref":"#/definitions/CE"},"minecraft:record":{"$ref":"#/definitions/CF"},"minecraft:repairable":{"$ref":"#/definitions/CG"},"minecraft:shooter":{"$ref":"#/definitions/CI"},"minecraft:should_despawn":{"$ref":"#/definitions/CJ"},"minecraft:stacked_by_data":{"$ref":"#/definitions/DA"},"minecraft:tags":{"$ref":"#/definitions/DB"},"minecraft:throwable":{"$ref":"#/definitions/DC"},"minecraft:use_animation":{"$ref":"#/definitions/DD"},"minecraft:use_modifiers":{"$ref":"#/definitions/DE"},"minecraft:wearable":{"$ref":"#/definitions/DF"}}},"events":{"$ref":"#/definitions/DG"}}}}} \ No newline at end of file +{ + "$id": "blockception.minecraft.behavior.items", + "defaultSnippets": [ + { + "label": "New item", + "body": { + "format_version": "${1:1.20.80}", + "minecraft:item": { + "description": { + "identifier": "$2:${3:${TM_FILENAME/[\\.].*//}}", + "menu_category": { + "category": "${4:items}" + } + }, + "components": { + "minecraft:icon": "$2.${3:${TM_FILENAME/[\\.].*//}}" + } + } + } + } + ], + "description": "Minecraft items", + "required": [ + "format_version", + "minecraft:item" + ], + "title": "Item", + "type": "object", + "properties": { + "format_version": { + "$ref": "#/definitions/A" + }, + "minecraft:item": { + "$ref": "#/definitions/B" + } + }, + "definitions": { + "A": { + "title": "Format Version", + "description": "A version that tells minecraft what type of data format can be expected when reading this file.", + "pattern": "^([1-9]+)\\.([0-9]+)\\.([0-9]+)$", + "type": "string", + "default": "1.20.81", + "examples": [ + "1.20.81", + "1.20.40", + "1.19.0", + "1.12.0", + "1.10.0", + "1.8.0" + ], + "defaultSnippets": [ + { + "label": "New Format version", + "body": "1.${1|8,10,12,17,18,19,20|}.${3|2|0|}" + } + ] + }, + "C": { + "description": "A minecraft item identifier.", + "pattern": "^[0-9a-zA-Z:_\\-\\.]+$", + "title": "Item Identifier", + "type": "string", + "defaultSnippets": [ + { + "label": "New Identifier", + "body": "$1:$2" + } + ] + }, + "D": { + "type": "string", + "title": "Item Group", + "description": "A translation string of an existing group in minecraft to group this block/item under", + "enum": [ + "itemGroup.name.anvil", + "itemGroup.name.arrow", + "itemGroup.name.axe", + "itemGroup.name.banner", + "itemGroup.name.banner_pattern", + "itemGroup.name.bed", + "itemGroup.name.boat", + "itemGroup.name.boots", + "itemGroup.name.buttons", + "itemGroup.name.candles", + "itemGroup.name.chalkboard", + "itemGroup.name.chest", + "itemGroup.name.chestboat", + "itemGroup.name.chestplate", + "itemGroup.name.concrete", + "itemGroup.name.concretePowder", + "itemGroup.name.cookedFood", + "itemGroup.name.copper", + "itemGroup.name.coral", + "itemGroup.name.coral_decorations", + "itemGroup.name.crop", + "itemGroup.name.door", + "itemGroup.name.dye", + "itemGroup.name.enchantedBook", + "itemGroup.name.fence", + "itemGroup.name.fenceGate", + "itemGroup.name.firework", + "itemGroup.name.fireworkStars", + "itemGroup.name.flower", + "itemGroup.name.glass", + "itemGroup.name.glassPane", + "itemGroup.name.glazedTerracotta", + "itemGroup.name.goatHorn", + "itemGroup.name.grass", + "itemGroup.name.hanging_sign", + "itemGroup.name.helmet", + "itemGroup.name.hoe", + "itemGroup.name.horseArmor", + "itemGroup.name.leaves", + "itemGroup.name.leggings", + "itemGroup.name.lingeringPotion", + "itemGroup.name.log", + "itemGroup.name.minecart", + "itemGroup.name.miscFood", + "itemGroup.name.mobEgg", + "itemGroup.name.monsterStoneEgg", + "itemGroup.name.mushroom", + "itemGroup.name.netherWartBlock", + "itemGroup.name.ore", + "itemGroup.name.permission", + "itemGroup.name.pickaxe", + "itemGroup.name.planks", + "itemGroup.name.potion", + "itemGroup.name.potterySherds", + "itemGroup.name.pressurePlate", + "itemGroup.name.rail", + "itemGroup.name.rawFood", + "itemGroup.name.record", + "itemGroup.name.sandstone", + "itemGroup.name.sapling", + "itemGroup.name.sculk", + "itemGroup.name.seed", + "itemGroup.name.shovel", + "itemGroup.name.shulkerBox", + "itemGroup.name.sign", + "itemGroup.name.skull", + "itemGroup.name.slab", + "itemGroup.name.smithing_templates", + "itemGroup.name.splashPotion", + "itemGroup.name.stainedClay", + "itemGroup.name.stairs", + "itemGroup.name.stone", + "itemGroup.name.stoneBrick", + "itemGroup.name.sword", + "itemGroup.name.trapdoor", + "itemGroup.name.walls", + "itemGroup.name.wood", + "itemGroup.name.wool", + "itemGroup.name.woolCarpet" + ] + }, + "E": { + "type": "string", + "title": "Category", + "description": "Determines which category this block/item will be placed under in the inventory and crafting table container screens.", + "enum": [ + "construction", + "equipment", + "items", + "nature", + "none" + ] + }, + "F": { + "title": "Allow Off Hand", + "description": "The allow off hand component determines whether the item can be placed in the off hand slot of the inventory.", + "default": false, + "examples": [ + true, + { + "value": true + } + ], + "oneOf": [ + { + "type": "boolean" + }, + { + "type": "object", + "additionalProperties": false, + "required": [ + "value" + ], + "properties": { + "value": { + "title": "Value", + "description": "Whether the item can be placed in the off hand slot", + "type": "boolean", + "default": false + } + } + } + ] + }, + "G_use_on_item": { + "type": "object", + "title": "Allowed Block", + "description": "A block descriptor that allows to be placed.", + "properties": { + "tags": { + "title": "Tags", + "description": "Tags.", + "$ref": "#/definitions/H" + } + } + }, + "H": { + "type": "string", + "title": "Molang", + "description": "Molang definition.", + "format": "molang", + "examples": [ + "query.variant", + "(1.0)", + "query.", + "variable.=;" + ], + "defaultSnippets": [ + { + "label": "New Molang", + "body": "$1" + } + ] + }, + "G": { + "title": "Block Placer", + "description": "Planter item component. planter items are items that can be planted.", + "type": "object", + "additionalProperties": false, + "required": [ + "block" + ], + "properties": { + "block": { + "type": "string", + "description": "Set the placement block name for the planter item.", + "title": "Block" + }, + "use_on": { + "description": "List of block descriptors that contain blocks that this item can be used on. If left empty, all blocks will be allowed.", + "title": "Use On", + "type": "array", + "items": { + "$ref": "#/definitions/G_use_on_item" + } + } + } + }, + "I": { + "title": "Can Destroy In Creative", + "description": "The can destroy in creative component determines if the item will break blocks in creative when swinging.", + "default": true, + "examples": [ + false, + { + "value": false + } + ], + "oneOf": [ + { + "type": "boolean" + }, + { + "type": "object", + "additionalProperties": false, + "required": [ + "value" + ], + "properties": { + "value": { + "title": "Value", + "description": "Whether the item can destroy blocks while in creative", + "type": "boolean", + "default": true + } + } + } + ] + }, + "J": { + "title": "Cooldown", + "description": "Cool down time for a component. After you use an item it becomes unusable for the duration specified by the `cool down time` setting in this component.", + "type": "object", + "additionalProperties": false, + "required": [ + "category", + "duration" + ], + "properties": { + "category": { + "type": "string", + "description": "The type of cool down for this item.", + "title": "Category" + }, + "duration": { + "description": "The duration of time this item will spend cooling down before becoming usable again.", + "title": "Duration", + "type": "number" + } + }, + "examples": [ + { + "category": "attack", + "duration": 0.2 + } + ] + }, + "BA": { + "title": "Custom Components", + "description": "Used to register custom components.", + "additionalProperties": false, + "type": "array", + "items": { + "type": "string" + } + }, + "BB": { + "additionalProperties": false, + "type": "object", + "title": "Damage", + "description": "The damage component determines how much extra damage the item does on attack.", + "required": [ + "value" + ], + "properties": { + "value": { + "type": "number", + "title": "Value", + "description": "How much extra damage the item does, must be a positive number.", + "minimum": 1 + } + }, + "examples": [ + { + "value": 7 + } + ] + }, + "BC": { + "title": "Digger", + "description": "Digger item. Component put on items that dig.", + "type": "object", + "additionalProperties": false, + "required": [ + "destroy_speeds" + ], + "properties": { + "use_efficiency": { + "title": "Use Efficiency", + "type": "boolean", + "description": "Toggles if the item will be used efficiently.", + "default": false + }, + "destroy_speeds": { + "type": "array", + "title": "Destroy Speeds", + "description": "Destroy speed per block.", + "items": { + "title": "Destroy Speed", + "description": "Destroy speed per block.", + "type": "object", + "additionalProperties": false, + "properties": { + "speed": { + "title": "Speed", + "type": "number" + }, + "block": { + "title": "Block", + "oneOf": [ + { + "type": "string", + "description": "The block identifier." + }, + { + "type": "object", + "additionalProperties": false, + "properties": { + "tags": { + "type": "string", + "title": "Block Tags", + "description": "The block tags.", + "examples": [ + "query.any_tag( 'stone', 'metal' )" + ] + } + } + } + ] + } + } + } + } + } + }, + "BD": { + "title": "Display Name", + "description": "Display Name item component. Display Names display the name of an item.", + "$comment": "Does not currently support single value parsing.", + "type": "object", + "additionalProperties": false, + "required": [ + "value" + ], + "properties": { + "value": { + "type": "string", + "title": "Value", + "description": "Set the display name for an item." + } + }, + "examples": [ + { + "value": "secret_weapon" + } + ] + }, + "BE": { + "title": "Durability", + "description": "Durability item component: how much damage can this item take before breaking.", + "type": "object", + "additionalProperties": false, + "required": [ + "max_durability" + ], + "properties": { + "damage_chance": { + "type": "object", + "title": "Damage Chance", + "description": "Damage chance.", + "additionalProperties": false, + "required": [ + "min", + "max" + ], + "properties": { + "min": { + "title": "Min", + "type": "integer", + "description": "The minimum." + }, + "max": { + "title": "Max", + "type": "integer", + "description": "The maximum." + } + } + }, + "max_durability": { + "title": "Maximum Durability", + "description": "Maximum durability is the amount of damage that this item can take before breaking.", + "type": "integer", + "minimum": 0 + } + }, + "examples": [ + { + "damage_chance": { + "min": 10, + "max": 50 + }, + "max_durability": 36 + } + ] + }, + "BF": { + "title": "Enchantable", + "description": "The enchantable component determines what enchantments can be applied to the item.", + "type": "object", + "additionalProperties": false, + "required": [ + "slot" + ], + "properties": { + "slot": { + "title": "Slot", + "description": "If true you can always eat this item (even when not hungry), defaults to false.", + "enum": [ + "axe", + "bow", + "armor_feet", + "armor_torso", + "armor_head", + "armor_legs", + "hoe", + "pickaxe", + "shovel", + "elytra", + "fishing_rod", + "flintsteel", + "sword", + "shears", + "cosmetic_head" + ] + }, + "value": { + "title": "Value", + "description": "The value of the enchantment.", + "type": "number", + "minimum": 0 + } + } + }, + "BG": { + "title": "Entity Placer", + "description": "Entity placer item component. You can specifiy allowed blocks that the item is restricted to.", + "type": "object", + "additionalProperties": false, + "required": [ + "entity" + ], + "properties": { + "entity": { + "type": "string", + "title": "Entity", + "description": "The entity to be placed in the world." + }, + "dispense_on": { + "type": "array", + "title": "Dispense On", + "description": "List of block descriptors that contain blocks that this item can be dispensed on. If left empty, all blocks will be allowed.", + "items": { + "title": "Block Descriptor", + "description": "Block that item can be dispensed on.", + "$comment": "UNDOCUMENTED" + } + }, + "use_on": { + "type": "array", + "title": "Use On", + "description": "List of block descriptors that contain blocks that this item can be used on. If left empty, all blocks will be allowed.", + "items": { + "title": "Block Descriptor", + "description": "Block that item can be used on", + "$comment": "UNDOCUMENTED" + } + } + } + }, + "BH": { + "title": "Food", + "description": "When an item has a food component, it becomes edible to the player.", + "type": "object", + "additionalProperties": false, + "properties": { + "can_always_eat": { + "title": "Can Always Eat", + "description": "If true you can always eat this item (even when not hungry), defaults to false.", + "type": "boolean", + "default": false + }, + "nutrition": { + "title": "Nutrition", + "description": "How much nutrition does this food item give the player when eaten.", + "type": "number", + "default": 0 + }, + "saturation_modifier": { + "title": "Saturation Modifier", + "description": "Saturation Modifier is used in this formula: (nutrition * saturation_modifier * 2) when appling the saturation buff. Which happens when you eat the item.", + "type": "number", + "default": 0.6 + }, + "using_converts_to": { + "title": "Using Converts To", + "description": "When used, convert the *this* item to the one specified by `using_converts_to`.", + "type": "string" + } + } + }, + "BI": { + "title": "Fuel", + "description": "Fuel component. Allows this item to be used as fuel in a furnace to `cook` other items.", + "type": "object", + "additionalProperties": false, + "required": [ + "duration" + ], + "properties": { + "duration": { + "type": "number", + "title": "Duration", + "description": "How long in seconds will this fuel cook items for." + } + }, + "examples": [ + { + "duration": 3.0 + } + ] + }, + "BJ": { + "title": "Glint", + "description": "The glint component determines whether the item has the enchanted glint render effect on it", + "default": false, + "examples": [ + true, + { + "value": true + } + ], + "oneOf": [ + { + "type": "boolean" + }, + { + "type": "object", + "additionalProperties": false, + "required": [ + "value" + ], + "properties": { + "value": { + "title": "Value", + "description": "Whether the item has the glint effect.", + "type": "boolean", + "default": false + } + } + } + ] + }, + "CA": { + "title": "Hand Equipped", + "description": "This component determines if an item is rendered like a tool while in hand.", + "default": false, + "examples": [ + true, + { + "value": true + } + ], + "oneOf": [ + { + "type": "boolean" + }, + { + "type": "object", + "additionalProperties": false, + "required": [ + "value" + ], + "properties": { + "value": { + "title": "Value", + "description": "If the item is rendered like a tool while in hand.", + "type": "boolean", + "default": false + } + } + } + ] + }, + "CB": { + "title": "Icon", + "description": "The icon item componenent determines the icon to represent the item in the UI and elsewhere.", + "examples": [ + "stick", + { + "textures": { + "default": "stick" + } + } + ], + "oneOf": [ + { + "type": "string" + }, + { + "type": "object", + "additionalProperties": false, + "required": [ + "textures" + ], + "properties": { + "textures": { + "title": "Textures", + "description": "Contains key-value pairs of textures used by the item", + "type": "object", + "additionalProperties": { + "type": "string", + "title": "Texture", + "description": "The key from the resource_pack/textures/item_texture.json `texture_data` object associated with the texture file Example: blaze_powder." + }, + "required": [ + "default" + ], + "properties": { + "default": { + "type": "string", + "title": "Default Texture", + "description": "The key from the resource_pack/textures/item_texture.json `texture_data` object associated with the texture file Example: blaze_powder." + } + } + } + } + } + ] + }, + "CC": { + "title": "Liquid Clipped", + "description": "The liquid clipped component determines whether the item interacts with liquid blocks on use.", + "default": false, + "examples": [ + true, + { + "value": true + } + ], + "oneOf": [ + { + "type": "boolean" + }, + { + "additionalProperties": false, + "type": "object", + "required": [ + "value" + ], + "properties": { + "value": { + "title": "Value", + "description": "Whether the item interacts with liquid blocks on use.", + "type": "boolean", + "default": false + } + } + } + ] + }, + "CD": { + "title": "Max Stack Size", + "description": "The max stack size component determines how many of the item can be stacked together.", + "default": 64, + "examples": [ + 1, + { + "value": 1 + }, + 16, + { + "value": 16 + } + ], + "oneOf": [ + { + "type": "number", + "minimum": 1, + "maximum": 64 + }, + { + "type": "object", + "additionalProperties": false, + "required": [ + "value" + ], + "properties": { + "value": { + "title": "Value", + "description": "How many of the item that can be stacked.", + "type": "number", + "default": 64, + "minimum": 1, + "maximum": 64 + } + } + } + ] + }, + "CE": { + "title": "Projectile", + "description": "Compels the item shoot, like an arrow. Pair with minecraft:shooter for dispensers or as ammunition. Pair with minecraft:throwable to set the entity spawned.", + "type": "object", + "additionalProperties": false, + "required": [ + "projectile_entity" + ], + "properties": { + "minimum_critical_power": { + "type": "number", + "title": "Minimum Critical Power", + "description": "How long you must charge a projectile for it to critically hit." + }, + "projectile_entity": { + "title": "Projectile Entity", + "description": "The entity to be fired as a projectile.", + "type": "string" + } + }, + "examples": [ + { + "minimum_critical_power": 1.25, + "projectile_entity": "arrow" + } + ] + }, + "CF": { + "title": "Record", + "description": "Used by record items to play music.", + "type": "object", + "additionalProperties": false, + "required": [ + "sound_event" + ], + "properties": { + "comparator_signal": { + "title": "Comparator Signal", + "description": "Signal strength for comparator blocks to use, from 1 - 13", + "type": "number", + "minimum": 1, + "maximum": 13 + }, + "duration": { + "title": "Duration", + "description": "Duration of sound event in seconds, float value.", + "type": "number", + "minimum": 0 + }, + "sound_event": { + "title": "Sound Event", + "description": "Sound event type: 13, cat, blocks, chirp, far, mall, mellohi, stal, strad, ward, 11, wait, pigstep, otherside, 5, relic.", + "type": "string" + } + } + }, + "CH": { + "title": "Molang Number", + "description": "The minecraft molang definition that results in a float.", + "anyOf": [ + { + "type": "string", + "minLength": 0 + }, + { + "type": "number" + } + ], + "examples": [ + 0, + "query.variant", + "(1.0)", + "query.", + "variable.=;" + ], + "defaultSnippets": [ + { + "label": "New Molang", + "body": "$1" + } + ] + }, + "CG": { + "title": "Repairable", + "description": "Repairable item component: how much damage can this item repair, what items can repair it.", + "type": "object", + "additionalProperties": false, + "properties": { + "repair_items": { + "title": "Repair Items", + "description": "Repair item entries.", + "type": "array", + "items": { + "type": "object", + "title": "Repar Item", + "description": "List of repair item entries.", + "additionalProperties": false, + "properties": { + "items": { + "title": "Items", + "description": "Items that can be used to repeair it", + "$comment": "List of items", + "type": "array", + "items": { + "type": "string", + "title": "Item", + "description": "Item identifier" + } + }, + "repair_amount": { + "title": "Repair Amount", + "description": "Amount that can be repaired", + "$ref": "#/definitions/CH" + } + } + } + } + } + }, + "CI": { + "title": "Shooter", + "description": "Shooter Item Component.", + "type": "object", + "additionalProperties": false, + "properties": { + "ammunition": { + "title": "Ammunition", + "description": "Ammunition.", + "type": "array", + "items": { + "type": "object", + "title": "Ammunition", + "description": "Ammunition definition", + "additionalProperties": false, + "properties": { + "item": { + "title": "Item", + "description": "Item identifier", + "type": "string" + }, + "use_offhand": { + "title": "Use Offhand", + "description": "If ammo can be in offhand", + "type": "boolean" + }, + "search_inventory": { + "title": "Search Inventory", + "description": "If ammo can be stored in the inventory", + "type": "boolean" + }, + "use_in_creative": { + "title": "Use In Creative", + "description": "If it needs ammo to be used in creative", + "type": "boolean" + } + } + } + }, + "charge_on_draw": { + "title": "Charge On Draw", + "description": "Charge on draw? Default is set to false.", + "default": false, + "type": "boolean" + }, + "max_draw_duration": { + "title": "Maximum Draw Duration", + "description": "Draw Duration. Default is set to 0.", + "default": 0, + "type": "number" + }, + "scale_power_by_draw_duration": { + "title": "Scale Power By Draw Duration", + "description": "Scale power by draw duration? Default is set to false.", + "default": false, + "type": "boolean" + } + }, + "examples": [ + { + "ammunition": [ + { + "item": "custom_projectile", + "use_offhand": true, + "search_inventory": true, + "use_in_creative": true + } + ], + "max_draw_duration": 1.0, + "scale_power_by_draw_duration": true, + "charge_on_draw": false + } + ] + }, + "CJ": { + "title": "Should Despawn", + "description": "Should despawn component determines if the item should eventually despawn while floating in the world", + "default": true, + "examples": [ + false, + { + "value": false + } + ], + "oneOf": [ + { + "type": "boolean" + }, + { + "type": "object", + "additionalProperties": false, + "required": [ + "value" + ], + "properties": { + "value": { + "title": "Value", + "description": "Whether the item should eventually despawn while floating in the world", + "type": "boolean", + "default": true + } + } + } + ] + }, + "DA": { + "title": "Stacked By Data", + "description": "The stacked by data component determines if the same item with different aux values can stack.", + "default": false, + "examples": [ + true, + { + "value": true + } + ], + "oneOf": [ + { + "type": "boolean" + }, + { + "type": "object", + "additionalProperties": false, + "required": [ + "value" + ], + "properties": { + "value": { + "title": "Value", + "description": "Also defines whether the item actors can merge while floating in the world.", + "type": "boolean", + "default": false + } + } + } + ] + }, + "DB": { + "title": "Tags", + "description": "The tags component determines which tags an item has on it.", + "type": "object", + "additionalProperties": false, + "required": [ + "tags" + ], + "properties": { + "tags": { + "title": "Tags", + "description": "An array that can contain multiple item tags.", + "type": "array", + "uniqueItems": true, + "minItems": 1, + "items": { + "anyOf": [ + { + "enum": [ + "minecraft:arrow", + "minecraft:banner", + "minecraft:boat", + "minecraft:boats", + "minecraft:bookshelf_books", + "minecraft:chainmail_tier", + "minecraft:coals", + "minecraft:crimson_stems", + "minecraft:decorated_pot_sherds", + "minecraft:diamond_tier", + "minecraft:digger", + "minecraft:door", + "minecraft:golden_tier", + "minecraft:hanging_actor", + "minecraft:hanging_sign", + "minecraft:horse_armor", + "minecraft:iron_tier", + "minecraft:is_armor", + "minecraft:is_axe", + "minecraft:is_cooked", + "minecraft:is_fish", + "minecraft:is_food", + "minecraft:is_hoe", + "minecraft:is_meat", + "minecraft:is_minecart", + "minecraft:is_pickaxe", + "minecraft:is_shovel", + "minecraft:is_sword", + "minecraft:is_tool", + "minecraft:is_trident", + "minecraft:leather_tier", + "minecraft:lectern_books", + "minecraft:logs", + "minecraft:logs_that_burn", + "minecraft:mangrove_logs", + "minecraft:music_disc", + "minecraft:netherite_tier", + "minecraft:planks", + "minecraft:sand", + "minecraft:sign", + "minecraft:soul_fire_base_blocks", + "minecraft:spawn_egg", + "minecraft:stone_bricks", + "minecraft:stone_crafting_materials", + "minecraft:stone_tier", + "minecraft:stone_tool_materials", + "minecraft:transform_materials", + "minecraft:transform_templates", + "minecraft:transformable_items", + "minecraft:trim_templates", + "minecraft:trimmable_armors", + "minecraft:vibration_damper", + "minecraft:warped_stems", + "minecraft:wooden_slabs", + "minecraft:wooden_tier", + "minecraft:wool" + ] + }, + { + "type": "string" + } + ] + } + } + } + }, + "DC": { + "title": "Throwable", + "description": "Throwable item component. Throwable items, such as a snowball.", + "type": "object", + "additionalProperties": false, + "properties": { + "do_swing_animation": { + "title": "Do Swing Animation", + "description": "Whether the item should use the swing animation when thrown. Default is set to false.", + "default": false, + "type": "boolean" + }, + "launch_power_scale": { + "title": "Launch Power Scale", + "description": "The scale at which the power of the throw increases. Default is set to 1.0.", + "default": 1.0, + "type": "number" + }, + "max_draw_duration": { + "title": "Maximum Draw Duration", + "description": "The maximum duration to draw a throwable item. Default is set to 0.0.", + "default": 0, + "type": "number" + }, + "min_draw_duration": { + "title": "Minimum Draw Duration", + "description": "The minimum duration to draw a throwable item. Default is set to 0.0.", + "default": 0, + "type": "number" + }, + "max_launch_power": { + "title": "Maximum Launch Power", + "description": "The maximum power to launch the throwable item. Default is set to 1.0.", + "default": 1.0, + "type": "number" + }, + "scale_power_by_draw_duration": { + "title": "Scale Power By Draw Duration", + "description": "Whether or not the power of the throw increases with duration charged. Default is set to false.", + "default": false, + "type": "boolean" + } + }, + "examples": [ + { + "do_swing_animation": false, + "min_draw_duration": 0.0, + "max_draw_duration": 1.0, + "launch_power_scale": 1.0, + "max_launch_power": 2.0, + "scale_power_by_draw_duration": false + } + ] + }, + "DD_animation": { + "enum": [ + "bow", + "brush", + "camera", + "crossbow", + "drink", + "eat", + "none", + "spear", + "spyglass" + ] + }, + "DD": { + "title": "Use Animation", + "description": "This component determines which animation plays when using the item.", + "oneOf": [ + { + "$ref": "#/definitions/DD_animation" + }, + { + "type": "object", + "additionalProperties": false, + "required": [ + "value" + ], + "properties": { + "value": { + "title": "Value", + "description": "Which animation to play when using the item.", + "$ref": "#/definitions/DD_animation" + } + } + } + ] + }, + "DE": { + "additionalProperties": false, + "required": [ + "use_duration" + ], + "type": "object", + "title": "Use Modifiers", + "description": "How long to use before item is done being used.", + "properties": { + "movement_modifier": { + "title": "Movement Modifier", + "description": "Modifier value to scale the players movement speed when item is in use.", + "type": "number", + "minimum": 0 + }, + "use_duration": { + "title": "Use Duration", + "description": "How long the item takes to use in seconds.", + "type": "number", + "minimum": 0 + } + } + }, + "DF": { + "title": "Wearable", + "description": "Wearable item component.", + "type": "object", + "additionalProperties": false, + "properties": { + "protection": { + "type": "integer", + "description": "How much protection does the armor item have.", + "title": "Protection", + "minimum": 0 + }, + "dispensable": { + "title": "Dispensable", + "description": "Sets if the item can be dropped by a dispenser block", + "type": "boolean" + }, + "slot": { + "title": "Slot", + "description": "Which equipment slot the item can fit in", + "type": "string", + "enum": [ + "none", + "slot.weapon.mainhand", + "slot.weapon.offhand", + "slot.armor.head", + "slot.armor.chest", + "slot.armor.legs", + "slot.armor.feet", + "slot.hotbar", + "slot.inventory", + "slot.enderchest", + "slot.saddle", + "slot.armor", + "slot.chest", + "slot.equippable" + ] + } + } + }, + "DG_event_base": { + "title": "Event", + "description": "UNDOCUMENTED.", + "$comment": "UNDOCUMENTED", + "type": "object", + "additionalProperties": false, + "$ref": "#/definitions/DG_event_functions", + "properties": { + "sequence": { + "title": "Sequence", + "description": "UNDOCUMENTED.", + "$comment": "UNDOCUMENTED", + "type": "array", + "items": { + "title": "Sequence", + "description": "UNDOCUMENTED.", + "$comment": "UNDOCUMENTED", + "type": "object", + "$ref": "#/definitions/DG_event_functions" + } + }, + "randomize": { + "title": "Randomize", + "description": "UNDOCUMENTED.", + "$comment": "UNDOCUMENTED", + "type": "array", + "items": { + "title": "Randomize", + "description": "UNDOCUMENTED.", + "$comment": "UNDOCUMENTED", + "type": "object", + "$ref": "#/definitions/DG_event_functions", + "required": [ + "weight" + ], + "properties": { + "weight": { + "title": "Weight", + "description": "UNDOCUMENTED.", + "$comment": "UNDOCUMENTED", + "type": "integer", + "minimum": 0 + } + } + } + }, + "run_command": { + "title": "Run Command", + "description": "UNDOCUMENTED.", + "$comment": "UNDOCUMENTED", + "type": "object", + "additionalProperties": false, + "properties": { + "command": { + "title": "Command", + "description": "UNDOCUMENTED.", + "$comment": "UNDOCUMENTED", + "type": "array", + "items": { + "type": "string", + "title": "Command", + "description": "UNDOCUMENTED.", + "$comment": "UNDOCUMENTED" + } + }, + "target": { + "type": "string", + "title": "Target", + "description": "UNDOCUMENTED.", + "$comment": "UNDOCUMENTED", + "enum": [ + "other" + ] + } + } + } + } + }, + "DG_event_functions": { + "title": "Event", + "description": "UNDOCUMENTED.", + "$comment": "UNDOCUMENTED", + "type": "object", + "properties": { + "add_mob_effect": { + "$ref": "#/definitions/DH" + }, + "damage": { + "$ref": "#/definitions/DI" + }, + "decrement_stack": { + "$ref": "#/definitions/DJ" + }, + "remove_mob_effect": { + "$ref": "#/definitions/EA" + }, + "shoot": { + "$ref": "#/definitions/EB" + }, + "swing": { + "$ref": "#/definitions/EC" + }, + "teleport": { + "$ref": "#/definitions/ED" + }, + "transform_item": { + "$ref": "#/definitions/EE" + } + } + }, + "DH": { + "title": "Add Mob Effect", + "description": "UNDOCUMENTED.", + "$comment": "UNDOCUMENTED", + "type": "object", + "additionalProperties": false, + "properties": { + "effect": { + "type": "string", + "title": "Effect", + "description": "UNDOCUMENTED.", + "$comment": "UNDOCUMENTED" + }, + "target": { + "type": "string", + "title": "Target", + "description": "UNDOCUMENTED.", + "$comment": "UNDOCUMENTED", + "enum": [ + "holder" + ] + }, + "duration": { + "type": "number", + "title": "Duration", + "description": "UNDOCUMENTED.", + "$comment": "UNDOCUMENTED" + }, + "amplifier": { + "type": "number", + "title": "Amplifier", + "description": "UNDOCUMENTED.", + "$comment": "UNDOCUMENTED" + } + } + }, + "DI": { + "title": "Shoot", + "description": "UNDOCUMENTED.", + "$comment": "UNDOCUMENTED", + "type": "object", + "additionalProperties": false, + "properties": { + "type": { + "type": "string", + "title": "Type", + "description": "UNDOCUMENTED.", + "$comment": "UNDOCUMENTED", + "enum": [ + "magic" + ] + }, + "amount": { + "type": "number", + "title": "Amount", + "description": "UNDOCUMENTED.", + "$comment": "UNDOCUMENTED" + } + } + }, + "DJ": { + "title": "Decrement Stack", + "description": "UNDOCUMENTED.", + "$comment": "UNDOCUMENTED", + "type": "object", + "additionalProperties": false + }, + "EA": { + "title": "Remove Mob Effect", + "description": "UNDOCUMENTED.", + "$comment": "UNDOCUMENTED", + "type": "object", + "additionalProperties": false, + "properties": { + "effect": { + "type": "string", + "title": "Effect", + "description": "UNDOCUMENTED.", + "$comment": "UNDOCUMENTED" + }, + "target": { + "type": "string", + "title": "Target", + "description": "UNDOCUMENTED.", + "$comment": "UNDOCUMENTED", + "enum": [ + "holder" + ] + } + } + }, + "EB": { + "title": "Shoot", + "description": "UNDOCUMENTED.", + "$comment": "UNDOCUMENTED", + "type": "object", + "additionalProperties": false, + "properties": { + "angle_offset": { + "type": "number", + "title": "Angle Offset", + "description": "UNDOCUMENTED.", + "$comment": "UNDOCUMENTED" + }, + "launch_power": { + "type": "number", + "title": "Launch Power", + "description": "UNDOCUMENTED.", + "$comment": "UNDOCUMENTED" + }, + "projectile": { + "type": "string", + "title": "Projectile", + "description": "UNDOCUMENTED.", + "$comment": "UNDOCUMENTED" + } + } + }, + "EC": { + "title": "Swing", + "description": "UNDOCUMENTED.", + "$comment": "UNDOCUMENTED", + "type": "object", + "additionalProperties": false + }, + "ED": { + "title": "Teleport", + "description": "UNDOCUMENTED.", + "$comment": "UNDOCUMENTED", + "type": "object", + "additionalProperties": false, + "properties": { + "target": { + "type": "string", + "title": "Target", + "description": "UNDOCUMENTED.", + "$comment": "UNDOCUMENTED", + "enum": [ + "holder" + ] + }, + "max_range": { + "type": "array", + "title": "Maximum Range", + "description": "UNDOCUMENTED.", + "$comment": "UNDOCUMENTED", + "items": [ + { + "type": "number", + "title": "X", + "description": "UNDOCUMENTED.", + "$comment": "UNDOCUMENTED" + }, + { + "type": "number", + "title": "Y", + "description": "UNDOCUMENTED.", + "$comment": "UNDOCUMENTED" + }, + { + "type": "number", + "title": "Z", + "description": "UNDOCUMENTED.", + "$comment": "UNDOCUMENTED" + } + ] + } + } + }, + "EE": { + "title": "Transform Item", + "description": "UNDOCUMENTED.", + "$comment": "UNDOCUMENTED", + "type": "object", + "additionalProperties": false, + "properties": { + "transform": { + "title": "Transform", + "description": "UNDOCUMENTED.", + "$comment": "UNDOCUMENTED", + "type": "string" + } + } + }, + "DG": { + "title": "Events", + "description": "UNDOCUMENTED.", + "$comment": "UNDOCUMENTED", + "type": "object", + "properties": { + "on_consume": { + "$ref": "#/definitions/DG_event_base" + } + }, + "additionalProperties": { + "$ref": "#/definitions/DG_event_base" + } + }, + "B": { + "additionalProperties": false, + "required": [ + "description" + ], + "type": "object", + "description": "UNDOCUMENTED.", + "$comment": "UNDOCUMENTED", + "title": "Item", + "properties": { + "description": { + "additionalProperties": false, + "type": "object", + "title": "Description", + "description": "The description for this item", + "$comment": "UNDOCUMENTED", + "properties": { + "identifier": { + "title": "Identifier", + "type": "string", + "description": "The identifier for this item. The name must include a namespace and must not use the Minecraft namespace unless overriding a Vanilla item.", + "$ref": "#/definitions/C" + }, + "is_experimental": { + "type": "boolean", + "default": false, + "description": "If this item is experimental, it will only be registered if the world is marked as experimental.", + "title": "Is Experimental" + }, + "menu_category": { + "type": "object", + "title": "Menu Category", + "description": "The Creative Category that includes the specified item.", + "additionalProperties": false, + "properties": { + "group": { + "$ref": "#/definitions/D" + }, + "category": { + "$ref": "#/definitions/E" + }, + "is_hidden_in_commands": { + "type": "boolean", + "default": false, + "title": "Is Hidden In Commands", + "description": "Determines whether or not this item can be used with commands. Commands can use items by default" + } + } + } + } + }, + "components": { + "additionalProperties": { + "type": "object" + }, + "type": "object", + "description": "The components of this item.", + "properties": { + "minecraft:allow_off_hand": { + "$ref": "#/definitions/F" + }, + "minecraft:block_placer": { + "$ref": "#/definitions/G" + }, + "minecraft:can_destroy_in_creative": { + "$ref": "#/definitions/I" + }, + "minecraft:cooldown": { + "$ref": "#/definitions/J" + }, + "minecraft:custom_components": { + "$ref": "#/definitions/BA" + }, + "minecraft:damage": { + "$ref": "#/definitions/BB" + }, + "minecraft:digger": { + "$ref": "#/definitions/BC" + }, + "minecraft:display_name": { + "$ref": "#/definitions/BD" + }, + "minecraft:durability": { + "$ref": "#/definitions/BE" + }, + "minecraft:enchantable": { + "$ref": "#/definitions/BF" + }, + "minecraft:entity_placer": { + "$ref": "#/definitions/BG" + }, + "minecraft:food": { + "$ref": "#/definitions/BH" + }, + "minecraft:fuel": { + "$ref": "#/definitions/BI" + }, + "minecraft:glint": { + "$ref": "#/definitions/BJ" + }, + "minecraft:hand_equipped": { + "$ref": "#/definitions/CA" + }, + "minecraft:icon": { + "$ref": "#/definitions/CB" + }, + "minecraft:liquid_clipped": { + "$ref": "#/definitions/CC" + }, + "minecraft:max_stack_size": { + "$ref": "#/definitions/CD" + }, + "minecraft:projectile": { + "$ref": "#/definitions/CE" + }, + "minecraft:record": { + "$ref": "#/definitions/CF" + }, + "minecraft:repairable": { + "$ref": "#/definitions/CG" + }, + "minecraft:shooter": { + "$ref": "#/definitions/CI" + }, + "minecraft:should_despawn": { + "$ref": "#/definitions/CJ" + }, + "minecraft:stacked_by_data": { + "$ref": "#/definitions/DA" + }, + "minecraft:tags": { + "$ref": "#/definitions/DB" + }, + "minecraft:throwable": { + "$ref": "#/definitions/DC" + }, + "minecraft:use_animation": { + "$ref": "#/definitions/DD" + }, + "minecraft:use_modifiers": { + "$ref": "#/definitions/DE" + }, + "minecraft:wearable": { + "$ref": "#/definitions/DF" + } + } + }, + "events": { + "$ref": "#/definitions/DG" + } + } + } + } +} \ No newline at end of file