はなちるのマイノート

Unityをメインとした技術ブログ。自分らしくまったりやっていきたいと思いますー!

【GameBuilder】GameBuilderのチュートリアルの歩き方⑤

はじめに

今回はGameBuilderのチュートリアルの歩き方の最終回になります!

ではやっていきましょう。

オブジェクト間のメッセージの送受信をする

ボタンを押したら緑色に変化させる仕組みを作っていきたいと思います。

f:id:hanaaaaaachiru:20190616022306p:plain

この仕組みを細かく分解すると、以下の2つの要素に分けることができます。

  • 「もしプレイヤーと衝突したら信号を送る」ボタン
  • 「もし信号を受け取ったら緑色に変化する」ランプ

ここの信号を送ることを、ここではメッセージを送る・受信すると表現しています。

まずはボタンから作っていきましょう。

f:id:hanaaaaaachiru:20190616022722p:plain

メッセージを送信するにはBroadcast Messageカードを使います。

名前 機能
Message 送信する信号のキー
Delay 信号を発するまでの時間

f:id:hanaaaaaachiru:20190616022950p:plain

次にランプを作ります。

f:id:hanaaaaaachiru:20190616023227p:plain

メッセージの受信をしたかを判定するにはReceiveMessageカードを使います。

名前 機能
Message 受信する信号のキー

f:id:hanaaaaaachiru:20190616023505p:plain

色を変えるアクションはChangeColorカードを用います。

f:id:hanaaaaaachiru:20190616023630p:plain

これが終わったら実際にPlayモードでみてみましょう。

f:id:hanaaaaaachiru:20190616024012g:plain

クリア条件を付ける

スターを一定数以上集めたら、クリアするという条件をつけたいと思います。

この条件はプレイヤーオブジェクトのロジックに記述されていて、「もし一定以上のスコアが入手したらゲームをクリアする」というIF-THENパネルで実現されています。

f:id:hanaaaaaachiru:20190616024447p:plain

Score X pointsカードが一定スコアを入手したときの条件を指定していて、これの中身を書き換えることでクリア条件を変えられます。

名前 機能
Needed score 条件にするスコア
Who scores だれのスコアを対象とするか

f:id:hanaaaaaachiru:20190616024839p:plain

ここで指定したスコア(スター)になると、ゲームをクリアできます。

f:id:hanaaaaaachiru:20190616025033p:plain

さいごに

これで一通りチュートリアルを終わりになります。

私は最初マインクラフトのようなものを想像していたのですが、チュートリアルを終えると全然違った印象を受けました。操作はやや独特で慣れが必要な印象を受けましたが、マインクラフトよりも自由度は高いと思います。というか本当に名前の通りゲーム作りのツールです。

またマルチプレイのお手軽さはとても魅力的で、もしStadiaというGoogleのゲームプラットフォームに出展することができればかなり可能性を秘めているツールであるような気がします。

ぜひサンプルゲームも遊んでみると、より面白さが分かるかもしれないので、是非遊んでみてください!

追記

もっと分かりやすくするために動画も用意してみました。
GameBuilder Tutorial - YouTube