前回の続きをやっていきます
- まずは前回の振り返りを軽くおさらいします
前回の振り返り
- タイムラインノードの作成を終え、関連するlocationのノードに接続するための新しいノード「set Relative Location(MovingBorad)」を作成します
- タイムラインノードの設定を終えて、作成したブループリントをworldに設置して、試しに実行すると設置した床が動いていることが確認できたと思います
続きから、
- 設置したコーン(トゲ)の当たり判定に触れたときの処理を追加します
- 左のコンポーネントは「NeedleCollision」をクリックし、右の詳細からイベントの下階層の「On Component Begine Overlap」の+をクリックするとしたのノードが出てきます
- このイベントノードをスタート地点として、ブループリントを組んでいきます
リスタート処理を実装
- 当たり判定にプレイヤーが触れたらアクタを消す処理の実装
- Destroy Actor ノードを使う、On Component Begine Overlapの実行ピンをドラックし、Destroy Actorを選択する
- On Component Begine Overlapの「Other Actor」をドラッグして、さっき作ったDestroyActorの「Target」に設置する
- これで当たったら消えるようになりました
- 続いて、当たったら数秒後にリスタートする処理を入れていきます
- 「Destroy Actor」の出力からドラッグして、Delayノードを作成して、「Duration」を2.0と設定します
- 次に新規ノードを右クリックからで「Get Game Mode」、「Get Player Controller」を作成し、DelayノードからCompletedをドラッグしてRestartPlayerを選択します
- 保存してコンパイルするのをおわすれずに、、
- 動く床のように作成したBPをドロップしてフィールドへ配置します
- これができたら実行して、キャラを操作して、トゲに当たったらリスタートすることが分かると思います
- このままでは、当たり判定に当たったものすべてが消えてしまいます。このため、その判定を付け加える