{
	"format_version": "1.10.0",
	"animation_controllers": {
		"controller.animation.spear.attack": {
			"states": {
				"default": {
					"transitions": [
						{
							"unsheathe": "variable.spear"
						},
						{
							"undefault": "!query.is_item_name_any('slot.hotbar',0,'pixel:wooden_spear') && !query.is_item_name_any('slot.hotbar',0,'pixel:stone_spear') && !query.is_item_name_any('slot.hotbar',0,'pixel:iron_spear') && !query.is_item_name_any('slot.hotbar',0,'pixel:golden_spear') && !query.is_item_name_any('slot.hotbar',0,'pixel:diamond_spear') && !query.is_item_name_any('slot.hotbar',0,'pixel:netherite_spear')"
						}
					]
				},
				"undefault": {
					"transitions": [
						{
							"spear": "variable.spear"
						},
						{
							"default": "query.is_item_name_any('slot.hotbar',0,'pixel:wooden_spear')||query.is_item_name_any('slot.hotbar',0,'pixel:stone_spear')||query.is_item_name_any('slot.hotbar',0,'pixel:iron_spear')||query.is_item_name_any('slot.hotbar',0,'pixel:golden_spear')||query.is_item_name_any('slot.hotbar',0,'pixel:diamond_spear')||query.is_item_name_any('slot.hotbar',0,'pixel:netherite_spear')"
						}
					]
				},
				"unsheathe": {
					"animations": [
					  "spear_fast_unsheathe"
					],
					"transitions": [
						{
							"spear": "query.all_animations_finished"
						},
						{
							"default": "!variable.spear"
						}
					]
				},
				"spear": {
					"animations": [
				"spear_fast_base_pose",
					  "spear_no_back"
					],
					"transitions": [
						{
							"attack": "variable.attack_time>0 && query.get_equipped_item_name('off_hand') != 'shield'"
						},
						{
							"default": "!variable.spear"
						},
						{
							"ride": "query.is_riding"
						},
						{
							"move": "query.is_moving"
						},
						{
							"sprint": "query.is_sprinting"
						},
						{
							"jump": "query.is_jumping"
						},
						{
							"sneak": "query.is_sneaking"
						},
						{
							"fall": "!query.is_jumping && !query.is_on_ground"
						},
						{
							"shield": "query.get_equipped_item_name('off_hand') == 'shield'"
						}
					]
				},
				"ride": {
					"animations": [
				"spear_fast_riding_pose",
					  "spear_no_back"
					],
					"transitions": [
						{
							"default": "!variable.spear"
						},
						{
							"spear": "!query.is_riding && !v.shield_off"
						},
						{
							"shield": "!query.is_riding && v.shield_off"
						}
					]
				},
				"move": {
					"animations": [
				        "spear_fast_move",
					  "spear_no_back"
					],
					"transitions": [
						{
							"moving_attack": "variable.attack_time>0 && query.get_equipped_item_name('off_hand') != 'shield'"
						},
						{
							"default": "!variable.spear"
						},
						{
							"ride": "query.is_riding"
						},
						{
							"spear": "!query.is_moving"
						},
						{
							"jump": "query.is_jumping"
						},
						{
							"sneak": "query.is_sneaking"
						},
						{
							"fall": "!query.is_jumping && !query.is_on_ground"
						},
						{
							"shield": "query.get_equipped_item_name('off_hand') == 'shield'"
						}
					]
				},
				"sprint": {
					"animations": [
				    "spear_fast_sprint",
					  "spear_no_back"
					],
					"transitions": [
						{
							"attack": "variable.attack_time>0 && query.get_equipped_item_name('off_hand') != 'shield'"
						},
						{
							"default": "!variable.spear"
						},
						{
							"ride": "query.is_riding"
						},
						{
							"move": "query.is_moving && !query.is_sprinting"
						},
						{
							"jump": "query.is_jumping"
						},
						{
							"sneak": "query.is_sneaking"
						},
						{
							"fall": "!query.is_jumping && !query.is_on_ground"
						},
						{
							"shield": "query.get_equipped_item_name('off_hand') == 'shield'"
						}
					]
				},
				"spear1": {
					"animations": [
				"spear_fast_base_pose",
					  "spear_no_back"
					],
					"transitions": [
						{
							"attack_1": "variable.attack_time>0 && query.get_equipped_item_name('off_hand') != 'shield'"
						},
						{
							"default": "!variable.spear"
						},
						{
							"ride": "query.is_riding"
						},
						{
							"move1": "query.is_moving"
						},
						{
							"sprint": "query.is_sprinting"
						},
						{
							"jump": "query.is_jumping"
						},
						{
							"sneak": "query.is_sneaking"
						},
						{
							"fall": "!query.is_jumping && !query.is_on_ground"
						},
						{
							"shield": "query.get_equipped_item_name('off_hand') == 'shield'"
						}
					]
				},
				"move1": {
					"animations": [
				        "spear_fast_move",
					  "spear_no_back"
					],
					"transitions": [
						{
							"moving_attack_1": "variable.attack_time>0 && query.get_equipped_item_name('off_hand') != 'shield'"
						},
						{
							"default": "!variable.spear"
						},
						{
							"ride": "query.is_riding"
						},
						{
							"spear1": "!query.is_moving"
						},
						{
							"jump": "query.is_jumping"
						},
						{
							"sneak": "query.is_sneaking"
						},
						{
							"fall": "!query.is_jumping && !query.is_on_ground"
						},
						{
							"shield": "query.get_equipped_item_name('off_hand') == 'shield'"
						}
					]
				},
				"spear2": {
					"animations": [
				"spear_fast_base_pose",
					  "spear_no_back"
					],
					"transitions": [
						{
							"attack_2": "variable.attack_time>0 && query.get_equipped_item_name('off_hand') != 'shield'"
						},
						{
							"default": "!variable.spear"
						},
						{
							"ride": "query.is_riding"
						},
						{
							"move2": "query.is_moving"
						},
						{
							"sprint": "query.is_sprinting"
						},
						{
							"jump": "query.is_jumping"
						},
						{
							"sneak": "query.is_sneaking"
						},
						{
							"fall": "!query.is_jumping && !query.is_on_ground"
						},
						{
							"shield": "query.get_equipped_item_name('off_hand') == 'shield'"
						}
					]
				},
				"move2": {
					"animations": [
				        "spear_fast_move",
					  "spear_no_back"
					],
					"transitions": [
						{
							"moving_attack_2": "variable.attack_time>0 && query.get_equipped_item_name('off_hand') != 'shield'"
						},
						{
							"default": "!variable.spear"
						},
						{
							"spear2": "!query.is_moving"
						},
						{
							"jump": "query.is_jumping"
						},
						{
							"sneak": "query.is_sneaking"
						},
						{
							"fall": "!query.is_jumping && !query.is_on_ground"
						},
						{
							"shield": "query.get_equipped_item_name('off_hand') == 'shield'"
						}
					]
				},
				"sneak": {
					"animations": [
					  {
				        "spear_fast_sneak": "!query.is_moving"
					  },
					  {
				        "spear_fast_sneak_move": "query.is_moving"
					  },
					  "spear_no_back"
					],
					"transitions": [
						{
							"sneak_attack": "variable.attack_time>0 && query.get_equipped_item_name('off_hand') != 'shield'"
						},
						{
							"default": "!variable.spear"
						},
						{
							"ride": "query.is_riding"
						},
						{
							"spear": "!query.is_sneaking"
						},
						{
							"jump": "query.is_jumping"
						},
						{
							"fall": "!query.is_jumping && !query.is_on_ground"
						},
						{
							"shield": "query.get_equipped_item_name('off_hand') == 'shield'"
						}
					]
				},
				"jump": {
					"animations": [
					  "sword_jump",
					  "spear_no_back"
					],
					"transitions": [
						{
							"jump_attack": "variable.attack_time>0 && query.get_equipped_item_name('off_hand') != 'shield'"
						},
						{
							"ride": "query.is_riding"
						},
						{
							"default": "!variable.spear"
						},
						{
							"land": "query.is_on_ground"
						},
						{
							"fall": "!query.is_on_ground && query.all_animations_finished"
						},
						{
							"shield": "query.get_equipped_item_name('off_hand') == 'shield'"
						}
					]
				},
				"fall": {
					"animations": [
					  "spear_fast_fall",
					  "spear_no_back"
					],
					"transitions": [
						{
							"jump_attack": "variable.attack_time>0 && query.get_equipped_item_name('off_hand') != 'shield'"
						},
						{
							"ride": "query.is_riding"
						},
						{
							"default": "!variable.spear"
						},
						{
							"fall_loop": "query.all_animations_finished"
						},
						{
							"land": "query.is_on_ground"
						},
						{
							"shield": "query.get_equipped_item_name('off_hand') == 'shield'"
						}
					]
				},
				"land": {
					"animations": [
					  "spear_fast_land",
					  "spear_no_back"
					],
					"transitions": [
						{
							"default": "!variable.spear"
						},
						{
							"ride": "query.is_riding"
						},
						{
							"spear": "query.is_on_ground && query.all_animations_finished"
						},
						{
							"jump": "query.is_jumping"
						},
						{
							"shield": "query.get_equipped_item_name('off_hand') == 'shield'"
						}
					]
				},
				"fall_loop": {
					"animations": [
					  "spear_fast_fall",
					  "spear_no_back"
					],
					"transitions": [
						{
							"jump_attack": "variable.attack_time>0 && query.get_equipped_item_name('off_hand') != 'shield'"
						},
						{
							"default": "!variable.spear"
						},
						{
							"ride": "query.is_riding"
						},
						{
							"land_full": "query.is_on_ground"
						},
						{
							"shield": "query.get_equipped_item_name('off_hand') == 'shield'"
						}
					]
				},
				"land_full": {
					"animations": [
					  "spear_fast_land",
					  "spear_no_back"
					],
					"transitions": [
						{
							"default": "!variable.spear"
						},
						{
							"spear": "query.is_on_ground && query.all_animations_finished"
						},
						{
							"ride": "query.is_riding"
						},
						{
							"jump": "query.is_jumping"
						},
						{
							"shield": "query.get_equipped_item_name('off_hand') == 'shield'"
						}
					]
				},
				"shield": {
				  "animations": [
					  {
				        "spear_shield_base_pose": "query.get_equipped_item_name('off_hand') == 'shield' && !query.is_moving"
					  },
				      {
				          "shield_no_back": "query.get_equipped_item_name('off_hand') == 'shield'"
				      },
					  {
				        "spear_shield_move": "query.get_equipped_item_name('off_hand') == 'shield' && query.is_moving && !q.is_sprinting"
					  },
					  {
				        "spear_shield_sprint": "query.get_equipped_item_name('off_hand') == 'shield' && query.is_moving && q.is_sprinting"
					  },
					  {
				        "spear_sneak": "!query.is_moving && query.is_sneaking"
					  },
					  {
				        "spear_shield_sneak_move": "query.is_moving && query.is_sneaking"
					  },
					  "spear_no_back"
					],
					"transitions": [
						{
							"attack_shield": "variable.attack_time>0 && !query.is_using_item"
						},
						{
							"ride": "query.is_riding"
						},
						{
							"default": "!variable.spear"
						},
						{
							"spear": "query.get_equipped_item_name('off_hand') != 'shield'"
						}
					]
				},
				"jump_attack": {
					"animations": [
				        "spear_fast_attack_short",
                      "shield_no_back",
					  "spear_no_back"
					],
					"transitions": [
						{
							"land": "query.all_animations_finished"
						},
						{
							"default": "!variable.spear"
						}
					],
					"blend_transition": 0.1
				},
				"sneak_attack": {
					"animations": [
				        "spear_fast_sneak_attack",
                      "shield_no_back",
					  "spear_no_back"
					],
					"transitions": [
						{
							"sneak": "query.all_animations_finished"
						},
						{
							"default": "!variable.spear"
						}
					]
				},
				"sprint_attack": {
					"animations": [
				        "spear_fast_moving_attack_long",
				      "spear_fast_attacking_sprint",
                      "shield_no_back",
					  "spear_no_back"
					],
					"transitions": [
						{
							"sprint": "query.all_animations_finished"
						},
						{
							"default": "!variable.spear"
						}
					]
				},
				"attack": {
					"animations": [
				        "spear_fast_attack_short",
                      "shield_no_back",
					  "spear_no_back"
					],
					"transitions": [
						{
							"spear1": "query.all_animations_finished"
						},
						{
							"default": "!variable.spear"
						}
					]
				},
				"attack_1": {
					"animations": [
				        "spear_fast_attack_slash",
                      "shield_no_back",
					  "spear_no_back"
					],
					"transitions": [
						{
							"spear2": "query.all_animations_finished"
						},
						{
							"default": "!variable.spear"
						}
					]
				},
				"attack_2": {
					"animations": [
				        "spear_fast_attack_long",
                      "shield_no_back",
					  "spear_no_back"
					],
					"transitions": [
						{
							"spear": "query.all_animations_finished"
						},
						{
							"default": "!variable.spear"
						}
					]
				},
				"moving_attack": {
					"animations": [
				        "spear_fast_moving_attack_short",
				      "spear_fast_attacking_move",
                      "shield_no_back",
					  "spear_no_back"
					],
					"transitions": [
						{
							"move1": "query.all_animations_finished"
						},
						{
							"default": "!variable.spear"
						}
					]
				},
				"moving_attack_1": {
					"animations": [
				        "spear_fast_moving_attack_slash",
				      "spear_fast_attacking_move",
                      "shield_no_back",
					  "spear_no_back"
					],
					"transitions": [
						{
							"move2": "query.all_animations_finished"
						},
						{
							"default": "!variable.spear"
						}
					]
				},
				"moving_attack_2": {
					"animations": [
				        "spear_fast_moving_attack_long",
				      "spear_fast_attacking_move",
                      "shield_no_back",
					  "spear_no_back"
					],
					"transitions": [
						{
							"move": "query.all_animations_finished"
						},
						{
							"default": "!variable.spear"
						}
					]
				},
				"attack_slash": {
					"animations": [
				        "spear_slash0",
                      "shield_no_back",
					  "spear_no_back"
					],
					"transitions": [
						{
							"attack_slash_1": "query.all_animations_finished"
						},
						{
							"default": "!variable.spear"
						}
					]
				},
				"attack_slash_1": {
					"animations": [
				        "spear_slash1",
                      "shield_no_back",
					  "spear_no_back"
					],
					"transitions": [
						{
							"spear": "query.all_animations_finished"
						}
					]
				},
				"attack_shield": {
					"animations": [
				        "spear_attack_shield0",
                      "shield_no_back",
					  "spear_no_back"
					],
					"transitions": [
						{
							"spear": "query.all_animations_finished"
						},
						{
							"default": "!variable.spear"
						}
					]
				},
				"attack_shield_1": {
					"animations": [
				        "spear_attack_shield1",
                      "shield_no_back",
					  "spear_no_back"
					],
					"transitions": [
						{
							"spear": "query.all_animations_finished"
						},
						{
							"default": "!variable.spear"
						}
					]
				}
			}
		}
	}
}