メイクコード アーケード を使ったゲーム作り第5弾です。
過去にも学習した内容は、説明を省くこともあります。
説明が分からないときは前のページを再読しましょう。
これから作るゲーム
前回と同じく横向きの画面です。
全体の仕組みはよく似ています。
プレイヤーを上下左右に移動して敵を避けながら
弾を発射して、右から出てくる怪獣をやっつけます。
弾を撃つような動作は他の場面でもよく使います。これが分かれば作れるゲームが増えますよ。

残機制のゲームです。
15秒でゲームオーバーです。敵に3回当たってもゲームオーバーになります。
スコアは敵を倒すたび +1 されます。
新しくプロジェクトを作成しよう
新しくプロジェクトを作成します。
プロジェクトの名前を入力して 作成 ボタンをクリックします。

背景に絵を入れます。
シーン の中の 背景画像を○に設定 をドラッグします。

最初だけ の中に配置します。
次に絵を選びます。

ギャラリーから月面のような絵を選びます。(丸いのはクレーター?)

この背景画像をあとで動かします。
ところで時々、シミュレーター画面がなかなか表示されない時があります。新しくプロジェクトを作成したときなどもよくおこります。
大抵はリセットボタンを押すことで解決します。ただリセットしても表示されない時もあります。
その時は一度ホームに戻ってプロジェクトを開き直せば、画面表示がスムーズに行われるパターンが多いです。
プレイヤーを表示しよう
プレイヤーを表示しましょう。
スプライト の中の黄色で指定したブロックをドラッグします。

最初だけ の中に配置します。
絵を選びます。

ギャラリーから飛行機の絵を選びます。

同じような絵が6枚ありますが、これはアニメーション用です。
今回はどれを選んでもかまいません。
絵を確定する前に、絵の向きを変えます。
下図を参考に左右反転のアイコンをクリックします。

左向きの絵が右向きになりました。
完了 ボタンを押して絵を確定します。

プライヤーを動かそう
プレイヤーキャラを操作できるようにします。
コントローラー の中の mySpriteをボタンで動かす をドラッグします。

最初だけ の中に配置します。
プレイヤーの初期位置を変更します。
スプライト の中の mySprite の X を 0 にする をドラッグします。

最初だけ の中に配置します。
X 座標を 40 に変更します。

画面外へ飛び出さないようにします。
スプライト の中の set mySprite stay in screen をドラッグします。
最初だけ の中に配置します。

上図の変数名を見てください。
プレイヤーである飛行機は、変数 mySprite で管理しています。
変数に対して、絵の情報、ユーザー操作、座標、画面内制限などを結び付けています。
弾を発射させよう
A ボタンを押すと、飛行機から弾を発射するようにします。
コントローラー の中の A ボタンが押した時 をドラッグします。

最初だけ の外に配置します。

弾のスプライトを用意します。
スプライト の中の黄色で指定したブロックをドラッグします。
これは特定のスプライトと同じ位置に発射体を発生させます。

A ボタンが押した時 の中に配置します。
絵を選びます。

ギャラリーから弾の絵を選びます。

弾が右へ移動するように速度を変更します。
速度 vx 200 vy 0 に変更しましょう。

これで発射体は mySprite と同じ位置に作られます。
弾を撃ってみましょう。
シミュレーターの A ボタンをクリックしてもいいし、キーボードの z キーまたは space キーを押してもいいです。
下図のように弾のスプライトが発射されます。

スプライトの表示優先を変更しよう
ゲームに慣れている人は気付いたと思います。
弾が発射された時、弾のスプライトが飛行機の上に被さっています。
「一瞬だからいいのでは」
と思うかもしれません。でも基本的にプレイヤーキャラは常にしっかり見えていることが大切です。
(演出などで意図して隠す場合は別です)

どうして弾のスプライトは飛行機の上に表示されるのでしょうか?
それは弾の方が後に作られるからです。指定をしない限り同じ深さにスプライトは作られます。
深さを変更します。
スプライト の中の mySprite の X を 0 にする をドラッグします。

A ボタンが押した時 の中に配置します。
変数名を projectile 項目を z(深さ) 値を -1 に変更します。

変数 projectile は弾のことです。
いきなり出てきた z(深さ)ですが座標は横 x と 縦 y で表現し、奥行き(深さ)は z ということです。
プラス値で手前に、マイナス値で奥に配置されます。
それでは弾を撃ってみてください。飛行機の下から発射されるのが分かると思います。
怪獣を出現させよう
敵である怪獣を出現させます。
ゲーム の中の ゲームが更新された時 500 ミリ秒毎 をドラッグします。
これは一定の間隔で処理させたいときに使います。

A ボタンが押した時 の下あたりに配置します。

怪獣のスプライトを作ります。
どんどん出現させるので発射体で作ります。
スプライト の中の黄色で指定したブロックをドラッグします。

ゲームが更新された時 500 ミリ秒毎 の中に配置します。
次回に続きます。