「30分で作ろう」シリーズ(2) マイジャンプ!

5.ゲームオーバーを作ろう

目的

  • 主人公が、コースから外れて、水オブジェクトに接触した場合、ゲームオーバーとする処理を実装します。
  • 接触した際、ゲームステータスを2に変更し、ゲームオーバーの状態とします。

使用する変数

名前種類説明
ゲームステータス 変数ゲーム画面の種類を管理する。
タイム変数ゲーム時間をカウントします。
スコア変数獲得したスコアをカウントします。

使用するオブジェクト

名前カテゴリー説明
カメラゲーム内カメラアングルを指定
プレーン(草)
プログラム モデル/プログラム初期化
ゲームステータス管理等
モデル/自然
マイモデル/人 操作キャラクター
ジョイパッドツール
Aボタンツール
草ブロック(高)_1~6モデル/素材
木ブロック_1~3モデル/素材
橋_1~2モデル/素材
リスタートツールボタン
リング1~6モデル/小物
GameOverツール
スコア表示ツール/テキストタイトル(右)
タイム表示ツール/テキストタイトル(右)
スコア結果表示ツール/テキストタイトル(中央)

作成手順

ゲームオーバー表示を作ります

水オブジェクト配置

  • オブジェクト追加より、モデルを指定し、水を選択し、オブジェクト一覧に追加します。
  • シーンエディターに移動します。
  • 下記の様に座標と大きさを設定します。

主人公にゲームオーバーの処理を追加しましょう

オブジェクト:マイ

  • イベント:「[自分]と[自分]が接触したら」を配置
    • [自分]と[水]が接触したらに変更
    • 接触したら、マイの表示をOFF
    • エフェクト:爆発(1)を表示
    • ゲームステータスを2に変更

ゲームオーバーオブジェクト配置

  • オブジェクト追加より、ツールを指定し、GameOverを選択。
  • シーンエディターに移動します。
  • オブジェクト一覧にて、「スコア表示」を選択すると「グリッド移動」が表示されます。
  • 「グリッド移動」の「アンカー設定」にチェックしましょう。
  • アンカー位置を上中央にします。
  • 下記の様に座標と大きさを設定します。
  • プログラムで表示のON/OFFを行うため、オブジェクト一覧にて青い「目」のアイコンをクリックし、非表示に設定します。

スコア結果表示を作りましょう

  • オブジェクト追加より、ツールを指定し、タイトル(中央)を選択。
  • オブジェクト一覧よりタイトル(中央)を選択し、名称を「スコア結果表示」に変更。

変更前

変更後

  • シーンエディターに移動します。
  • オブジェクト一覧にて、「スコア表示」を選択すると「グリッド移動」が表示されます。
  • グリッド移動」の「アンカー設定」にチェックしましょう。
  • アンカー位置を下中央にします。
  • 下記の様に座標と大きさを設定します。
  • プログラムで表示のON/OFFを行うため、オブジェクト一覧にて青い「目」のアイコンをクリックし、非表示に設定します。

リスタートボタンの処理を作りましょう

ゲームオーバー時に、リスタートボタン、スペースキー、Aボタンをタップするとゲームステータスを1にして、ゲームスタートのステータスに変更します。

  • オブジェクト追加より、ツールを指定し、ボタンを選択。
  • シーンエディターに移動します。
  • オブジェクト一覧にて、「リスタート」を選択すると「グリッド移動」が表示されます。
  • 「グリッド移動」の「アンカー設定」にチェックしましょう。
  • アンカー位置を下中央にします。
  • 下記の様に座標と大きさを設定します。
  • プログラムで表示のON/OFFを行うため、オブジェクト一覧にて青い「目」のアイコンをクリックし、非表示に設定します。
  • リスタート用のプログラムを記載します。

オブジェクト:リスタート

  • タッチ操作対応
  • イベント:「[自分]が[タップされたら」を配置
    • iF:もし、ゲームステータスが2の場合に実行
      • ゲームステータスを1に変更

オブジェクト:リスタート

  • キーボード操作対応
  • イベント:「[Space]が[押されたら」を配置
    • iF:もし、ゲームステータスが2の場合に実行
      • ゲームステータスを1に変更

オブジェクト:リスタート

  • コントローラー操作対応
  • イベント:「コントローラー[1]の[A]ボタンが[押されたら」を配置
    • iF:もし、ゲームステータスが2の場合に実行
      • ゲームステータスを1に変更

ゲームステータス:2の処理を追加しましょう

  • IFブロックの+ボタンで条件分岐を追加し、ゲームステータス 2:ゲームオーバー時の処理を追加します。

オブジェクト:プログラム

  • ゲームステータスが変更され、値が2のときに動作するプログラム
  • 「ゲームステータスが変更されたら」を配置
    • ゲームオーバー画面
      • GameOver表示ON
      • リスタート表示ON
      • ジョイパッド表示OFF
      • Aボタン表示OFF
      • スコア結果表示にここまでのスコアを表示