{
  "$schema": "/characters/v2/schemas/state-machine.schema.json",
  "schemaVersion": "1.0.0",
  "kind": "nandarona.character-state-machine",
  "releaseId": "ukabiro@2.6.0",
  "initialState": "grounded",
  "states": {
    "grounded": {
      "status": "canonical",
      "intent": "高さを保って横移動する前の基準状態",
      "allowedNext": [
        "spin-up",
        "grounded"
      ],
      "visualChannel": "growth amount, leaf or root geometry, hinge angle, maturity, branch choice, restrained organic motion"
    },
    "spin-up": {
      "status": "canonical",
      "intent": "高度保持型のホバー移動NPC役としての spin-up 状態",
      "allowedNext": [
        "lift",
        "grounded"
      ],
      "visualChannel": "growth amount, leaf or root geometry, hinge angle, maturity, branch choice, restrained organic motion"
    },
    "lift": {
      "status": "canonical",
      "intent": "高度保持型のホバー移動NPC役としての lift 状態",
      "allowedNext": [
        "hover",
        "grounded"
      ],
      "visualChannel": "growth amount, leaf or root geometry, hinge angle, maturity, branch choice, restrained organic motion"
    },
    "hover": {
      "status": "canonical",
      "intent": "高度保持型のホバー移動NPC役としての hover 状態",
      "allowedNext": [
        "strafe",
        "grounded"
      ],
      "visualChannel": "growth amount, leaf or root geometry, hinge angle, maturity, branch choice, restrained organic motion"
    },
    "strafe": {
      "status": "canonical",
      "intent": "高度保持型のホバー移動NPC役としての strafe 状態",
      "allowedNext": [
        "touchdown",
        "grounded"
      ],
      "visualChannel": "growth amount, leaf or root geometry, hinge angle, maturity, branch choice, restrained organic motion"
    },
    "touchdown": {
      "status": "canonical",
      "intent": "高度保持型のホバー移動NPC役としての touchdown 状態",
      "allowedNext": [
        "grounded"
      ],
      "visualChannel": "growth amount, leaf or root geometry, hinge angle, maturity, branch choice, restrained organic motion"
    }
  },
  "events": {
    "activate": "spin-up",
    "intensify": "hover",
    "resolve": "strafe",
    "reset": "grounded"
  },
  "guards": [
    "ドローンのプロペラを付けない",
    "気球や雲にしない",
    "水中浮力キャラにしない",
    "Unknown facts must remain unknown and must not be promoted to canonical by a transition.",
    "A transition must preserve common DNA, family DNA, and individual silhouette."
  ]
}
