{
  "name": "流程控制",
  "icon": "pneumaticcraft:textures/progwidgets/jump_piece.png",
  "category": "pneumaticcraft:programming",
  "advancement": "pneumaticcraft:programmer",
  "pages": [
    {
      "type": "text",
      "text": "當 $(l:tools/drone)無人機/$ 被部署時，它會立即開始執行其儲存的程式。執行流程如下所示：$(li)程式 $(italic)始終/$ 從 $(l:programming/start)開始/$ 小部件開始，這個小部件只能有一個。$(li)流通常向 $(italic)下方/$ 推進；進入當前小部件底部連線的下一個小部件。"
    },
    {
      "type": "text",
      "text": "$(li)一個小部件執行其給定的操作，直到它決定自己已經 $(italic)完成/$ - “完成”的定義因小部件而異，這在每個單獨小部件的頁面中進行了描述。$(li)噹噹前小部件底部沒有連線小部件時，執行將返回到 $(l:programming/start)開始/$ 小部件。$(p)這就是基本流程。然而，還有少數特殊情況，接下來會進行描述……"
    },
    {
      "type": "text",
      "title": "流程控制小部件",
      "text": "$(li)$(l:programming/label)標籤/$ 小部件是在程式中供跳轉的一個點。$(li)$(l:programming/jump)跳轉/$ 小部件觸發一個立即的、無條件的跳轉到匹配的 $(thing)標籤/$ 小部件。$(li)$(l:programming/conditions)條件/$ 小部件可以根據它們測試的條件觸發跳轉。$(li)高階的 $(l:programming/for_each_item)針對每個專案/$ 和 $(l:programming/for_each_coordinate)針對每個座標/$ 小部件會對它們的輸入列表重複跳轉到一個 $(thing)標籤/$。"
    },
    {
      "type": "text",
      "text": "還有幾個特殊小部件存在，影響流程控制：$(li)$(l:programming/standby)待命/$ 小部件，會讓無人機進入“休眠”狀態，直到另一個小部件實際有事情可做。$(li)$(l:programming/suicide)自殺/$ 小部件，會將 $(thing)無人機/$ 作為物品掉落，立即終止執行。"
    }
  ]
}