{
  "format_version": "1.10.0",
  "animation_controllers": {
    "controller.animation.silverlabs_nat.hippo.move": {
      "initial_state": "default",
      "states": {
        "default": {
          "animations": [
            { "idle": "!q.is_baby" },
            { "baby_idle": "q.is_baby" }
          ],
          "blend_transition": 0.5,
          "transitions": [
            { "sit": "q.is_baby && q.is_sitting" },
            { "walk": "!q.has_target && (q.modified_move_speed >= 0.1)" },
            { "run": "q.has_target && (q.modified_move_speed >= 0.1)" },
            { "swim": "q.is_in_water && (q.modified_move_speed >= 0.1)" }
          ]
        },
        "walk": {
          "animations": [
            { "walk": "!q.is_baby" },
            { "baby_walk": "q.is_baby" }
          ],
          "blend_transition": 0.5,
          "transitions": [
            { "sit": "q.is_baby && q.is_sitting" },
            { "default": "q.modified_move_speed < 0.1" },
            { "run": "q.has_target" },
            { "swim": "q.is_in_water" }
          ]
        },
        "run": {
          "animations": [
            { "run": "!q.is_baby" },
            { "baby_run": "q.is_baby" }
          ],
          "blend_transition": 0.5,
          "transitions": [
            { "sit": "q.is_baby && q.is_sitting" },
            { "default": "q.modified_move_speed < 0.1" },
            { "walk": "!q.has_target" },
            { "swim": "q.is_in_water" }
          ]
        },
        "sit": {
          "animations": ["baby_sit"],
          "blend_transition": 0.2,
          "transitions": [
            { "sit_idle": "q.is_sitting && q.all_animations_finished" },
            { "unsit": "!q.is_sitting" }
          ]
        },
        "sit_idle": {
          "animations": ["baby_sit_idle"],
          "blend_transition": 0.2,
          "transitions": [
            { "unsit": "!q.is_sitting" }
          ]
        },
        "unsit": {
          "animations": ["baby_unsit"],
          "blend_transition": 0.2,
          "transitions": [
            { "sit": "q.is_sitting" },
            { "default": "!q.is_sitting && q.all_animations_finished" }
          ]
        },
        "swim": {
          "animations": ["swim"],
          "blend_transition": 0.5,
          "transitions": [
            { "sit": "q.is_baby && q.is_sitting" },
            { "default": "q.modified_move_speed < 0.1" },
            { "run": "q.has_target && !q.is_in_water" },
            { "walk": "!q.has_target && !q.is_in_water" }
          ]
        }
      }
    },
    "controller.animation.silverlabs_nat.hippo.attack": {
      "initial_state": "default",
      "states": {
        "default": {
          "transitions": [
            {
              "bite": "v.attack_time > 0"
            }
          ]
        },
        "bite": {
          "animations": ["bite"],
          "transitions": [
            {
              "default": "q.any_animation_finished"
            }
          ]
        }
      }
    },
    "controller.animation.silverlabs_nat.hippo.eat": {
      "initial_state": "default",
      "states": {
        "default": {
          "transitions": [
            {
              "breedable": "!q.is_in_love"
            }
          ]
        },
        "breedable": {
          "transitions": [
            {
              "eat": "q.is_in_love"
            }
          ]
        },
        "eat": {
          "animations": ["bite"],
          "particle_effects": [
            {
              "effect": "bite",
              "locator": "chomp"
            },
            {
              "effect": "slice",
              "locator": "chomp"
            }
          ],
          "on_entry": ["v.is_biting = 1;"],
          "on_exit": ["v.is_biting = 0;"],
          "transitions": [
            {
              "default": "q.all_animations_finished"
            }
          ]
        }
      }
    }
  }
}
