{
  "format_version": "1.10.0",
  "animation_controllers": {
    "controller.animation.yuzu": {
      "initial_state": "setup1",
      "states": {
        "setup1": {
          "transitions": [
            {
              "setup": "(query.get_equipped_item_name=='yuzu' && q.is_using_item) || query.get_equipped_item_name=='yuzu_emp'"
            }
          ],
          "on_entry": [
            "@s[hasitem={item=krep:yuzu, location=slot.weapon.mainhand}] krep:noreload",
            "@s krep:yuzu_clear",
            "/title @s clear"
          ]
        },
        "setup": {
          "transitions": [
            {
              "shoot": "query.get_equipped_item_name=='yuzu' && query.is_using_item"
            }
          ],
          "on_entry": [
            "@s krep:noreload"
          ]
        },
        "shoot": {
          "animations": [
            "yuzushoot"
          ],
          "transitions": [
            {
              "setup": "query.get_equipped_item_name!='yuzu'"
            },
            {
              "reload": "query.all_animations_finished"
            }
          ],
          "on_entry": [
            "@s krep:yuzu_fire",
            "@s krep:noreload",
            "/playsound yuzu.shoot @a[r=30]"
          ]
        },
        "reload": {
          "animations": [
            "yuzureload"
          ],
          "transitions": [
            {
              "setup": "query.get_equipped_item_name!='yuzu' || q.all_animations_finished"
            }
          ],
          "on_entry": [
            "@s krep:reload"
          ]
        }
      }
    }
  }
}
// yes, i made it on purpose that yuzu actually can skip the reload animation, u just need to unequip her gl and equip it again, that how gamer president works