UE4はじめました。 -ブループリント入門編(3. もう少し複雑な変数の取り扱い)-

# 概要
今回でブループリント入門編はおしまい予定です。

今回は[前回](http://qiita.com/sango/items/a657a53ad869b8b95c05)よりもう少し複雑な変数の取り回し(代入)について綴ります。


# 実践
## もう少し複雑な変数の取り扱い
今回のサンプルでは、複数の文字列を連結して、新しい変数に格納するよ！

### 1. (前回の処理を一部無効化)
まずは、次の作業がやり易いように、不要な線を取り除くよ。
![ue_32.png](https://qiita-image-store.s3.amazonaws.com/0/97611/9143a350-481d-3e97-3e71-2a834abf27a3.png)
コンバートからプリント関数に繋がっているピンクの線を切断してね。
![ue_33.png](https://qiita-image-store.s3.amazonaws.com/0/97611/1dd6d723-0aeb-d76f-f993-50e51e29a251.png)

### 2. 文字列連結関数を配置
イベントグラフ上で右クリックして、文字列を連結する関数「Append」を選んでね！
![ue_34.png](https://qiita-image-store.s3.amazonaws.com/0/97611/e3f5c1e6-e69d-2c8c-931f-503e1eaf5e13.png)

![ue_35.png](https://qiita-image-store.s3.amazonaws.com/0/97611/c526f768-f10d-0d81-346d-0361442c6a4b.png)
できたかな？

### 3. 実験
連結関数がどんな感じか実験してみるよ。
![ue_36.png](https://qiita-image-store.s3.amazonaws.com/0/97611/d42a7fa6-34f9-37bf-4810-3094f77c7e83.png)
前々回に用意した文字列変数をイベントグラフに配置してね。

次に、文字列変数と前回作られたコンバート処理を連結関数に繋いでね。
![ue_37.png](https://qiita-image-store.s3.amazonaws.com/0/97611/e7b9cb9e-dfe0-7c9a-61d5-f0d83310de0c.png)

最後に、連結関数とプリント関数を繋いでね！
![ue_38.png](https://qiita-image-store.s3.amazonaws.com/0/97611/f9fcdfe7-720d-509a-8efa-9c100be95123.png)

<br>
これを実行すると…。
![ue_39.png](https://qiita-image-store.s3.amazonaws.com/0/97611/eafc8733-f101-563d-0bd1-14b853fa0ed3.png)
文字列変数の中身と二つのInt型の足し算結果が連結された文字列が表示されるよ！

### 4. (イベントグラフを整理)
次のステップに進む前に、イベントグラフを下の画像と同じにしてね！
![ue_40.png](https://qiita-image-store.s3.amazonaws.com/0/97611/f221cd48-2688-510c-d00c-44df8382906d.png)

### 5. 新しい文字列変数を用意
連結用に文字列型変数を新しく2つ用意してね！
![ue_41.png](https://qiita-image-store.s3.amazonaws.com/0/97611/13f376a5-2a38-2a06-4c1c-f1907584d906.png)

初期値はこんな感じにするよ！

「現在の値は」
![ue_42.png](https://qiita-image-store.s3.amazonaws.com/0/97611/d8702c1f-923e-3414-f431-296f35b2f24f.png)

「です。」
![ue_43.png](https://qiita-image-store.s3.amazonaws.com/0/97611/23105e31-274b-f170-d761-52f6ecedd979.png)


この2つをイベントグラフに配置してね！
![ue_44.png](https://qiita-image-store.s3.amazonaws.com/0/97611/8b1c3da5-65ec-8b03-7217-536bdfd7a6e3.png)

### 6. setterを配置
今度は連結後の文字列を格納するための変数を配置するよ！

最初に用意した文字列変数をsetterとしてイベントグラフに配置するよ。

![ue_45.png](https://qiita-image-store.s3.amazonaws.com/0/97611/86399ae8-59e2-0151-6353-600a73859f36.png)
ウィンドウ左側の変数リストから、配置したい変数をイベントグラフ上にドラッグ&ドロップ。
メニューから「セット」を選択してね！

![ue_46.png](https://qiita-image-store.s3.amazonaws.com/0/97611/332838b7-c66b-d3cf-d295-8655bd93e0b7.png)
こんな感じになったかな？

### 7. 文字列連結関数を配置
手順3の実験の時と同じように、イベントグラフに文字列連結関数を配置してね！
![ue_47.png](https://qiita-image-store.s3.amazonaws.com/0/97611/dad50e32-ee95-600e-f195-b613942df941.png)

こんな感じ。
![ue_48.png](https://qiita-image-store.s3.amazonaws.com/0/97611/286824ed-9636-c20a-3cea-1949e4b09ec1.png)

<br>
今回は、「現在の値は」「(計算結果)」「です。」の3つを連結するから、連結関数の引数を一つ追加するよ！
![ue_49.png](https://qiita-image-store.s3.amazonaws.com/0/97611/c4b5f41d-ae98-5b1a-ab46-c8b288cd6948.png)
↓
![ue_50.png](https://qiita-image-store.s3.amazonaws.com/0/97611/2dc05459-0cde-1f86-7871-d66778bbaf1b.png)

<br>
引数 A, B, C にそれぞれの変数を繋いでね！
![ue_51.png](https://qiita-image-store.s3.amazonaws.com/0/97611/bdc35d15-d851-e21a-2577-0211b2ecb67c.png)
A + B + C の順番で連結されるから、

Aには「現在の値は」の変数を、
Bには「(計算結果)」のコンバートを、
Cには「です。」の変数を繋いでね！

<br>
次は、関数の結果をsetterに、setterの結果をプリント関数に、繋ぐよ！
![ue_52.png](https://qiita-image-store.s3.amazonaws.com/0/97611/59deb73c-0464-26b0-9542-54015f3bb41c.png)

### 8. 実行！！
さぁ、いよいよ実行！と思うじゃん？
実は、このまま実行すると、setterの値は変更されず、初期値のままになっちゃうの…。

<br>
イベントグラフの白い線を、
「イベント BeginPlay」 -> 「setter」 -> 「プリント関数」
になるようにつなぎ直してね！
![ue_53.png](https://qiita-image-store.s3.amazonaws.com/0/97611/c3d95c9a-8201-00d5-863f-9d4540fa859a.png)

<br>
今度こそ…！
![ue_54.png](https://qiita-image-store.s3.amazonaws.com/0/97611/3b679a0f-9f11-2c03-7b71-c8cc19fecad6.png)
うまくできたかな？


### おしまい。
これにてブループリント入門編はおしまいです！
お疲れ様でした！

続編は私の習熟度に進展があり次第また…！
(^0^)/

# シリーズ
- [UE4はじめました。 -ブループリント入門編(1. "Hello world")-](http://qiita.com/sango/items/94fa26f2fe92da4be0e6)
- [UE4はじめました。 -ブループリント入門編(2. 変数の取り扱いと簡単な計算)-](http://qiita.com/sango/items/a657a53ad869b8b95c05)