UE4極め本 AppendixD 残機数表示の実装方法
極め本Appendixもようやく終わりが見えてきました。
自力でノードの組み方を考えるなど一生無理だと思ってましたが、
なんとかこの宿題を自力でこなすことができてとても嬉しいです。
まだまだこの本を使ってUE4の学習に臨む人はいると思うので
詰んだ人用に備忘録を書いておきます。
使用しているバージョンは4.25です。
まず、PlayerControllerに変数を作成する。
名前:Number Of Life
タイプ:Float
デフォルト値:2~5くらい(テストのため)
その後、PlayerControllerに関数を作成する。
名前:Count Life
この関数が呼ばれるたびにNumber Of Lifeが-1されるように
ノードを組む。
つぎに、PlayerPawnのグラフの死亡処理を書いたところに移動する。
Sequenceノード>Then2ピンの終点に、CountLife関数を呼び出す。
まず、Cast to PNPlayerController、Get Controllerを設置する。
As PNPlayerControllerからCount Lifeを呼び出す。
つぎに、PlayBGMノードの出力ピンを引っ張り、Count Lifeにつなげる。
最後に、これをHUDに表示させる。
PNGameHUD>NumOfLifeの詳細パネルより、 バインディングを作成 を選択。
自動的にグラフに遷移するので、以下のようにノードを組む。
注意点としては、CastノードにつなぐのがGet Owning Playerであることくらい?
(ちなみに、どうしてこれGetする対象がControllerではなくPlayerなのかわかってません)
あとはゲームで適当に死んでみればライフの数が減ることを確認できる。
自分はデバッグ用にPNPlayerControllerに以下のようなノードも組んだ。