Ⅰ、控制的基礎——“轉移”與“循環”
- 轉移:通過確認程序狀態,並據此執行不同處理的一種功能。
- 循環:多次循環執行預先設置好的處理。
Ⅱ、分支(Branch)
分支就是通過檢查某個值,然后根據結果來決定該執行兩個處理中的哪一個,即所謂的“二選一”。
程序中有一種值,用於表示“是兩個狀態中的哪一個”,即“真假值”,在藍圖中為“布爾型”值。分支就是用於處理真假值的一項功能,通過檢查真假值的值並根據值的狀態來決定兩者中的哪一個處理。
Ⅲ、分支節點
首先右擊圖表,在菜單中輸入分支,“工具”內的“流程控制”項就顯示出了“分支”選項:
分支節點:
創建的分支節點中有多個輸入和輸出項:
- Condition:輸入項目。在分支中用於連接要確認的值(真假值),旁邊的復選框在未連接時默認為勾選狀態,通過是否勾選復選框就可以進行分支。
- True/False:輸出項目中預備有“真”“假”這兩個項目,用於連接分支處理流程。“真”與“假”為真假值的值。真假值用於表示值的真假,Condition的復選框為勾選狀態時,執行連接到“真”的處理,沒有勾選時,執行連接到“假”的處理。
接着將“Begin Play”的exec輸出項連接到“分支”的exec輸入項,然后將“分支”的“真”連接到“Print String”的exec輸入項:
然后從工具欄單擊“播放”圖標運行程序。當分支復選框勾選時,Print String顯示出文本;沒有勾選時,不顯示文本。
Ⅳ、值的比較
在剛才的程序中添加對值進行比較的處理。右擊圖表,在出現的菜單中鍵入“=”,從檢索出的項目中選擇位於“數學”內的“整型”項目中的“Equal(integer)”選項:
所創建的節點稱為Equal節點,是表示等號(=)的節點。該節點可檢查輸入的兩個值是否相等。藍圖中依據對象值的種類預備有多個Equal節點。本次使用的Equal(integer)用於比較整數值。
Equal節點有兩個輸入項和一個輸出項:
- 兩個輸入項:用於連接兩個比較對象值。
- 輸出項:用於將結果以真假值的形式輸出。值為真表示兩個值相等,為假不相等。
接着在Equal節點的兩個輸入項中填上相同的數字,然后將Equal節點連接到分支:
接下來點擊運行,程序通過“Equal”來檢查兩個值,二者相同的話將執行Print String:
Ⅴ、能完成很多轉移的開關
分支是使用真假值所做的轉移,也就是“2選1”轉移。而如果想“3選1”呢?
這時就需要用到“開關(Switch)”轉移了。開關的轉移數可以自行添加,只要你想,可以添加無數個。
Ⅶ、“開啟字符串(Switch On String)”節點
接下來,將嘗試使用字符串開關來制作一個“猜拳程序”。
首先,右擊圖表,在菜單欄中鍵入“switch on”,並選擇位於“工具”內的“流程控制(切換)”項中的“開啟字符串”選項:
所創建的“開啟字符串”節點:
該節點英文名稱為“Switch On Switch”,意思是“以字符串替換”。也就是用字符串的值來替換。
開啟字符串節點中有幾個輸入輸出項:
- Selection:用於連接檢查對象值。可在旁邊的文本框內直接填寫文本進行設置。運行時,運行該值和右側的項。
- Default:找不到與Selection相同的項時運行。
- “添加功能”鏈接:單擊來添加轉移輸出項。默認狀態為沒有轉移。
然后點擊“添加引腳”選項添加3個選項,然后在右側的細節面板中輸入三種情況的名稱:
接着,單擊“我的藍圖”中“變量”處的“+”,創建一個名為“猜拳”的變量:
並在右側的細節面板中將變量類型設置為“字符串”,然后單擊工具欄中的“編譯”進行編譯。編譯后即可在“默認值”處填寫“剪刀”、“石頭”、“布”中的任意一個:
然后就可以將該“猜拳”節點拖拽入藍圖中了,選擇“獲得”選項。再將“猜拳”節點連接到“開啟字符串”節點,接着添加3個Print String節點,分別鍵入“剪刀”、“石頭”、“布”,並連接起來:
但是,當遇到與任何值都不匹配的情況時,就利用“Default”來創建相關的處理。
首先,將“猜拳”變量拖拽到圖表中,並選擇“設置”選項,並設置為“剪刀”:
改寫原獲得節點的默認值,使其不為剪刀、石頭布中的任何一個,然后做如下連線:
最終編譯運行,因為指定的文本不為三者中的任意一個時,則均會輸出“剪刀”: