{
	"format_version": "1.10.0",
	"animation_controllers": {
		"controller.animation.lance.attack": {
			"states": {
				"default": {
					"transitions": [
						{
							"unsheathe": "variable.lance"
						},
						{
							"undefault": "!query.is_item_name_any('slot.hotbar',0,'pixel:wooden_lance') && !query.is_item_name_any('slot.hotbar',0,'pixel:stone_lance') && !query.is_item_name_any('slot.hotbar',0,'pixel:iron_lance') && !query.is_item_name_any('slot.hotbar',0,'pixel:golden_lance') && !query.is_item_name_any('slot.hotbar',0,'pixel:diamond_lance') && !query.is_item_name_any('slot.hotbar',0,'pixel:netherite_lance')"
						}
					]
				},
				"undefault": {
					"transitions": [
						{
							"lance": "variable.lance && !v.shield_off"
						},
						{
							"lance_shield": "variable.lance && v.shield_off"
						},
						{
							"default": "query.is_item_name_any('slot.hotbar',0,'pixel:wooden_lance')||query.is_item_name_any('slot.hotbar',0,'pixel:stone_lance')||query.is_item_name_any('slot.hotbar',0,'pixel:iron_lance')||query.is_item_name_any('slot.hotbar',0,'pixel:golden_lance')||query.is_item_name_any('slot.hotbar',0,'pixel:diamond_lance')||query.is_item_name_any('slot.hotbar',0,'pixel:netherite_lance')"
						}
					]
				},
				"unsheathe": {
					"animations": [
					  "lance_unsheathe"
					],
					"transitions": [
						{
							"lance": "variable.lance && !v.shield_off"
						},
						{
							"lance_shield": "variable.lance && v.shield_off"
						},
						{
							"default": "!variable.lance"
						}
					]
				},
				"lance": {
				    "animations": [
				      "lance_base_pose",
                      "lance_no_back"
				    ],
					"transitions": [
						{
							"move": "query.is_moving"
						},
						{
							"ride": "query.is_riding"
						},
						{
							"lance_shield": "variable.lance && v.shield_off"
						},
						{
							"sneak": "query.is_sneaking"
						},
						{
							"default": "!variable.lance"
						}
					]
				},
				"sneak": {
					"animations": [
				        "lance_sneak",
                      "lance_no_back"
					],
					"transitions": [
						{
							"default": "!variable.lance"
						},
						{
							"sneak_move": "query.is_moving"
						},
						{
							"lance_shield": "variable.lance && v.shield_off"
						},
						{
							"lance": "!query.is_sneaking"
						}
					]
				},
				"move": {
					"animations": [
					  "lance_move",
					  "katana_unsheathed_0",
                      "lance_no_back"
					],
					"transitions": [
						{
							"default": "!variable.lance"
						},
						{
							"lance": "!query.is_moving"
						},
						{
							"lance_shield": "variable.lance && v.shield_off"
						},
						{
							"sprint": "query.is_sprinting"
						},
						{
							"sneak": "query.is_sneaking"
						}
					]
				},
				"sprint": {
					"animations": [
                      "lance_no_back",
					  "lance_sprint"
					],
					"transitions": [
						{
							"default": "!variable.lance"
						},
						{
							"lance_shield": "variable.lance && v.shield_off"
						},
						{
							"lance": "query.all_animations_finished"
						}
					]
				},
				"sneak_move": {
					"animations": [
                      "lance_no_back",
                      "lance_sneak_move"
					],
					"transitions": [
						{
							"default": "!variable.lance"
						},
						{
							"lance_shield": "variable.lance && v.shield_off"
						},
						{
							"move": "!query.is_sprinting"
						},
						{
							"sneak": "query.is_sneaking && !query.is_moving"
						}
					]
				},
				"ride": {
					"animations": [
				      {
				          "shield_no_back": "query.get_equipped_item_name('off_hand') == 'shield'"
				      },
				      "lance_riding_pose",
					  "lance_no_back"
					],
					"transitions": [
						{
							"default": "!variable.lance"
						},
						{
							"lance": "!query.is_riding"
						}
					]
				},
				"lance_shield": {
				    "animations": [
				      "lance_shield_base_pose",
                      "lance_no_back",
                      "shield_no_back"
				    ],
					"transitions": [
						{
							"move_shield": "query.is_moving"
						},
						{
							"lance": "variable.lance && !v.shield_off"
						},
						{
							"ride_shield": "query.is_riding"
						},
						{
							"sneak_shield": "query.is_sneaking"
						},
						{
							"default": "!variable.lance"
						}
					]
				},
				"sneak_shield": {
					"animations": [
				        "lance_shield_sneak",
                      "lance_no_back",
                      "shield_no_back"
					],
					"transitions": [
						{
							"default": "!variable.lance"
						},
						{
							"lance": "variable.lance && !v.shield_off"
						},
						{
							"sneak_move_shield": "query.is_moving"
						},
						{
							"lance_shield": "!query.is_sneaking"
						}
					]
				},
				"move_shield": {
					"animations": [
					  "lance_shield_move",
					  "shield_no_back",
                      "lance_no_back"
					],
					"transitions": [
						{
							"default": "!variable.lance"
						},
						{
							"lance": "variable.lance && !v.shield_off"
						},
						{
							"lance_shield": "!query.is_moving"
						},
						{
							"sprint_shield": "query.is_sprinting"
						},
						{
							"sneak_shield": "query.is_sneaking"
						}
					]
				},
				"sprint_shield": {
					"animations": [
                      "lance_no_back",
					  "lance_shield_sprint"
					],
					"transitions": [
						{
							"default": "!variable.lance"
						},
						{
							"lance": "variable.lance && !v.shield_off"
						},
						{
							"lance_shield": "query.all_animations_finished"
						}
					]
				},
				"sneak_move_shield": {
					"animations": [
                      "lance_no_back",
                      
                     "shield_no_back", "lance_shield_sneak_move"
					],
					"transitions": [
						{
							"default": "!variable.lance"
						},
						{
							"lance": "variable.lance && !v.shield_off"
						},
						{
							"move_shield": "!query.is_sprinting"
						},
						{
							"sneak_shield": "query.is_sneaking && !query.is_moving"
						}
					]
				},
				"ride_shield": {
					"animations": [
				      {
				          "shield_no_back": "query.get_equipped_item_name('off_hand') == 'shield'"
				      },
				      "lance_riding_pose",
					  "lance_no_back"
					],
					"transitions": [
						{
							"default": "!variable.lance"
						},
						{
							"lance": "variable.lance && !v.shield_off"
						},
						{
							"lance_shield": "!query.is_riding"
						}
					]
				},
				"attack": {
					"animations": [
					  "shield_no_back",
					  "lance_no_back"
					],
					"transitions": [
						{
							"lance": "query.all_animations_finished"
						}
					],
					"blend_transition": 0.1
				},
				"attack_ride": {
					"animations": [
					  "shield_no_back",
					  "lance_no_back"
					],
					"transitions": [
						{
							"ride": "query.all_animations_finished"
						}
					]
				}
			}
		}
	}
}