💎 Adding your own material#
Function Tag#
#simpledrawer:material
#
Add your custom material to this function tag to make it compatible with the compacting drawer.
Inputs#
Input Name |
Input Type |
Input Source |
Input Objective/Path |
---|---|---|---|
Success |
score |
#success_material |
simpledrawer.io |
The item |
storage |
item_material |
simpledrawer:io |
Outputs#
Output Name |
Output Type |
Output Source |
Output Objective/Path |
---|---|---|---|
Success |
score |
#success_material |
simpledrawer.io |
The material |
storage |
material |
simpledrawer:io |
Type of compacting |
score |
#type |
simpledrawer.io |
Number of ingot in a block |
score |
#ingot_in_block |
simpledrawer.io |
Number of nugget in a block |
score |
#nugget_in_block |
simpledrawer.io |
Number of nugget in a ingot |
score |
#nugget_in_ingot |
simpledrawer.io |
Basic format#
The function tag will be called when the material of the item need to be checked.
In the function tag#
execute
unless score #success_material simpledrawer.io matches 1
if data storage simpledrawer:io item_material{tag:{ctc:{id:"my_block",from:"my_data_pack"}}}
run function my_data_pack:my_material/block:
scoreboard players set #type simpledrawer.io 0
function my_data_pack:my_material
execute
unless score #success_material simpledrawer.io matches 1
if data storage simpledrawer:io item_material{tag:{ctc:{id:"my_ingot",from:"my_data_pack"}}}
run function my_data_pack:my_material/block:
scoreboard players set #type simpledrawer.io 1
function my_data_pack:my_material
execute
unless score #success_material simpledrawer.io matches 1
if data storage simpledrawer:io item_material{tag:{ctc:{id:"my_nugget",from:"my_data_pack"}}}
run function my_data_pack:my_material/block:
scoreboard players set #type simpledrawer.io 2
function my_data_pack:my_material
Material function#
function my_data_pack:my_material
scoreboard players set #success_material simpledrawer.io 1
scoreboard players set #ingot_in_block simpledrawer.io 9
scoreboard players set #nugget_in_block simpledrawer.io 81
scoreboard players set #nugget_in_ingot simpledrawer.io 9
data modify storage simpledrawer:io material set value {
material: "my_data_pack.my_material', # The UNIQUE identifier of the material, should be namespaced
material_name: '{"text":"My material"}', # The json text component of the material name
block: <The block NBT> <,# The block NBT of the block form of the material
ingot: <The item NBT>, # The item NBT of the ingot form of the material
nugget: <The item NBT> # The item NBT of the nugget form of the material, don't declare if the material doesn't have a nugget form
}
Example repository#
Take a look at the this example datapack to see how to add your own material.