{
	"format_version": "1.19.10",
	"animation_controllers": {
		"controller.animation.player.morph_select": {
			"initial_state": "default",
			"states": {
				"default": {
					"transitions": [
						{ "morph_beast": "v.morph_beast" },
						{ "morph_charger": "v.morph_charger" },
						{ "morph_chef": "v.morph_chef" },
						{ "morph_chiller": "v.morph_chiller" },
						{ "morph_gardener": "v.morph_gardener" },
						{ "morph_hydro": "v.morph_hydro" },
						{ "morph_lord": "v.morph_lord" },
						{ "morph_mystic": "v.morph_mystic" },
						{ "morph_scorcher": "v.morph_scorcher" },
						{ "morph_scourge": "v.morph_scourge" },
						{ "morph_troll": "v.morph_troll" },
						{ "morph_vanilla": "v.morph_vanilla" },
						{ "morph_wraith": "v.morph_wraith" }
					]
				},
				"morph_beast": {
					"animations": [
						{ "ctrl.morph_beast.first_person": "v.is_first_person" },
						{ "ctrl.morph_beast.third_person": "!v.is_first_person" },
						{ "ctrl.morph_beast.third_person.ability": "!v.is_first_person" },
						{ "beast.third_person.look_at": "!v.is_first_person" }
					],
					"transitions": [
						{ "default": "!v.morph_beast" },
						// { "morph_beast": "v.morph_beast" },
						{ "morph_charger": "v.morph_charger" },
						{ "morph_chef": "v.morph_chef" },
						{ "morph_chiller": "v.morph_chiller" },
						{ "morph_gardener": "v.morph_gardener" },
						{ "morph_hydro": "v.morph_hydro" },
						{ "morph_lord": "v.morph_lord" },
						{ "morph_mystic": "v.morph_mystic" },
						{ "morph_scorcher": "v.morph_scorcher" },
						{ "morph_scourge": "v.morph_scourge" },
						{ "morph_troll": "v.morph_troll" },
						{ "morph_vanilla": "v.morph_vanilla" },
						{ "morph_wraith": "v.morph_wraith" }
					]
				},
				"morph_charger": {
					"animations": [
						{ "ctrl.morph_charger.first_person": "v.is_first_person" },
						{ "ctrl.morph_charger.third_person": "!v.is_first_person" },
						{ "ctrl.morph_charger.third_person.ability": "!v.is_first_person" },
						{ "common_look_at": "!v.is_first_person" }
					],
					"transitions": [
						{ "default": "!v.morph_charger" },
						{ "morph_beast": "v.morph_beast" },
						// { "morph_charger": "v.morph_charger" },
						{ "morph_chef": "v.morph_chef" },
						{ "morph_chiller": "v.morph_chiller" },
						{ "morph_gardener": "v.morph_gardener" },
						{ "morph_hydro": "v.morph_hydro" },
						{ "morph_lord": "v.morph_lord" },
						{ "morph_mystic": "v.morph_mystic" },
						{ "morph_scorcher": "v.morph_scorcher" },
						{ "morph_scourge": "v.morph_scourge" },
						{ "morph_troll": "v.morph_troll" },
						{ "morph_vanilla": "v.morph_vanilla" },
						{ "morph_wraith": "v.morph_wraith" }
					]
				},
				"morph_chef": {
					"animations": [
						{ "ctrl.morph_chef.first_person": "v.is_first_person" },
						{ "ctrl.morph_chef.third_person": "!v.is_first_person" },
						{ "ctrl.morph_chef.third_person.ability": "!v.is_first_person" },
						{ "common_look_at": "!v.is_first_person && !q.is_using_item" },
						{ "chef.third_person.look_at_target": "!v.is_first_person && q.is_using_item" }
					],
					"transitions": [
						{ "default": "!v.morph_chef" },
						{ "morph_beast": "v.morph_beast" },
						{ "morph_charger": "v.morph_charger" },
						// { "morph_chef": "v.morph_chef" },
						{ "morph_chiller": "v.morph_chiller" },
						{ "morph_gardener": "v.morph_gardener" },
						{ "morph_hydro": "v.morph_hydro" },
						{ "morph_lord": "v.morph_lord" },
						{ "morph_mystic": "v.morph_mystic" },
						{ "morph_scorcher": "v.morph_scorcher" },
						{ "morph_scourge": "v.morph_scourge" },
						{ "morph_troll": "v.morph_troll" },
						{ "morph_vanilla": "v.morph_vanilla" },
						{ "morph_wraith": "v.morph_wraith" }
					]
				},
				"morph_chiller": {
					"animations": [
						{ "chiller.third_person.snow": "!v.is_first_person" },

						{ "ctrl.morph_chiller.first_person": "v.is_first_person" },
						{ "ctrl.morph_chiller.third_person": "!v.is_first_person" },
						{ "ctrl.morph_chiller.third_person.ability": "!v.is_first_person" },
						{ "common_look_at": "!v.is_first_person" }
					],
					"transitions": [
						{ "default": "!v.morph_chiller" },
						{ "morph_beast": "v.morph_beast" },
						{ "morph_charger": "v.morph_charger" },
						{ "morph_chef": "v.morph_chef" },
						// { "morph_chiller": "v.morph_chiller" },
						{ "morph_gardener": "v.morph_gardener" },
						{ "morph_hydro": "v.morph_hydro" },
						{ "morph_lord": "v.morph_lord" },
						{ "morph_mystic": "v.morph_mystic" },
						{ "morph_scorcher": "v.morph_scorcher" },
						{ "morph_scourge": "v.morph_scourge" },
						{ "morph_troll": "v.morph_troll" },
						{ "morph_vanilla": "v.morph_vanilla" },
						{ "morph_wraith": "v.morph_wraith" }
					]
				},
				"morph_gardener": {
					"animations": [
						{ "ctrl.morph_gardener.first_person": "v.is_first_person" },
						{ "ctrl.morph_gardener.third_person": "!v.is_first_person" },
						{ "ctrl.morph_gardener.third_person.ability": "!v.is_first_person" },
						{ "common_look_at": "!v.is_first_person" }
					],
					"transitions": [
						{ "default": "!v.morph_gardener" },
						{ "morph_beast": "v.morph_beast" },
						{ "morph_charger": "v.morph_charger" },
						{ "morph_chef": "v.morph_chef" },
						{ "morph_chiller": "v.morph_chiller" },
						// { "morph_gardener": "v.morph_gardener" },
						{ "morph_hydro": "v.morph_hydro" },
						{ "morph_lord": "v.morph_lord" },
						{ "morph_mystic": "v.morph_mystic" },
						{ "morph_scorcher": "v.morph_scorcher" },
						{ "morph_scourge": "v.morph_scourge" },
						{ "morph_troll": "v.morph_troll" },
						{ "morph_vanilla": "v.morph_vanilla" },
						{ "morph_wraith": "v.morph_wraith" }
					]
				},
				"morph_hydro": {
					"animations": [
						{ "ctrl.morph_hydro.first_person": "v.is_first_person" },
						{ "ctrl.morph_hydro.third_person": "!v.is_first_person" },
						{ "ctrl.morph_hydro.third_person.ability": "!v.is_first_person" },
						{ "common_look_at": "!v.is_first_person" },
						{ "hydro.third_person.fish_rotation": "!v.is_first_person" }
					],
					"transitions": [
						{ "default": "!v.morph_hydro" },
						{ "morph_beast": "v.morph_beast" },
						{ "morph_charger": "v.morph_charger" },
						{ "morph_chef": "v.morph_chef" },
						{ "morph_chiller": "v.morph_chiller" },
						{ "morph_gardener": "v.morph_gardener" },
						// { "morph_hydro": "v.morph_hydro" },
						{ "morph_lord": "v.morph_lord" },
						{ "morph_mystic": "v.morph_mystic" },
						{ "morph_scorcher": "v.morph_scorcher" },
						{ "morph_scourge": "v.morph_scourge" },
						{ "morph_troll": "v.morph_troll" },
						{ "morph_vanilla": "v.morph_vanilla" },
						{ "morph_wraith": "v.morph_wraith" }
					]
				},
				"morph_lord": {
					"animations": [
						"particles",
						"lord_blink",
						{ "ctrl.morph_lord.first_person": "v.is_first_person" },
						{ "ctrl.morph_lord.third_person": "!v.is_first_person" },
						{ "ctrl.morph_lord.third_person.ability": "!v.is_first_person" },
						{ "common_look_at": "!v.is_first_person && !q.is_using_item" },
						{ "lord_look_at": "!v.is_first_person && q.is_using_item" },
						"lord_beam_align",
						"ctrl.lord_beam"
					],
					"transitions": [
						{ "default": "!v.morph_lord" },
						{ "morph_beast": "v.morph_beast" },
						{ "morph_charger": "v.morph_charger" },
						{ "morph_chef": "v.morph_chef" },
						{ "morph_chiller": "v.morph_chiller" },
						{ "morph_gardener": "v.morph_gardener" },
						{ "morph_hydro": "v.morph_hydro" },
						// { "morph_lord": "v.morph_lord" },
						{ "morph_mystic": "v.morph_mystic" },
						{ "morph_scorcher": "v.morph_scorcher" },
						{ "morph_scourge": "v.morph_scourge" },
						{ "morph_troll": "v.morph_troll" },
						{ "morph_vanilla": "v.morph_vanilla" },
						{ "morph_wraith": "v.morph_wraith" }
					]
				},
				"morph_mystic": {
					"animations": [
						{ "ctrl.morph_mystic.first_person": "v.is_first_person" },
						// { "ctrl.morph_mystic.third_person": "!v.is_first_person" },
						{ "ctrl.morph_mystic.third_person.ability": "!v.is_first_person" },
						{ "common_look_at": "!v.is_first_person" },
						"mystic_beam_align",
						"ctrl.mystic_beam",
						{ "mystic.third_person.rings": "!v.is_first_person" }
					],
					"transitions": [
						{ "default": "!v.morph_mystic" },
						{ "morph_beast": "v.morph_beast" },
						{ "morph_charger": "v.morph_charger" },
						{ "morph_chef": "v.morph_chef" },
						{ "morph_chiller": "v.morph_chiller" },
						{ "morph_gardener": "v.morph_gardener" },
						{ "morph_hydro": "v.morph_hydro" },
						{ "morph_lord": "v.morph_lord" },
						// { "morph_mystic": "v.morph_mystic" },
						{ "morph_scorcher": "v.morph_scorcher" },
						{ "morph_scourge": "v.morph_scourge" },
						{ "morph_troll": "v.morph_troll" },
						{ "morph_vanilla": "v.morph_vanilla" },
						{ "morph_wraith": "v.morph_wraith" }
					]
				},
				"morph_scorcher": {
					"animations": [
						{ "ctrl.morph_scorcher.first_person": "v.is_first_person" },
						{ "ctrl.morph_scorcher.third_person": "!v.is_first_person" },
						{ "ctrl.morph_scorcher.third_person.ability": "!v.is_first_person" },
						{ "common_look_at": "!v.is_first_person" },
						{ "scorcher.third_person.smoke": "!v.is_first_person" },
						{ "scorcher.third_person.flame":"!v.is_first_person" } // check this - was in both fp and tp
					],
					"transitions": [
						{ "default": "!v.morph_scorcher" },
						{ "morph_beast": "v.morph_beast" },
						{ "morph_charger": "v.morph_charger" },
						{ "morph_chef": "v.morph_chef" },
						{ "morph_chiller": "v.morph_chiller" },
						{ "morph_gardener": "v.morph_gardener" },
						{ "morph_hydro": "v.morph_hydro" },
						{ "morph_lord": "v.morph_lord" },
						{ "morph_mystic": "v.morph_mystic" },
						// { "morph_scorcher": "v.morph_scorcher" },
						{ "morph_scourge": "v.morph_scourge" },
						{ "morph_troll": "v.morph_troll" },
						{ "morph_vanilla": "v.morph_vanilla" },
						{ "morph_wraith": "v.morph_wraith" }
					]
				},
				"morph_scourge": {
					"animations": [
						{ "scourge_flames": "q.property('ldz:monster_nearby')"},
						{ "ctrl.morph_scourge.first_person": "v.is_first_person" },
						{ "ctrl.morph_scourge.third_person": "!v.is_first_person" },
						{ "ctrl.morph_scourge.third_person.ability": "!v.is_first_person" },
						{ "common_look_at": "!v.is_first_person" }
					],
					"transitions": [
						{ "default": "!v.morph_scourge" },
						{ "morph_beast": "v.morph_beast" },
						{ "morph_charger": "v.morph_charger" },
						{ "morph_chef": "v.morph_chef" },
						{ "morph_chiller": "v.morph_chiller" },
						{ "morph_gardener": "v.morph_gardener" },
						{ "morph_hydro": "v.morph_hydro" },
						{ "morph_lord": "v.morph_lord" },
						{ "morph_mystic": "v.morph_mystic" },
						{ "morph_scorcher": "v.morph_scorcher" },
						// { "morph_scourge": "v.morph_scourge" },
						{ "morph_troll": "v.morph_troll" },
						{ "morph_vanilla": "v.morph_vanilla" },
						{ "morph_wraith": "v.morph_wraith" }
					]
				},
				"morph_troll": {
					"animations": [
						{ "ctrl.morph_troll.first_person": "v.is_first_person" },
						{ "ctrl.morph_troll.third_person": "!v.is_first_person" },
						//{ "ctrl.morph_troll.third_person.ability": "!v.is_first_person" },
						{ "troll.third_person.look_at": "!v.is_first_person" },
						{ "troll.third_person.spikes": "!v.is_first_person" }
					],
					"transitions": [
						{ "default": "!v.morph_troll" },
						{ "morph_beast": "v.morph_beast" },
						{ "morph_charger": "v.morph_charger" },
						{ "morph_chef": "v.morph_chef" },
						{ "morph_chiller": "v.morph_chiller" },
						{ "morph_gardener": "v.morph_gardener" },
						{ "morph_hydro": "v.morph_hydro" },
						{ "morph_lord": "v.morph_lord" },
						{ "morph_mystic": "v.morph_mystic" },
						{ "morph_scorcher": "v.morph_scorcher" },
						{ "morph_scourge": "v.morph_scourge" },
						// { "morph_troll": "v.morph_troll" },
						{ "morph_vanilla": "v.morph_vanilla" },
						{ "morph_wraith": "v.morph_wraith" }
					]
				},
				"morph_vanilla": {
					"animations": [
						{ "ctrl.morph_vanilla.first_person": "v.is_first_person" },
						{ "ctrl.morph_vanilla.third_person": "!v.is_first_person" },
						{ "ctrl.morph_vanilla.third_person.ability": "!v.is_first_person" },
						{ "vanilla.third_person.scary_face": "!v.is_first_person && q.property('ldz:monster_nearby')" },
						{ "common_look_at": "!v.is_first_person" },
				
						"vanilla.particle"
					],
					"transitions": [
						{ "default": "!v.morph_vanilla" },
						{ "morph_beast": "v.morph_beast" },
						{ "morph_charger": "v.morph_charger" },
						{ "morph_chef": "v.morph_chef" },
						{ "morph_chiller": "v.morph_chiller" },
						{ "morph_gardener": "v.morph_gardener" },
						{ "morph_hydro": "v.morph_hydro" },
						{ "morph_lord": "v.morph_lord" },
						{ "morph_mystic": "v.morph_mystic" },
						{ "morph_scorcher": "v.morph_scorcher" },
						{ "morph_scourge": "v.morph_scourge" },
						{ "morph_troll": "v.morph_troll" },
						// { "morph_vanilla": "v.morph_vanilla" },
						{ "morph_wraith": "v.morph_wraith" }
					]
				},
				"morph_wraith": {
					"animations": [
						{ "ctrl.morph_wraith.first_person": "v.is_first_person" },
						{ "ctrl.morph_wraith.third_person": "!v.is_first_person" },
						{ "ctrl.morph_wraith.third_person.ability": "!v.is_first_person" },
						{ "common_look_at": "!v.is_first_person" }
					],
					"transitions": [
						{ "default": "!v.morph_wraith" },
						{ "morph_beast": "v.morph_beast" },
						{ "morph_charger": "v.morph_charger" },
						{ "morph_chef": "v.morph_chef" },
						{ "morph_chiller": "v.morph_chiller" },
						{ "morph_gardener": "v.morph_gardener" },
						{ "morph_hydro": "v.morph_hydro" },
						{ "morph_lord": "v.morph_lord" },
						{ "morph_mystic": "v.morph_mystic" },
						{ "morph_scorcher": "v.morph_scorcher" },
						{ "morph_scourge": "v.morph_scourge" },
						{ "morph_troll": "v.morph_troll" },
						{ "morph_vanilla": "v.morph_vanilla" }
						// { "morph_wraith": "v.morph_wraith" }
					]
				}
			}
		},
		// BEAST CONTROLLERS
		"controller.animation.player.morph_beast.first_person": {
			"initial_state": "default",
			"states": {
				"default": {
					"animations": [
						"beast.first_person.idle",
						"beast.hide_smear"
					],
					"transitions": [
						{ "use": 	"!q.property('ldz:cancel_activated') && !q.property('ldz:morph_attack') && q.property('ldz:morph_use')" },
						{ "attack": "!q.property('ldz:cancel_activated') && q.property('ldz:morph_attack') && !q.property('ldz:morph_use')" },
						{ "ability_fail": "q.property('ldz:cancel_activated')" }
					],
					"blend_transition": 0.1,
					"blend_via_shortest_path": true
				},
				"use": {
					"animations": [
						{ "beast.first_person.ability_1": "q.property('ldz:melee_side') == 1" },
						{ "beast.first_person.ability_2": "q.property('ldz:melee_side') == 2" }
					],
					"transitions": [
						{ "default": "q.any_animation_finished && !q.property('ldz:morph_use')" }
					],
					"blend_transition": 0.3,
					"blend_via_shortest_path": true
				},
				"attack": {
					"animations": [
						"beast.first_person.attack"
					],
					"transitions": [
						{ "default": "q.all_animations_finished && !q.property('ldz:morph_attack')" }
					],
					"blend_transition": 0.3,
					"blend_via_shortest_path": true
				},
				"ability_fail": {
					"animations": [
						"beast.first_person.ability_fail"
					],
					"transitions": [
						{ "default": "q.all_animations_finished && !q.property('ldz:cancel_activated')" }
					],
					"blend_transition": 0.3,
					"blend_via_shortest_path": true
				}
			}
		},
		"controller.animation.player.morph_beast.third_person": {
			"initial_state": "default",
			"states": {
				"default": {
					"animations": [
						"beast.third_person.idle"
					],
					"transitions": [
						{ "walk": "q.modified_move_speed > 0.2" }
					],
					"blend_transition": 0.2
				},
				"walk": {
					"animations": [
						"beast.third_person.walk"
					],
					"transitions": [
						{ "default": "q.modified_move_speed <= 0.2" }
					],
					"blend_transition": 0.2
				}
			}
		},
		"controller.animation.player.morph_beast.third_person.ability": {
			"initial_state": "default",
			"states": {
				"default": {
					"animations": [
						"beast.hide_smear"
					],
					"transitions": [
						{ "use": 	"!q.property('ldz:cancel_activated') && !q.property('ldz:morph_attack') && q.property('ldz:morph_use')" },
						{ "attack": "!q.property('ldz:cancel_activated') && q.property('ldz:morph_attack') && !q.property('ldz:morph_use')" },
						{ "ability_fail": "q.property('ldz:cancel_activated')" }
					]
				},
				"use": {
					"animations": [
						{ "beast.third_person.ability_1": "q.property('ldz:melee_side') == 1" },
						{ "beast.third_person.ability_2": "q.property('ldz:melee_side') == 2" }
					],
					"transitions": [
						{ "default": "q.any_animation_finished && !q.property('ldz:morph_use')" }
					],
					"blend_transition": 0.2
				},
				"attack": {
					"animations": [
						"beast.third_person.attack"
					],
					"transitions": [
						{ "default": "q.all_animations_finished && !q.property('ldz:morph_attack')" }
					],
					"blend_transition": 0.2
				},
				"ability_fail": {
					"animations": [
						"beast.third_person.ability_fail"
					],
					"transitions": [
						{ "default": "q.all_animations_finished && !q.property('ldz:cancel_activated')" }
					],
					"blend_transition": 0.2
				}
			}
		},
		// CHARGER CONTROLLERS
		"controller.animation.player.morph_charger.first_person": {
			"initial_state": "default",
			"states": {
				"default": {
					"animations": [
						"charger.first_person.idle"
					],
					"transitions": [
						{ "use": 	"!q.property('ldz:cancel_activated') && q.property('ldz:charger_active')" },
						{ "attack": "!q.property('ldz:cancel_activated') && q.property('ldz:morph_attack') && !q.property('ldz:morph_use')" },
						{ "ability_fail": "q.property('ldz:cancel_activated')" }
					],
					"blend_transition": 0.1,
					"blend_via_shortest_path": true
				},
				"use": {
					"animations": [
						"charger.first_person.ability"
					],
					"transitions": [
						{ "default": "!q.property('ldz:charger_active')" }
					],
					"blend_transition": 0.2,
					"blend_via_shortest_path": true
				},
				"attack": {
					"animations": [
						"charger.first_person.attack"
					],
					"transitions": [
						{ "default": "q.all_animations_finished && !q.property('ldz:morph_attack')" }
					],
					"blend_transition": 0.2,
					"blend_via_shortest_path": true
				},
				"ability_fail": {
					"animations": [
						"charger.first_person.ability_fail"
					],
					"transitions": [
						{ "default": "q.all_animations_finished && !q.property('ldz:cancel_activated')" }
					],
					"blend_transition": 0.2,
					"blend_via_shortest_path": true
				}
			}
		},
		"controller.animation.player.morph_charger.third_person": {
			"initial_state": "default",
			"states": {
				"default": {
					"transitions": [
						{ "walk": "q.modified_move_speed > 0.2" }
					],
					"blend_transition": 0.2
				},
				"walk": {
					"animations": [
						"charger.third_person.walk"
					],
					"transitions": [
						{ "default": "q.modified_move_speed <= 0.2" }
					],
					"blend_transition": 0.2
				}
			}
		},
		"controller.animation.player.morph_charger.third_person.ability": {
			"initial_state": "default",
			"states": {
				"default": {
					"animations": [
						"charger.third_person.idle"
					],
					"transitions": [
						{ "pre_roll": "!q.property('ldz:cancel_activated') && q.property('ldz:charger_active')" },
						{ "attack": "!q.property('ldz:cancel_activated') && q.property('ldz:morph_attack') && !q.property('ldz:morph_use')" },
						{ "ability_fail": "q.property('ldz:cancel_activated')" }
					]
				},
				"pre_roll": {
					"animations": [
						"charger.third_person.pre_roll"
					],
					"transitions": [
						{ "default": "!q.property('ldz:charger_active')" },
						{ "sprint": "q.is_sprinting && q.all_animations_finished" },
						{ "walk": "!q.is_sprinting && q.all_animations_finished" } 
					],
					"blend_transition": 0.2
				},
				"walk": {
					"animations": [
						"charger.third_person.roll",
						{ "charger.third_person.particle": "q.is_moving" }
					],
					"transitions": [
						{ "un_roll": "!q.property('ldz:charger_active')" },
						{ "sprint": "q.is_sprinting" }
					],
					"blend_transition": 0.2,
					"blend_via_shortest_path": true
				},
				"sprint": {
					"animations": [
						"charger.third_person.roll_fast",
						{ "charger.third_person.particle_fast": "q.is_moving" }
					],
					"transitions": [
						{ "un_roll": "!q.property('ldz:charger_active')" },
						{ "walk": "!q.is_sprinting" }
					],
					"blend_transition": 0.2,
					"blend_via_shortest_path": true
				},
				"un_roll": {
					"animations": [
						"charger.third_person.unroll"
					],
					"transitions": [
						{ "default": "q.all_animations_finished || !q.property('ldz:charger_active')" }
					],
					"blend_transition": 0.2
				},
				"attack": {
					"animations": [
						"charger.third_person.attack"
					],
					"transitions": [
						{ "default": "q.all_animations_finished && !q.property('ldz:morph_attack')" }
					],
					"blend_transition": 0.2,
					"blend_via_shortest_path": true
				},
				"ability_fail": {
					"animations": [
						"charger.third_person.ability_fail"
					],
					"transitions": [
						{ "default": "q.all_animations_finished && !q.property('ldz:cancel_activated')" }
					],
					"blend_transition": 0.2,
					"blend_via_shortest_path": true
				}
			}
		},

		// CHEF CONTROLLERS
		"controller.animation.player.morph_chef.first_person": {
			"initial_state": "default",
			"states": {
				"default": {
					"animations": [
						"chef.first_person.idle"
					],
					"transitions": [
						{ "inhale":	"!q.property('ldz:cancel_activated') && !q.property('ldz:morph_attack') && q.property('ldz:morph_use') && !q.property('ldz:chef_full')" },
						{ "exhale":	"q.is_using_item && q.property('ldz:chef_full')" },
						{ "full_buffer": "q.property('ldz:chef_full')" },
						{ "attack": "!q.property('ldz:cancel_activated') && q.property('ldz:morph_attack') && !q.property('ldz:morph_use')" },
						{ "ability_fail": "q.property('ldz:cancel_activated')" }
					]
				},
				"inhale": {
					"animations": [
						"chef.first_person.ability"
					],
					"particle_effects": [
						{
							"effect": "chef_inhale",
							"locator": "suction",
							"pre_effect_script": "v.spawn_offset = 4.75; v.z_movement = -19;"
						}
					],
					"transitions": [
						{ "default": "!q.property('ldz:chef_full') && !q.property('ldz:morph_use')" },
						{ "full_buffer": "q.property('ldz:chef_full')" }
					],
					"blend_transition": 0.1
				},
				"full_buffer": {
					"transitions": [
						{ "full": "!q.is_using_item" }
					]
				},
				"full": {
					"transitions": [
						{ "default": "!q.property('ldz:chef_full')" },
						{ "exhale": "q.is_using_item" }
					],
					"blend_transition": 0.1
				},
				"exhale": {
					"animations": [
						"chef.first_person.ability_reverse"
					],
					"particle_effects": [
						{
							"effect": "chef_exhale",
							"locator": "suction",
							"pre_effect_script": "v.spawn_offset = 1; v.z_movement = 19;"
						}
					],
					"transitions": [
						{ "default": "q.all_animations_finished && !q.property('ldz:morph_use')" }
					],
					"blend_transition": 0.1
				},
				"attack": {
					"animations": [
						"chef.first_person.attack"
					],
					"transitions": [
						{ "default": "q.all_animations_finished && !q.property('ldz:morph_attack')" }
					]
				},
				"ability_fail": {
					"animations": [
						"chef.first_person.ability_fail"
					],
					"transitions": [
						{ "default": "q.all_animations_finished && !q.property('ldz:cancel_activated')" }
					]
				}
			}
		},
		"controller.animation.player.morph_chef.third_person": {
			"initial_state": "default",
			"states": {
				"default": {
					"animations": [
						"chef.third_person.idle",
						{ "chef.third_person.full": "q.property('ldz:chef_full')" }
					],
					"transitions": [
						{ "walk": "q.modified_move_speed > 0.2" }
					],
					"blend_transition": 0.2
				},
				"walk": {
					"animations": [
						"chef.third_person.walk",
						{ "chef.third_person.full": "q.property('ldz:chef_full')" }
					],
					"transitions": [
						{ "default": "q.modified_move_speed <= 0.2" }
					],
					"blend_transition": 0.2
				}
			}
		},
		"controller.animation.player.morph_chef.third_person.ability": {
			"initial_state": "default",
			"states": {
				"default": {
					"transitions": [
						{ "inhale":	"!q.property('ldz:cancel_activated') && !q.property('ldz:morph_attack') && q.property('ldz:morph_use') && !q.property('ldz:chef_full')" },
						{ "exhale":	"q.is_using_item && q.property('ldz:chef_full')" },
						{ "attack": "!q.property('ldz:cancel_activated') && q.property('ldz:morph_attack') && !q.property('ldz:morph_use')" },
						{ "ability_fail": "q.property('ldz:cancel_activated')" }
					],
					"blend_transition": 0.2
				},
				"inhale": {
					"animations": [
						"chef.third_person.ability"
					],
					"particle_effects": [
						{
							"effect": "chef_inhale",
							"locator": "suction"
						}
					],
					"transitions": [
						{ "default": "!q.property('ldz:chef_full') && !q.is_using_item" },
						{ "full": "q.property('ldz:chef_full')" }
					],
					"blend_transition": 0.2
				},
				"exhale": {
					"animations": [
						"chef.third_person.exhale"
					],
					"particle_effects": [
						{
							"effect": "chef_exhale",
							"locator": "suction"
						}
					],
					"transitions": [
						{ "full": "q.all_animations_finished" }
					],
					"blend_transition": 0.2
				},
				"full": {
					"transitions": [
						{ "default": "!q.property('ldz:morph_use')" }
					]
				},

				"attack": {
					"animations": [
						"chef.third_person.attack"
					],
					"transitions": [
						{ "default": "q.all_animations_finished && !q.property('ldz:morph_attack')" }
					]
				},
				"ability_fail": {
					"animations": [
						"chef.third_person.ability_fail"
					],
					"transitions": [
						{ "default": "q.all_animations_finished && !q.property('ldz:cancel_activated')" }
					]
				}
			}
		},

		// CHILLER CONTROLLERS
		"controller.animation.player.morph_chiller.first_person": {
			"initial_state": "default",
			"states": {
				"default": {
					"animations": [
						"chiller.first_person.idle"
					],
					"transitions": [
						{ "use": 	"!q.property('ldz:cancel_activated') && !q.property('ldz:morph_attack') && q.property('ldz:morph_use')" },
						{ "attack": "!q.property('ldz:cancel_activated') && q.property('ldz:morph_attack') && !q.property('ldz:morph_use')" },
						{ "ability_fail": "q.property('ldz:cancel_activated')" }
					],
					"blend_transition": 0.1,
					"blend_via_shortest_path": true
				},
				"use": {
					"animations": [
						"chiller.first_person.ability"
					],
					"transitions": [
						{ "default": "q.all_animations_finished && !q.property('ldz:morph_use')" }
					],
					"blend_transition": 0.1,
					"blend_via_shortest_path": true
				},
				"attack": {
					"animations": [
						"chiller.first_person.attack"
					],
					"transitions": [
						{ "default": "q.all_animations_finished && !q.property('ldz:morph_attack')" }
					],
					"blend_transition": 0.1,
					"blend_via_shortest_path": true
				},
				"ability_fail": {
					"animations": [
						"chiller.first_person.ability_fail"
					],
					"transitions": [
						{ "default": "q.all_animations_finished && !q.property('ldz:cancel_activated')" }
					],
					"blend_transition": 0.1,
					"blend_via_shortest_path": true
				}
			}
		},
		"controller.animation.player.morph_chiller.third_person": {
			"initial_state": "default",
			"states": {
				"default": {
					"transitions": [
						{ "walk": "q.modified_move_speed > 0.2" }
					],
					"blend_transition": 0.2
				},
				"walk": {
					"animations": [
						"chiller.third_person.walk"
					],
					"transitions": [
						{ "default": "q.modified_move_speed <= 0.2" }
					],
					"blend_transition": 0.2
				}
			}
		},
		"controller.animation.player.morph_chiller.third_person.ability": {
			"initial_state": "default",
			"states": {
				"default": {
					"transitions": [
						{ "use": 	"!q.property('ldz:cancel_activated') && !q.property('ldz:morph_attack') && q.property('ldz:morph_use')" },
						{ "attack": "!q.property('ldz:cancel_activated') && q.property('ldz:morph_attack') && !q.property('ldz:morph_use')" },
						{ "ability_fail": "q.property('ldz:cancel_activated')" }
					]
				},
				"use": {
					"animations": [
						"chiller.third_person.ability"
					],
					"transitions": [
						{ "default": "q.all_animations_finished && !q.property('ldz:morph_use')" }
					]
				},
				"attack": {
					"animations": [
						"chiller.third_person.attack"
					],
					"transitions": [
						{ "default": "q.all_animations_finished && !q.property('ldz:morph_attack')" }
					]
				},
				"ability_fail": {
					"animations": [
						"chiller.third_person.ability_fail"
					],
					"transitions": [
						{ "default": "q.all_animations_finished && !q.property('ldz:cancel_activated')" }
					]
				}
			}
		},

		// GARDENER CONTROLLERS
		"controller.animation.player.morph_gardener.first_person": {
			"initial_state": "default",
			"states": {
				"default": {
					"animations": [
						"gardener.first_person.idle"
					],
					"transitions": [
						{ "use": 	"!q.property('ldz:cancel_activated') && !q.property('ldz:morph_attack') && q.property('ldz:morph_use')" },
						{ "attack": "!q.property('ldz:cancel_activated') && q.property('ldz:morph_attack') && !q.property('ldz:morph_use')" },
						{ "ability_fail": "q.property('ldz:cancel_activated')" }
					],
					"blend_transition": 0.1,
					"blend_via_shortest_path": true
				},
				"use": {
					"animations": [
						"gardener.first_person.ability"
					],
					"transitions": [
						{ "default": "q.all_animations_finished && !q.property('ldz:morph_use')" }
					],
					"blend_transition": 0.1,
					"blend_via_shortest_path": true
				},
				"attack": {
					"animations": [
						"gardener.first_person.attack"
					],
					"transitions": [
						{ "default": "q.all_animations_finished && !q.property('ldz:morph_attack')" }
					],
					"blend_transition": 0.1,
					"blend_via_shortest_path": true
				},
				"ability_fail": {
					"animations": [
						"gardener.first_person.ability_fail"
					],
					"transitions": [
						{ "default": "q.all_animations_finished && !q.property('ldz:cancel_activated')" }
					],
					"blend_transition": 0.1,
					"blend_via_shortest_path": true
				}
			}
		},
		"controller.animation.player.morph_gardener.third_person": {
			"initial_state": "default",
			"states": {
				"default": {
					"transitions": [
						{ "walk": "q.modified_move_speed > 0.2" }
					],
					"blend_transition": 0.2
				},
				"walk": {
					"animations": [
						"gardener.third_person.walk"
					],
					"transitions": [
						{ "default": "q.modified_move_speed <= 0.2" }
					],
					"blend_transition": 0.2
				}
			}
		},
		"controller.animation.player.morph_gardener.third_person.ability": {
			"initial_state": "default",
			"states": {
				"default": {
					"transitions": [
						{ "use": 	"!q.property('ldz:cancel_activated') && !q.property('ldz:morph_attack') && q.property('ldz:morph_use')" },
						{ "attack": "!q.property('ldz:cancel_activated') && q.property('ldz:morph_attack') && !q.property('ldz:morph_use')" },
						{ "ability_fail": "q.property('ldz:cancel_activated')" }
					]
				},
				"use": {
					"animations": [
						"gardener.third_person.ability"
					],
					"transitions": [
						{ "default": "q.all_animations_finished && !q.property('ldz:morph_use')" }
					]
				},
				"attack": {
					"animations": [
						"gardener.third_person.attack"
					],
					"transitions": [
						{ "default": "q.all_animations_finished && !q.property('ldz:morph_attack')" }
					]
				},
				"ability_fail": {
					"animations": [
						"gardener.third_person.ability_fail"
					],
					"transitions": [
						{ "default": "q.all_animations_finished && !q.property('ldz:cancel_activated')" }
					]
				}
			}
		},
		// HYDRO CONTROLLERS
		"controller.animation.player.morph_hydro.first_person": {
			"initial_state": "default",
			"states": {
				"default": {
					"animations": [
						"hydro.first_person.idle"
					],
					"transitions": [
						{ "use": 	"!q.property('ldz:cancel_activated') && !q.property('ldz:morph_attack') && q.property('ldz:morph_use')" },
						{ "attack": "!q.property('ldz:cancel_activated') && q.property('ldz:morph_attack') && !q.property('ldz:morph_use')" },
						{ "ability_fail": "q.property('ldz:cancel_activated')" }
					],
					"blend_transition": 0.1,
					"blend_via_shortest_path": true
				},
				"use": {
					"animations": [
						"hydro.first_person.ability"
					],
					"transitions": [
						{ "default": "q.all_animations_finished && !q.is_using_item && !q.property('ldz:morph_use')" }
					],
					"blend_transition": 0.1,
					"blend_via_shortest_path": true
				},
				"attack": {
					"animations": [
						"hydro.first_person.attack"
					],
					"transitions": [
						{ "default": "q.all_animations_finished && !q.is_using_item && !q.property('ldz:morph_attack')" }
					],
					"blend_transition": 0.1,
					"blend_via_shortest_path": true
				},
				"ability_fail": {
					"animations": [
						"hydro.first_person.ability_fail"
					],
					"transitions": [
						{ "default": "q.all_animations_finished && !q.is_using_item && !q.property('ldz:cancel_activated')" }
					],
					"blend_transition": 0.1,
					"blend_via_shortest_path": true
				}
			}
		},
		"controller.animation.player.morph_hydro.third_person": {
			"initial_state": "default",
			"states": {
				"default": {
					"transitions": [
						{ "walk": "q.modified_move_speed > 0.2" }
					],
					"blend_transition": 0.2
				},
				"walk": {
					"animations": [
						"hydro.third_person.walk"
					],
					"transitions": [
						{ "default": "q.modified_move_speed <= 0.2" }
					],
					"blend_transition": 0.2
				}
			}
		},
		"controller.animation.player.morph_hydro.third_person.ability": {
			"initial_state": "default",
			"states": {
				"default": {
					"transitions": [
						{ "use": 	"!q.property('ldz:cancel_activated') && !q.property('ldz:morph_attack') && q.property('ldz:morph_use')" },
						{ "attack": "!q.property('ldz:cancel_activated') && q.property('ldz:morph_attack') && !q.property('ldz:morph_use')" },
						{ "ability_fail": "q.property('ldz:cancel_activated')" }
					]
				},
				"use": {
					"animations": [
						"hydro.third_person.ability"
					],
					"transitions": [
						{ "default": "q.all_animations_finished && !q.property('ldz:morph_use')" }
					]
				},
				"attack": {
					"animations": [
						"hydro.third_person.attack"
					],
					"transitions": [
						{ "default": "q.all_animations_finished && !q.property('ldz:morph_attack')" }
					]
				},
				"ability_fail": {
					"animations": [
						"hydro.third_person.ability_fail"
					],
					"transitions": [
						{ "default": "q.all_animations_finished && !q.property('ldz:cancel_activated')" }
					]
				}
			}
		},
		// LORD CONTROLLERS
		"controller.animation.player.morph_lord.first_person": {
			"initial_state": "default",
			"states": {
				"default": {
					"animations": [
						"lord.first_person.idle"
					],
					"transitions": [
						{ "melee_left": "q.property('ldz:melee_side') == 1 && variable.attack_time > 0 && !q.property('ldz:cancel_activated') && q.property('ldz:morph_use')" },
						{ "melee_right": "q.property('ldz:melee_side') == 2 && variable.attack_time > 0 && !q.property('ldz:cancel_activated') && q.property('ldz:morph_use')" },
						{ "summon": "q.is_sneaking && q.is_using_item && !q.property('ldz:cancel_activated') && q.property('ldz:morph_use')" },
						{ "beam": "q.property('ldz:lord_beam_state') == 'charge' && q.is_using_item && !q.is_sneaking && !q.property('ldz:cancel_activated')" },
						{ "ability_fail": "q.property('ldz:cancel_activated')" }
					],
					"blend_transition": 0.2,
					"blend_via_shortest_path": true
				},
				"melee_left": {
					"animations": [
						"lord.first_person.ability_melee_left"
					],
					"transitions": [
						{ "summon": "q.is_sneaking && q.is_using_item && !q.property('ldz:cancel_activated') && q.property('ldz:morph_use')" },
						{ "beam": "q.property('ldz:lord_beam_state') == 'charge' && q.is_using_item && !q.is_sneaking && !q.property('ldz:cancel_activated')" },
						{ "default": "q.all_animations_finished && !q.property('ldz:cancel_activated')" },
						{ "ability_fail": "q.property('ldz:cancel_activated')" }
					],
					"blend_transition": 0.2,
					"blend_via_shortest_path": true
				},
				"melee_right": {
					"animations": [
						"lord.first_person.ability_melee_right"
					],
					"transitions": [
						{ "summon": "q.is_sneaking && q.is_using_item && !q.property('ldz:cancel_activated') && q.property('ldz:morph_use')" },
						{ "beam": "q.property('ldz:lord_beam_state') == 'charge' && q.is_using_item && !q.is_sneaking && !q.property('ldz:cancel_activated')" },
						{ "default": "q.all_animations_finished && !q.property('ldz:cancel_activated')" },
						{ "ability_fail": "q.property('ldz:cancel_activated')" }
					],
					"blend_transition": 0.2,
					"blend_via_shortest_path": true
				},
				"summon": {
					"animations": [
						"lord.first_person.ability_summon"
					],
					"transitions": [
						{ "melee_left": "!q.is_using_item && q.property('ldz:melee_side') == 1 && variable.attack_time > 0 && !q.property('ldz:cancel_activated') && q.property('ldz:morph_use')" },
						{ "melee_right": "!q.is_using_item && q.property('ldz:melee_side') == 2 && variable.attack_time > 0 && !q.property('ldz:cancel_activated') && q.property('ldz:morph_use')" },
						{ "beam": "q.property('ldz:lord_beam_state') == 'charge' && q.is_using_item && !q.is_sneaking && !q.property('ldz:cancel_activated')" },
						{ "default": "q.all_animations_finished && !q.property('ldz:cancel_activated')" },
						{ "ability_fail": "q.property('ldz:cancel_activated')" }
					],
					"blend_transition": 0.2,
					"blend_via_shortest_path": true
				},
				"beam": {
					"animations": [
						"lord.first_person.ability_beam"
					],
					"transitions": [
						{ "melee_left": "!q.is_using_item && q.property('ldz:melee_side') == 1 && variable.attack_time > 0 && !q.property('ldz:cancel_activated') && q.property('ldz:morph_use')" },
						{ "melee_right": "!q.is_using_item && q.property('ldz:melee_side') == 2 && variable.attack_time > 0 && !q.property('ldz:cancel_activated') && q.property('ldz:morph_use')" },
						{ "summon": "q.is_sneaking && q.is_using_item && !q.property('ldz:cancel_activated') && q.property('ldz:morph_use')" },
						{ "default": "q.property('ldz:lord_beam_state') == 'off' || !q.is_using_item" },
						{ "ability_fail": "q.property('ldz:cancel_activated')" }
					],
					"blend_transition": 0.2,
					"blend_via_shortest_path": true
				},
				"ability_fail": {
					"animations": [
						"lord.first_person.ability_fail"
					],
					"transitions": [
						{ "default": "q.all_animations_finished && !q.property('ldz:cancel_activated')" }
					],
					"blend_transition": 0.2,
					"blend_via_shortest_path": true
				}
			}
		},
		"controller.animation.player.morph_lord.third_person": {
			"initial_state": "default",
			"states": {
				"default": {
					"animations": [
						"lord.third_person.idle"
					],
					"transitions": [
						{ "melee_1": "q.property('ldz:melee_side') == 1 && v.attack_time > 0 && !q.property('ldz:cancel_activated') && q.property('ldz:morph_use')" },
						{ "melee_2": "q.property('ldz:melee_side') == 2 && v.attack_time > 0 && !q.property('ldz:cancel_activated') && q.property('ldz:morph_use')" },
						{ "summon": "q.is_sneaking && q.is_using_item && !q.property('ldz:cancel_activated')" },
						{ "beam_charge": "q.property('ldz:lord_beam_state') == 'charge' && !q.property('ldz:cancel_activated')" },
						{ "walk": "q.modified_move_speed > 0.2 && !q.is_sprinting" },
						{ "run": "q.modified_move_speed > 0.2 && q.is_sprinting" },
						{ "ability_fail": "q.property('ldz:cancel_activated')" }
					],
					"blend_transition": 0.2
				},
				"walk": {
					"animations": [
						"lord.third_person.walk"
					],
					"transitions": [
						{ "melee_1": "q.property('ldz:melee_side') == 1 && v.attack_time > 0 && !q.property('ldz:cancel_activated') && q.property('ldz:morph_use')" },
						{ "melee_2": "q.property('ldz:melee_side') == 2 && v.attack_time > 0 && !q.property('ldz:cancel_activated') && q.property('ldz:morph_use')" },
						{ "summon": "q.is_sneaking && q.is_using_item && !q.property('ldz:cancel_activated')" },
						{ "beam_charge": "q.property('ldz:lord_beam_state') == 'charge' && !q.property('ldz:cancel_activated')" },
						{ "default": "q.modified_move_speed <= 0.2 && !q.property('ldz:cancel_activated')" },
						{ "run": "q.modified_move_speed > 0.2 && q.is_sprinting" },
						{ "ability_fail": "q.property('ldz:cancel_activated')" }
					],
					"blend_transition": 0.2
				},
				"run": {
					"animations": [
						"lord.third_person.run"
					],
					"transitions": [
						{ "melee_1": "q.property('ldz:melee_side') == 1 && v.attack_time > 0 && !q.property('ldz:cancel_activated') && q.property('ldz:morph_use')" },
						{ "melee_2": "q.property('ldz:melee_side') == 2 && v.attack_time > 0 && !q.property('ldz:cancel_activated') && q.property('ldz:morph_use')" },
						{ "summon": "q.is_sneaking && q.is_using_item && !q.property('ldz:cancel_activated')" },
						{ "beam_charge": "q.property('ldz:lord_beam_state') == 'charge' && !q.property('ldz:cancel_activated')" },
						{ "default": "q.modified_move_speed <= 0.2 && !q.property('ldz:cancel_activated')" },
						{ "walk": "q.modified_move_speed > 0.2 && !q.is_sprinting" },
						{ "ability_fail": "q.property('ldz:cancel_activated')" }
					],
					"blend_transition": 0.2
				},
				"melee_1": {
					"animations": [
						"lord.third_person.ability_melee_right"
					],
					"transitions": [
						{ "walk": "q.all_animations_finished && q.modified_move_speed > 0.2 && !q.is_using_item && v.attack_time == 0 && !q.is_sprinting" },
						{ "run": "q.all_animations_finished && q.modified_move_speed > 0.2 && !q.is_using_item && v.attack_time == 0 && q.is_sprinting" },
						{ "melee_2": "q.property('ldz:melee_side') == 2 && v.attack_time > 0 && q.all_animations_finished && !q.property('ldz:cancel_activated') && q.property('ldz:morph_use')" },
						{ "summon": "q.is_sneaking && q.is_using_item && q.all_animations_finished && !q.property('ldz:cancel_activated')" },
						{ "beam_charge": "q.property('ldz:lord_beam_state') == 'charge' && q.all_animations_finished && !q.property('ldz:cancel_activated')" },
						{ "default": "(q.all_animations_finished || q.property('ldz:morph') != 'lord' || q.property('ldz:morph') == 'none') && !q.property('ldz:cancel_activated')" },
						{ "ability_fail": "q.property('ldz:cancel_activated')" }
					],
					"blend_transition": 0.2
				},
				"melee_2": {
					"animations": [
						"lord.third_person.ability_melee_left"
					],
					"transitions": [
						{ "walk": "q.all_animations_finished && q.modified_move_speed > 0.2 && !q.is_using_item && v.attack_time == 0 && !q.is_sprinting" },
						{ "run": "q.all_animations_finished && q.modified_move_speed > 0.2 && !q.is_using_item && v.attack_time == 0 && q.is_sprinting" },
						{ "melee_1": "q.property('ldz:melee_side') == 1 && v.attack_time > 0 && q.all_animations_finished && !q.property('ldz:cancel_activated') && q.property('ldz:morph_use')" },
						{ "summon": "q.is_sneaking && q.is_using_item && q.all_animations_finished && !q.property('ldz:cancel_activated')" },
						{ "beam_charge": "q.property('ldz:lord_beam_state') == 'charge' && q.all_animations_finished && !q.property('ldz:cancel_activated')" },
						{ "default": "(q.all_animations_finished || q.property('ldz:morph') != 'lord' || q.property('ldz:morph') == 'none') && !q.property('ldz:cancel_activated')" },
						{ "ability_fail": "q.property('ldz:cancel_activated')" }
					],
					"blend_transition": 0.2
				},
				"summon": {
					"animations": [
						"lord.third_person.ability_summon"
					],
					"transitions": [
						{ "walk": "q.all_animations_finished && q.modified_move_speed > 0.2 && !q.is_using_item && v.attack_time == 0 && !q.is_sprinting" },
						{ "run": "q.all_animations_finished && q.modified_move_speed > 0.2 && !q.is_using_item && v.attack_time == 0 && q.is_sprinting" },
						{ "melee_1": "q.property('ldz:melee_side') == 1 && v.attack_time > 0 && q.all_animations_finished && !q.property('ldz:cancel_activated') && q.property('ldz:morph_use')" },
						{ "melee_2": "q.property('ldz:melee_side') == 2 && v.attack_time > 0 && q.all_animations_finished && !q.property('ldz:cancel_activated') && q.property('ldz:morph_use')" },
						{ "beam_charge": "q.property('ldz:lord_beam_state') == 'charge' && q.all_animations_finished && !q.property('ldz:cancel_activated')" },
						{ "default": "(q.all_animations_finished || q.property('ldz:morph') != 'lord' || q.property('ldz:morph') == 'none') && !q.property('ldz:cancel_activated')" },
						{ "ability_fail": "q.property('ldz:cancel_activated')" }
					],
					"blend_transition": 0.2,
					"blend_via_shortest_path": true
				},
				"beam_charge": {
					"animations": [
						"lord.third_person.ability_beam_charge"
					],
					"transitions": [
						{ "default": "(q.property('ldz:morph') != 'lord' || q.property('ldz:morph') == 'none') && !q.property('ldz:cancel_activated')" },
						{ "beam_exit": "(q.property('ldz:lord_beam_state') == 'off' || !q.is_using_item) && !q.property('ldz:cancel_activated')" },
						{ "ability_fail": "q.property('ldz:cancel_activated')" }
					],
					"blend_transition": 0.2
				},
				"beam_exit": {
					"animations": [
						"lord.third_person.ability_beam_shoot"
					],
					"transitions": [
						{ "walk": "q.property('ldz:lord_beam_state') == 'off' && q.all_animations_finished && q.modified_move_speed > 0.2 && !q.is_using_item && !q.is_sprinting" },
						{ "melee_1": "q.property('ldz:lord_beam_state') == 'off' && q.property('ldz:melee_side') == 1 && v.attack_time > 0 && q.all_animations_finished && !q.property('ldz:cancel_activated') && q.property('ldz:morph_use')" },
						{ "melee_2": "q.property('ldz:lord_beam_state') == 'off' && q.property('ldz:melee_side') == 2 && v.attack_time > 0 && q.all_animations_finished && !q.property('ldz:cancel_activated') && q.property('ldz:morph_use')" },
						{ "summon": "q.property('ldz:lord_beam_state') == 'off' && q.is_sneaking && q.is_using_item && q.all_animations_finished && !q.property('ldz:cancel_activated') && q.property('ldz:morph_use')" },
						{ "default": "q.property('ldz:lord_beam_state') == 'off' && q.all_animations_finished && (q.property('ldz:morph') != 'lord' || q.property('ldz:morph') == 'none' || !q.is_using_item)" },
						{ "ability_fail": "q.property('ldz:cancel_activated')" }
					],
					"blend_transition": 0.2,
					"blend_via_shortest_path": true
				},
				"ability_fail": {
					"animations": [
						"lord.third_person.ability_fail"
					],
					"transitions": [
						{ "default": "q.all_animations_finished && !q.property('ldz:cancel_activated')" }
					],
					"blend_transition": 0.2,
					"blend_via_shortest_path": true
				}
			}
		},
		"controller.animation.player.morph_lord.third_person.ability": {
			"initial_state": "default",
			"states": {
				"default": {
					"transitions": [
						{ "use": 	"!q.property('ldz:cancel_activated') && !q.property('ldz:morph_attack') && q.property('ldz:morph_use')" },
						{ "attack": "!q.property('ldz:cancel_activated') && q.property('ldz:morph_attack') && !q.property('ldz:morph_use')" },
						{ "ability_fail": "q.property('ldz:cancel_activated')" }
					]
				},
				"use": {
					"transitions": [
						{ "default": "q.all_animations_finished && !q.property('ldz:morph_use')" }
					]
				},
				"attack": {
					"transitions": [
						{ "default": "q.all_animations_finished && !q.property('ldz:morph_attack')" }
					]
				},
				"ability_fail": {
					// "animations": [
					// 	"lord.third_person.ability_fail"
					// ],
					"transitions": [
						{ "default": "q.all_animations_finished && !q.property('ldz:cancel_activated')" }
					],
					"blend_transition": 0.2,
					"blend_via_shortest_path": true
				}
			}
		},
		// MYSTIC CONTROLLERS
		"controller.animation.player.morph_mystic.first_person": {
			"initial_state": "default",
			"states": {
				"default": {
					"animations": [
						"mystic.first_person.idle"
					],
					"transitions": [
						{ "charge_beam": "!q.property('ldz:cancel_activated') && !q.property('ldz:morph_attack') && q.property('ldz:morph_use') && q.property('ldz:mystic_beam_state') == 'charge'" },
						{ "attack": "!q.property('ldz:cancel_activated') && q.property('ldz:morph_attack') && !q.property('ldz:morph_use')" },
						{ "ability_fail": "q.property('ldz:cancel_activated')" }
					],
					"blend_transition": 0.1,
					"blend_via_shortest_path": true
				},
				"charge_beam": {
					"animations": [
						"mystic.first_person.ability",
						"mystic.first_person.charge_particle"
					],
					"transitions": [
						{ "default": "!q.property('ldz:morph_use')" },
						{ "shoot_beam": "q.all_animations_finished" }
					],
					"blend_transition": 0.1,
					"blend_via_shortest_path": true
				},
				"shoot_beam": {
					"animations": [
						"mystic.first_person.ability_hold"
					],
					"transitions": [
						{ "default": "q.all_animations_finished && !q.property('ldz:morph_use')" }
					],
					"blend_transition": 0.1,
					"blend_via_shortest_path": true
				},
				"attack": {
					"animations": [
						"mystic.first_person.attack"
					],
					"transitions": [
						{ "default": "q.all_animations_finished && !q.property('ldz:morph_attack')" }
					],
					"blend_transition": 0.1,
					"blend_via_shortest_path": true
				},
				"ability_fail": {
					"animations": [
						"mystic.first_person.ability_fail"
					],
					"transitions": [
						{ "default": "q.all_animations_finished && !q.property('ldz:cancel_activated')" }
					],
					"blend_transition": 0.1,
					"blend_via_shortest_path": true
				}
			}
		},
		"controller.animation.player.morph_mystic.third_person.ability": {
			"initial_state": "default",
			"states": {
				"default": {
					"animations": [
						"mystic.third_person.idle"
					],
					"transitions": [
						{ "charge_beam": "!q.property('ldz:cancel_activated') && !q.property('ldz:morph_attack') && q.property('ldz:morph_use')" },
						{ "attack": "!q.property('ldz:cancel_activated') && q.property('ldz:morph_attack') && !q.property('ldz:morph_use')" },
						{ "ability_fail": "q.property('ldz:cancel_activated')" }
					],
					"blend_transition": 0.2
				},
				"charge_beam": {
					"animations": [
						"mystic.third_person.charge_beam",
						"mystic.third_person.charge_particle"
					],
					"transitions": [
						{ "shoot_beam": "q.property('ldz:mystic_beam_state') == 'shoot'" },
						{ "default": "!q.property('ldz:morph_use')" }
					],
					"blend_transition": 0.2,
					"blend_via_shortest_path": true
				},
				"shoot_beam": {
					"animations": [
						"mystic.third_person.shoot_beam"
					],
					"transitions": [
						{ "exit_beam": "q.property('ldz:mystic_beam_state') != 'shoot'" }
					],
					"blend_transition": 0.2
				},
				"exit_beam": {
					"animations": [
						"mystic.third_person.exit_beam"
					],
					"transitions": [
						{ "default": "q.all_animations_finished" }
					],
					"blend_transition": 0.2
				},
				"attack": {
					"animations": [
						"mystic.third_person.attack"
					],
					"transitions": [
						{ "default": "q.all_animations_finished && !q.property('ldz:morph_attack')" }
					],
					"blend_transition": 0.2
				},
				"ability_fail": {
					"animations": [
						"mystic.third_person.ability_fail"
					],
					"transitions": [
						{ "default": "q.all_animations_finished && !q.property('ldz:cancel_activated')" }
					],
					"blend_transition": 0.2
				}
			}
		},
		// SCORCHER CONTROLLERS
		"controller.animation.player.morph_scorcher.first_person": {
			"initial_state": "default",
			"states": {
				"default": {
					"animations": [
						"scorcher.first_person.idle"
					],
					"transitions": [
						{ "use": 	"!q.property('ldz:cancel_activated') && !q.property('ldz:morph_attack') && q.property('ldz:morph_use')" },
						{ "attack": "!q.property('ldz:cancel_activated') && q.property('ldz:morph_attack') && !q.property('ldz:morph_use')" },
						{ "ability_fail": "q.property('ldz:cancel_activated')" }
					],
					"blend_transition": 0.1,
					"blend_via_shortest_path": true
				},
				"use": {
					"animations": [
						"scorcher.first_person.ability"
					],
					"transitions": [
						{ "default": "q.all_animations_finished && !q.property('ldz:morph_use')" }
					],
					"blend_transition": 0.1,
					"blend_via_shortest_path": true
				},
				"attack": {
					"animations": [
						"scorcher.first_person.attack"
					],
					"transitions": [
						{ "default": "q.all_animations_finished && !q.property('ldz:morph_attack')" }
					],
					"blend_transition": 0.1,
					"blend_via_shortest_path": true
				},
				"ability_fail": {
					"animations": [
						"scorcher.first_person.ability_fail"
					],
					"transitions": [
						{ "default": "q.all_animations_finished && !q.property('ldz:cancel_activated')" }
					],
					"blend_transition": 0.1,
					"blend_via_shortest_path": true
				}
			}
		},
		"controller.animation.player.morph_scorcher.third_person": {
			"initial_state": "default",
			"states": {
				"default": {
					"transitions": [
						{ "walk": "q.modified_move_speed > 0.2" }
					],
					"blend_transition": 0.2
				},
				"walk": {
					"animations": [
						"scorcher.third_person.walk"
					],
					"transitions": [
						{ "default": "q.modified_move_speed <= 0.2" }
					],
					"blend_transition": 0.2
				}
			}
		},
		"controller.animation.player.morph_scorcher.third_person.ability": {
			"initial_state": "default",
			"states": {
				"default": {
					"transitions": [
						{ "use": 	"!q.property('ldz:cancel_activated') && !q.property('ldz:morph_attack') && q.property('ldz:morph_use')" },
						{ "attack": "!q.property('ldz:cancel_activated') && q.property('ldz:morph_attack') && !q.property('ldz:morph_use')" },
						{ "ability_fail": "q.property('ldz:cancel_activated')" }
					],
					"blend_transition": 0.2
				},
				"use": {
					"animations": [
						"scorcher.third_person.ability"
					],
					"transitions": [
						{ "default": "q.all_animations_finished && !q.property('ldz:morph_use')" }
					],
					"blend_transition": 0.2
				},
				"attack": {
					"animations": [
						"scorcher.third_person.attack"
					],
					"transitions": [
						{ "default": "q.all_animations_finished && !q.property('ldz:morph_attack')" }
					],
					"blend_transition": 0.2
				},
				"ability_fail": {
					"animations": [
						"scorcher.third_person.ability_fail"
					],
					"transitions": [
						{ "default": "q.all_animations_finished && !q.property('ldz:cancel_activated')" }
					],
					"blend_transition": 0.2
				}
			}
		},
		// SCOURGE CONTROLLERS
		"controller.animation.player.morph_scourge.first_person": {
			"initial_state": "default",
			"states": {
				"default": {
					"animations": [
						"scourge.first_person.idle"
					],
					"transitions": [
						{ "use": 	"!q.property('ldz:cancel_activated') && !q.property('ldz:morph_attack') && q.property('ldz:morph_use')" },
						{ "attack": "!q.property('ldz:cancel_activated') && q.property('ldz:morph_attack') && !q.property('ldz:morph_use')" },
						{ "ability_fail": "q.property('ldz:cancel_activated')" }
					],
					"blend_transition": 0.1,
					"blend_via_shortest_path": true
				},
				"use": {
					"animations": [
						"scourge.first_person.ability"
					],
					"transitions": [
						{ "default": "q.all_animations_finished && !q.property('ldz:morph_use')" }
					],
					"blend_transition": 0.1,
					"blend_via_shortest_path": true
				},
				"attack": {
					"animations": [
						"scourge.first_person.attack"
					],
					"transitions": [
						{ "default": "q.all_animations_finished && !q.property('ldz:morph_attack')" }
					],
					"blend_transition": 0.1,
					"blend_via_shortest_path": true
				},
				"ability_fail": {
					"animations": [
						"scourge.first_person.ability_fail"
					],
					"transitions": [
						{ "default": "q.all_animations_finished && !q.property('ldz:cancel_activated')" }
					],
					"blend_transition": 0.1,
					"blend_via_shortest_path": true
				}
			}
		},
		"controller.animation.player.morph_scourge.third_person": {
			"initial_state": "default",
			"states": {
				"default": {
					"transitions": [
						{ "walk": "q.modified_move_speed > 0.2" }
					],
					"blend_transition": 0.2
				},
				"walk": {
					"animations": [
						"scourge.third_person.walk"
					],
					"transitions": [
						{ "default": "q.modified_move_speed <= 0.2" }
					],
					"blend_transition": 0.2
				}
			}
		},
		"controller.animation.player.morph_scourge.third_person.ability": {
			"initial_state": "default",
			"states": {
				"default": {
					"transitions": [
						{ "use": 	"!q.property('ldz:cancel_activated') && !q.property('ldz:morph_attack') && q.property('ldz:morph_use')" },
						{ "attack": "!q.property('ldz:cancel_activated') && q.property('ldz:morph_attack') && !q.property('ldz:morph_use')" },
						{ "ability_fail": "q.property('ldz:cancel_activated')" }
					],
					"blend_transition": 0.2
				},
				"use": {
					"animations": [
						"scourge.third_person.ability"
					],
					"transitions": [
						{ "default": "q.all_animations_finished && !q.property('ldz:morph_use')" }
					],
					"blend_transition": 0.1
				},
				"attack": {
					"animations": [
						"scourge.third_person.attack"
					],
					"transitions": [
						{ "default": "q.all_animations_finished && !q.property('ldz:morph_attack')" }
					],
					"blend_transition": 0.2
				},
				"ability_fail": {
					"animations": [
						"scourge.third_person.ability_fail"
					],
					"transitions": [
						{ "default": "q.all_animations_finished && !q.property('ldz:cancel_activated')" }
					],
					"blend_transition": 0.2
				}
			}
		},
		// TROLL CONTROLLERS
		"controller.animation.player.morph_troll.first_person": {
			"initial_state": "default",
			"states": {
				"default": {
					"animations": [
						"troll.first_person.idle"
					],
					"transitions": [
						{ "use": 	"!q.property('ldz:cancel_activated') && !q.property('ldz:morph_attack') && q.property('ldz:morph_use')" },
						{ "attack": "!q.property('ldz:cancel_activated') && q.property('ldz:morph_attack') && !q.property('ldz:morph_use')" },
						{ "ability_fail": "q.property('ldz:cancel_activated')" }
					],
					"blend_transition": 0.1,
					"blend_via_shortest_path": true
				},
				"use": {
					"animations": [
						"troll.first_person.ability"
					],
					"transitions": [
						{ "default": "q.all_animations_finished && !q.property('ldz:morph_use')" }
					],
					"blend_transition": 0.1,
					"blend_via_shortest_path": true
				},
				"attack": {
					"animations": [
						"troll.first_person.attack"
					],
					"transitions": [
						{ "default": "q.all_animations_finished && !q.property('ldz:morph_attack')" }
					],
					"blend_transition": 0.1,
					"blend_via_shortest_path": true
				},
				"ability_fail": {
					"animations": [
						"troll.first_person.ability_fail"
					],
					"transitions": [
						{ "default": "q.all_animations_finished && !q.property('ldz:cancel_activated')" }
					],
					"blend_transition": 0.1,
					"blend_via_shortest_path": true
				}
			}
		},

		"controller.animation.player.morph_troll.third_person": {
			"initial_state": "default",
			"states": {
				"default": {
					"animations": [
						"troll.third_person.idle"
					],
					"transitions": [
						{ "walk": "q.modified_move_speed > 0.1 && !q.property('ldz:cancel_activated') && !q.property('ldz:morph_attack') && !q.property('ldz:morph_use')" },
						{ "use": 	"!q.property('ldz:cancel_activated') && q.is_using_item && v.attack_time == 0 && !q.property('ldz:morph_attack')" },
						{ "attack": "!q.property('ldz:cancel_activated') && q.property('ldz:morph_attack') && !q.property('ldz:morph_use')" },
						{ "ability_fail": "q.property('ldz:cancel_activated')" }
					],
					"blend_transition": 0.2
				},
				"walk": {
					"animations": [
						"troll.third_person.walk"
					],
					"transitions": [
						{ "default": "q.modified_move_speed <= 0.1" },
						{ "use": 	"!q.property('ldz:cancel_activated') && q.is_using_item && v.attack_time == 0 && !q.property('ldz:morph_attack')" },
						{ "attack": "!q.property('ldz:cancel_activated') && q.property('ldz:morph_attack') && !q.property('ldz:morph_use')" },
						{ "ability_fail": "q.property('ldz:cancel_activated')" }
					],
					"blend_transition": 0.2
				},
				"use_delay": {
					"transitions": [
						{ "default": "1" }
					]
				},
				"use": {
					"animations": [
						"troll.third_person.ability"
					],
					"transitions": [
						{ "use_delay": "q.all_animations_finished && !q.is_using_item && v.attack_time == 0 && q.modified_move_speed <= 0.2" },
						{ "walk": "q.all_animations_finished && !q.is_using_item && v.attack_time == 0 && q.modified_move_speed > 0.2" },
						{ "attack": "!q.property('ldz:cancel_activated') && q.property('ldz:morph_attack') && !q.property('ldz:morph_use')" },
						{ "ability_fail": "q.property('ldz:cancel_activated')" }
					],
					"blend_transition": 0.2
				},
				"attack": {
					"animations": [
						"troll.third_person.attack"
					],
					"transitions": [
						{ "default": "q.all_animations_finished && !q.is_using_item && !q.property('ldz:morph_attack') && q.modified_move_speed <= 0.2" },
						{ "walk": "q.all_animations_finished && !q.is_using_item && v.attack_time == 0 && q.modified_move_speed > 0.2" },
						{ "use": 	"!q.property('ldz:cancel_activated') && !q.property('ldz:morph_attack') && q.property('ldz:morph_use')" },
						{ "ability_fail": "q.property('ldz:cancel_activated')" }
					],
					"blend_transition": 0.2
				},
				"ability_fail": {
					"animations": [
						"troll.third_person.ability_fail"
					],
					"transitions": [
						{ "default": "q.all_animations_finished && !q.is_using_item && v.attack_time == 0 && q.modified_move_speed <= 0.2" },
						{ "walk": "q.all_animations_finished && !q.is_using_item && v.attack_time == 0 && q.modified_move_speed > 0.2" },
						{ "use": 	"!q.property('ldz:cancel_activated') && !q.property('ldz:morph_attack') && q.property('ldz:morph_use')" },
						{ "attack": "!q.property('ldz:cancel_activated') && q.property('ldz:morph_attack') && !q.property('ldz:morph_use')" }
					],
					"blend_transition": 0.2
				}
			}
		},
		// VANILLA ENDERMAN CONTROLLERS
		"controller.animation.player.morph_vanilla.first_person": {
			"initial_state": "default",
			"states": {
				"default": {
					"animations": [
						"vanilla.first_person.idle"
					],
					"transitions": [
						{ "use": 	"!q.property('ldz:cancel_activated') && !q.property('ldz:morph_attack') && q.property('ldz:morph_use')" },
						{ "attack": "!q.property('ldz:cancel_activated') && q.property('ldz:morph_attack') && !q.property('ldz:morph_use')" },
						{ "ability_fail": "q.property('ldz:cancel_activated')" }
					],
					"blend_transition": 0.1,
					"blend_via_shortest_path": true
				},
				"use": {
					"animations": [
						"vanilla.first_person.ability"
					],
					"transitions": [
						{ "default": "q.all_animations_finished && !q.property('ldz:morph_use')" }
					],
					"blend_transition": 0.1,
					"blend_via_shortest_path": true
				},
				"attack": {
					"animations": [
						"vanilla.first_person.attack"
					],
					"transitions": [
						{ "default": "q.all_animations_finished && !q.property('ldz:morph_attack')" }
					],
					"blend_transition": 0.1,
					"blend_via_shortest_path": true
				},
				"ability_fail": {
					"animations": [
						"vanilla.first_person.ability_fail"
					],
					"transitions": [
						{ "default": "q.all_animations_finished && !q.property('ldz:cancel_activated')" }
					],
					"blend_transition": 0.1,
					"blend_via_shortest_path": true
				}
			}
		},
		"controller.animation.player.morph_vanilla.third_person": {
			"initial_state": "default",
			"states": {
				"default": {
					"transitions": [
						{ "walk": "q.modified_move_speed > 0.2" }
					],
					"blend_transition": 0.2
				},
				"walk": {
					"animations": [
						"vanilla.third_person.walk"
					],
					"transitions": [
						{ "default": "q.modified_move_speed <= 0.2" }
					],
					"blend_transition": 0.2
				}
			}
		},
		"controller.animation.player.morph_vanilla.third_person.ability": {
			"initial_state": "default",
			"states": {
				"default": {
					"transitions": [
						{ "use": 	"!q.property('ldz:cancel_activated') && !q.property('ldz:morph_attack') && q.property('ldz:morph_use')" },
						{ "attack": "!q.property('ldz:cancel_activated') && q.property('ldz:morph_attack') && !q.property('ldz:morph_use')" },
						{ "ability_fail": "q.property('ldz:cancel_activated')" }
					]
				},
				"use": {
					"animations": [
						"vanilla.third_person.ability"
					],
					"transitions": [
						{ "default": "q.all_animations_finished && !q.property('ldz:morph_use')" }
					]
				},
				"attack": {
					"animations": [
						"vanilla.third_person.attack"
					],
					"transitions": [
						{ "default": "q.all_animations_finished && !q.property('ldz:morph_attack')" }
					]
				},
				"ability_fail": {
					"animations": [
						"vanilla.third_person.ability_fail"
					],
					"transitions": [
						{ "default": "q.all_animations_finished && !q.property('ldz:cancel_activated')" }
					]
				}
			}
		},
		// WRAITH CONTROLLERS
		"controller.animation.player.morph_wraith.first_person": {
			"initial_state": "default",
			"states": {
				"default": {
					"animations": [
						"wraith.first_person.idle"
					],
					"transitions": [
						{ "use": 	"!q.property('ldz:cancel_activated') && !q.property('ldz:morph_attack') && q.property('ldz:morph_use')" },
						{ "attack": "!q.property('ldz:cancel_activated') && q.property('ldz:morph_attack') && !q.property('ldz:morph_use')" },
						{ "ability_fail": "q.property('ldz:cancel_activated')" }
					],
					"blend_transition": 0.1,
					"blend_via_shortest_path": true
				},
				"use": {
					"animations": [
						"wraith.first_person.ability"
					],
					"transitions": [
						{ "default": "q.all_animations_finished && !q.property('ldz:morph_use')" }
					],
					"blend_transition": 0.5,
					"blend_via_shortest_path": true
				},
				"attack": {
					"animations": [
						"wraith.first_person.attack"
					],
					"transitions": [
						{ "default": "q.all_animations_finished && !q.property('ldz:morph_attack')" }
					],
					"blend_transition": 0.5,
					"blend_via_shortest_path": true
				},
				"ability_fail": {
					"animations": [
						"wraith.first_person.ability_fail"
					],
					"transitions": [
						{ "default": "q.all_animations_finished && !q.property('ldz:cancel_activated')" }
					],
					"blend_transition": 0.5,
					"blend_via_shortest_path": true
				}
			}
		},
		"controller.animation.player.morph_wraith.third_person": {
			"initial_state": "default",
			"states": {
				"default": {
					"animations": [
						"wraith.third_person.idle"
					],
					"transitions": [
						{ "walk": "q.modified_move_speed > 0.2" }
					],
					"blend_transition": 0.2
				},
				"walk": {
					"animations": [
						"wraith.third_person.move"
					],
					"transitions": [
						{ "default": "q.modified_move_speed <= 0.2" }
					],
					"blend_transition": 0.2
				}
			}
		},
		"controller.animation.player.morph_wraith.third_person.ability": {
			"initial_state": "default",
			"states": {
				"default": {
					"transitions": [
						{ "use": 	"!q.property('ldz:cancel_activated') && !q.property('ldz:morph_attack') && q.property('ldz:morph_use')" },
						{ "attack": "!q.property('ldz:cancel_activated') && q.property('ldz:morph_attack') && !q.property('ldz:morph_use')" },
						{ "ability_fail": "q.property('ldz:cancel_activated')" }
					]
				},
				"use": {
					"animations": [
						"wraith.third_person.ability"
					],
					"transitions": [
						{ "default": "q.all_animations_finished && !q.property('ldz:morph_use')" }
					],
					"blend_transition": 0.2
				},
				"attack": {
					"animations": [
						"wraith.third_person.attack"
					],
					"transitions": [
						{ "default": "q.all_animations_finished && !q.property('ldz:morph_attack')" }
					],
					"blend_transition": 0.2
				},
				"ability_fail": {
					"animations": [
						"wraith.third_person.ability_fail"
					],
					"transitions": [
						{ "default": "q.all_animations_finished && !q.property('ldz:cancel_activated')" }
					],
					"blend_transition": 0.2
				}
			}
		}
	}
}