ぷちコン奮闘記!~タイマー処理・スコア表示~
今回作るゲームには、タイマーとキルカウント(敵を殺した数)がスコアとして表示される。
タイマー処理もキルカウント処理も、どちらもGameModeBaseに処理を組んでいる
まず、どのようにしてキル数のカウント処理をしてるのかを紹介しよう。
GameModeBase
自分が敵を殺したという通知が、「KillCount」インターフェースを経由して送られてくる。
敵が殺された時、「KillNumber」というInteger型の変数に殺した数を格納していく。
「KillCount」インターフェースは、前回の記事にも書いてあるはずなので、確認してほしい。
次にタイマー処理だ。
イベントTickを使用。
Delayで1秒おきに「TimerSecond」というInteger型の変数を1足している。
「TimerSecond」は、秒数を格納する為の変数だ。
デフォルト値は「0」
これで、1、2、3、4・・・というように1秒ずつタイマーが加算されていく。
だが、Delayとセット「TimerSecond」変数の間に、ブランチを挟んである。
これは、キル数(KillNumber)が目標キル数(KillGoalNumber)と同じになったら、Trueに処理が流れ、クリアーリザルトを表示するために、ウィジェットBPにインターフェースで処理を送っている。
そうすれば、タイマー処理も止まってくれる。
「TimerSecond」が「60」に到達したら、「〇分」経ったかを格納する為に、「TimerMinute」というInteger型の変数を1足している。
「TimerMinute」のデフォルト値は「0」
つまり、「TimerSecond」が60秒に達したら、1分経ったという事で「TimerMinute」に1足している。
という感じだ。
その後、また「0」から秒数をカウントしていく為に、TimerSecondを「0」にセット。
そしてまたタイマーを加算していく・・・のループだ。
UMGはこんな感じ。
実際にやってみた結果。
キル数が目標値に到達した時、つまりステージにいる敵を全員鏖(みなごろし)にした時、しっかりタイマーが止まっていた!
同時にキル数もカウントされていた!
それではまた!^^ノシ