Merge branch 'master' into 1.16
# Conflicts: # src/main/java/carpet/network/ServerNetworkHandler.java # src/main/java/carpet/script/CarpetExpression.java
This commit is contained in:
commit
80ca80fe24
22 files changed
+528
-3
No files matched your search
@@ -32,6 +32,8 @@ __on_player_right_clicks_block(player, item_tuple, hand, block, face, hitvec) /
|
||||
__on_player_interacts_with_block(player, hand, block, face, hitvec) //right click on a block resulted in activation of said block
|
||||
__on_player_places_block(player, item_tuple, hand, block) // player have just placed the block.
|
||||
__on_player_interacts_with_entity(player, entity, hand)
|
||||
__on_player_chooses_recipe(player, recipe, full_stack)
|
||||
__on_player_switches_slot(player, from, to)
|
||||
__on_player_attacks_entity(player, entity)
|
||||
__on_player_takes_damage(player, amount, source, source_entity)
|
||||
__on_player_deals_damage(player, amount, entity)
|
||||
|
||||
@@ -38,6 +38,50 @@ item_category('ender_pearl') => misc
|
||||
item_category('stone') => building_blocks
|
||||
</pre>
|
||||
|
||||
### `recipe_data(item, type?)`, `recipe_data(recipe, type?)`
|
||||
|
||||
returns all recipes matching either an `item`, or represent actual `recipe` name. In vanilla datapack, for all items
|
||||
that have one recipe available, the recipe name is the same as the item name but if an item has multiple recipes, its
|
||||
direct name can be different.
|
||||
|
||||
Recipe type can take one of the following options:
|
||||
* `'crafting'` - default, crafting table recipe
|
||||
* `'smelting'` - furnace recipe
|
||||
* `'blasting'` - blast furnace recipe
|
||||
* `'smoking'` - smoker recipe
|
||||
* `'campfire_cooking'` - campfire recipe
|
||||
* `'stonecutting'` - stonecutter recipe
|
||||
|
||||
The return value is a list of available recipes (even if there is only one recipe available). Each recipe contains of
|
||||
an item triple of the crafting result, list of ingredients, each containing a list of possible variants of the
|
||||
ingredients in this slot, as item triples, or `null` if its a shaped recipe and a given slot in the patterns is left
|
||||
empty, and recipe specification as another list. Possible recipe specs is:
|
||||
* `['shaped', width, height]` - shaped crafting. `width` and `height` can be 1, 2 or 3.
|
||||
* `['shapeless']` - shapeless crafting
|
||||
* `['smelting', duration, xp]` - smelting/cooking recipes
|
||||
* `['cutting']` - stonecutter recipe
|
||||
* `['special']` - special crafting recipe, typically not present in the crafting menu
|
||||
* `['custom']` - other recipe types
|
||||
|
||||
Note that ingredients are specified as tripes, with count and nbt information. Currently all recipes require always one
|
||||
of the ingredients, and for some recipes, even if the nbt data for the ingredient is specified (e.g. `dispenser`), it
|
||||
can accept items of any tags.
|
||||
|
||||
Also note that some recipes leave some products in the crafting window, and these can be determined using
|
||||
`crafting_remaining_item()` function
|
||||
|
||||
Examples:
|
||||
<pre>
|
||||
recipe_data('iron_ingot_from_nuggets')
|
||||
recipe_data('iron_ingot')
|
||||
recipe_data('glass', 'smelting')
|
||||
</pre>
|
||||
|
||||
### `crafting_remaining_item(item)`
|
||||
|
||||
returns `null` if the item has no remaining item in the crafting window when used as a crafting ingredient, or an
|
||||
item name that serves as a replacement after crafting is done. Currently it can only be buckets and glass bottles.
|
||||
|
||||
### `inventory_size(inventory)`
|
||||
|
||||
Returns the size of the inventory for the entity or block in question. Returns null if the block or entity don't
|
||||
|
||||
Reference in new issue
Block a user