GameSaladでシューティングゲームを作ろう(6)|ガメオベラ

GameSalad入門『GameSaladでシューティングゲームを作ろう(5) | 当たり判定! 』の続きです。前回は敵の当たり判定を付けましたが、今回は自機の当たり判定を作ってみましょう。自機が敵に当たったら「GAME OVER」の画面に切り替える、というのも一緒にやってみます。
まずは最初にゲームオーバーの画面を作っておきましょう。GameSaladにはScene(シーン)という概念があり、画面の切り替えやステージの構築などに使います。今までは1つのSceneしか使っていませんでしたが、今回はSceneを追加してゲームオーバー画面を作ります。
ツールバーのHomeを押すと、Sceneの一覧画面になります。左下の「+」ボタンを押して、新しいシーンを追加してください。「Scene 1」という名前でできると思いますので、名前の部分をクリックして、Game Overと変えておきましょう。
go1
このSceneをダブルクリックして編集します。この画面では、ゲームオーバーだよ、という表示と共に、スペースキーマウスボタンが押されたらゲームを最初からやり直す、という処理を加えたいと思います。(スペースキーだとHTML5の場合にブラウザが反応して押せなくなるため右クリックにしました)
まずは文字を表示するためのActorを追加しましょう。名前はGameOverTextにしましょうか。このActorの詳細を開き、BehaviorのDisplay Textを使って文字を表示します。Display TextのText欄に「Game Over – Click」と入れました。また、Actor自体が見えないように、AttribulteのColorのAlphaを0にします。これでActor自体は透明になり、文字だけが表示されるようになります。そして、スペースキーが押されたらゲームを最初からやり直す、という処理を作るために、Create Ruleを使ってRuleを追加します。画面のように発動条件を設定して、BehaviorのRestart GameをRuleにドラッグします。
GameOverText
最後に、GameOverTextを画面にドラッグして配置します。
goscene
Previewボタンでなく、黒い画面の枠の上にある再生ボタンを押すと、そのシーンだけをプレビューすることができます。
これでゲームオーバーのシーンができました。
次は、自機が敵にぶつかった時にゲームオーバー画面に遷移するルールを作ります。ActorのPlayerを開いて、Create Ruleでルールを追加します。Enemyと衝突した時、という条件にし、BehaviorのChange Sceneを発動させます。もちろんChenge先はGame Overにします。
PlayerRule
これでPreviewしてみましょう。これでやっとゲームとして一通りの要素が揃いましたね。
でもなにか物足りない・・そう、「スコア」が無いからですね。次回はスコアを表示できるようにします。
ここまでのGameSaladのプロジェクトはこちらからダウンロードできます。

スポンサーリンク

シェアする

  • このエントリーをはてなブックマークに追加

フォローする

スポンサーリンク

コメント

  1. […] GameSalad入門『GameSaladでシューティングゲームを作ろう(6)|ガメオベラ』の続きです。前回まででゲームの要素はあらかた揃ってきたのですが、まだ足りないものがあります。そう、 […]

  2. Hachi より:

    はじめまして。Hachiと申します。
    こちらのブログを拝見し同じようにシューティングゲームを作っているのですが、この記事のDisplay Textのところでうまくいかず、つまづいてしまいました。
    テキスト表示用ActorにDisplay TextのBehaviorsを入れ、SceneにもActerをドラッグして配置したのですが、肝心の文字が表示されません。
    ActerのColorを透明にしたり、別の色にしたりもしましたが変化なし。
    Wrap inside acterのチェックを付けたり消したりしても変化なし。
    ActerのColorとDisplay TextのColorを別の色にしても表示されませんでした。
    Fontはプルダウン内にArialが無かったのですが、デフォルトのままCambayというものに設定されています。
    なぜテキストが表示されないのか原因が分かりません。
    どうすれば表示されるのか分かりましたらご教授頂けないでしょうか。
    よろしくお願いいたします。