<aside>
<aside>
High quality assets for your videos are available for download through our Media Kit! Feel free to use the assets as you see fit in your videos & streams.
</aside>
<aside>
<aside>
Tags and presets that allow you to support Actions & Stuff’s animations.
Vanilla Minecraft item tags are used to give animations to various items, supported tags are:
minecraft:is_axeminecraft:is_hoeminecraft:is_pickaxeminecraft:is_shovelminecraft:is_swordminecraft:is_tridentSome animations cannot be supported through vanilla tags, so we’ve added our own:
oreville:is_boworeville:is_drinkoreville:is_crossboworeville:is_hornoreville:is_lanternoreville:is_maceoreville:is_potionoreville:is_shieldoreville:is_spyglassoreville:is_torchoreville:is_throwableoreville:is_milkoreville:is_soupTo use these item tags, simply add them to a minecraft:tags component in your item definition, like so:
"components": {
	"minecraft:tags": {
		"tags": ["minecraft:is_sword"]
	}
}
In order to support custom animations in first person, items must be made into attachables. Most first person animations also require the v.oreville_mainhand_custom_pos variable to be enabled. It’s advised to also use the v.actions_and_stuff variable to disable Actions & Stuff specific animations so that your item still works outside of Actions & Stuff.
Here’s a minimal snippet of what your attachable could include:
{
	"scripts": {
		"animate": [
			{ "first_person_actions_and_stuff": "c.is_first_person && v.actions_and_stuff" },
			{ "first_person_vanilla": "c.is_first_person && !v.actions_and_stuff" }
		],
		"pre_animation": [
			"v.actions_and_stuff = c.owning_entity -> v.actions_and_stuff;"
		],
		"parent_setup": "c.item_slot == 'main_hand' ? { v.oreville_mainhand_custom_pos = 1; };"
	}
}
The simplest way to convert your items to an attachable is to use the texture mesh feature in a geometry, this allows you to create a model based on the texture used.
Attachable specific features are managed by variables in the parent_setup field of the attachable’s scripts. The available variables are:
v.oreville_mainhand_visible v.oreville_offhand_visible
Shows the player’s hand when set to 1.
v.oreville_mainhand_hold_up v.oreville_offhand_hold_up
Makes the player hold their hand up. Used while holding lanterns and other items.
v.oreville_mainhand_custom_pos v.oreville_offhand_custom_pos
Enables the custom holding position and first-person animations.
Here’s an example of how to use the above variables:
c.item_slot == 'main_hand' ? {
	v.oreville_mainhand_visible = 1;
};
c.item_slot == 'off_hand' ? {
	v.oreville_offhand_visible = 1;
};
Here’s how you’d use it in your attachable:
{
	"scripts": {
		"parent_setup": "c.item_slot == 'main_hand' ? { v.oreville_mainhand_visible = 1; }; c.item_slot == 'off_hand' ? { v.oreville_offhand_visible = 1; };"
	}
}
When Actions and Stuff is loaded, the player will have a public variable set to 1, you can read this from your attachable if you need to change something about the attachable when A&S is active, for example, disabling a conflicting animation.
To access this variable simply add v.actions_and_stuff = c.owning_entity -> v.actions_and_stuff; to pre_animation under scripts in your attachable:
{
	"scripts": {
		"pre_animation": [
			"v.actions_and_stuff = c.owning_entity -> v.actions_and_stuff;"
		]
	}
}
</aside>
</aside>