{
  "format_version": "1.10.0",
  "animation_controllers": {
    "controller.animation.silverlabs_nat.deer.move": {
      "initial_state": "default",
      "states": {
        "default": {
          "animations": [
            "idle",
            "look_at_target"
          ],
          "blend_transition": 0.5,
          "transitions": [
            {
              "run": "v.is_sprinting"
            },
            {
              "walk": "v.is_moving"
            },
            {
              "eat": "q.property('silverlabs_nat:is_grazing')"
            }
          ]
        },
        "walk": {
          "animations": [
            { "walk": "!q.is_baby" },
            { "baby_walk": "q.is_baby" },
            "look_at_target"
          ],
          "blend_transition": 0.2,
          "transitions": [
            {
              "default": "!v.is_moving"
            },
            {
              "run": "v.is_sprinting || q.is_avoiding_mobs"
            },
            {
              "eat": "q.property('silverlabs_nat:is_grazing')"
            }
          ]
        },
        "run": {
          "animations": [
            { "run": "!q.is_baby" },
            { "baby_run": "q.is_baby" },
            "look_at_target"
          ],
          "blend_transition": 0.25,
          "transitions": [
            {
              "default": "!v.is_moving"
            },
            {
              "walk": "!v.is_sprinting && !q.is_avoiding_mobs"
            },
            {
              "eat": "q.property('silverlabs_nat:is_grazing')"
            }
          ]
        },
        "eat": {
          "animations": [
            { "eat": "!q.is_baby" },
            { "baby_eat": "q.is_baby" }
          ],
          "blend_transition": 0.5,
          "transitions": [
            {
              "default": "!q.property('silverlabs_nat:is_grazing')"
            }
          ]
        }
      }
    },
    "controller.animation.silverlabs_nat.deer.ambient": {
      "initial_state": "default",
      "states": {
        "default": {
          "on_entry": [
            "v.next_flick = math.random_integer(0, 50);",
            "v.last_flick = q.life_time;"
          ],
          "transitions": [
            {
              "ear_flick": "q.life_time >= ((v.next_flick ?? 0) + (v.last_flick ?? 0))"
            }
          ]
        },
        "ear_flick": {
          "animations": ["ear_flick"],
          "transitions": [
            {
              "default": "q.all_animations_finished"
            }
          ]
        }
      }
    }
  }
}
