今回つくるゲーム
難易度
人気のスマホゲームのダダサバイバーの動きをスクラッチで再現していきます。周辺からせまってくるゾンビをクナイやガーディアンで攻撃しながら逃げて、逃げ切ったタイムを競います。マップ上をスクロールするゲームの基本的な要素がまんさいですので、是非チャレンジしてみてください。
まずはゲームをプレイしてみましょう。マウスの方向にプレイヤーが動きます。
ステージを作る
まず、ステージを作っていきます。ステージは実際の画面よりも大きく作ってスクロールできるようにします。このようにスプライトを追加し、背景からXy-grid-20pxをコピーして拡大し、横6マス程度になるまで拡大します。
マップ管理のコードを書く
次にマップ管理という新しいスプライトを作成し、以下のようにコードを書きます。
今回のゲームでは広いマップ上を動けるようにするために、マップxとマップyという変数を作って、マップ上のどの位置にいるかを管理します。その他の細かなコードの意味はYouTube動画で詳しく解説していますのでご確認ください。
ステージのコードを書く
次にステージのコードを書きます。下図のように、例えば、右上に進むということはステージは左下に進むということです。
ステージのコードに以下のように書くと、画面がスクロールできるようになります。
プレイヤーのコードを書く
次にプレイヤーのコードを書きます。プレイヤーはずっと中心にいるだけです。以下のように、マウスの方向に向きだけ変わるようにします。
ゾンビのコードを書く
次にゾンビを作っていきます。新たにゾンビのスプライトを用意します。今回はGoboをゾンビにします。
そしてゾンビのコードに以下のように書きます。
ここでゾンビxとゾンビyの変数を作る時には「このスプライトのみ」に必ずチェックを入れるようにしてください。また最初の200匹のブロック定義を作るときは「画面を再描画せずに実行する」にチェックを入れるようにしてください。
キョリx、キョリy、キョリの考え方は以下の通りです。キョリx、キョリyがそれぞれ枠内におさまるようになったら、ゾンビが出現するということです。一度枠内に入ったゾンビは追跡開始になり、枠外に行ってもずっと追跡するようにします。
プレイヤーの攻撃を作る
今回はプレイヤーの攻撃はクナイとガーディアンを作ります。
クナイを作る
まずは基本的なクナイの攻撃を作っていきます。
以下のようにスプライトを追加し、クナイのコスチュームを書きます。
そしてコードにこのように書いていきます。実際のゲームでは、一番近くの敵を攻撃することになっていますが、今回は簡単にするため、ランダムに攻撃するようにします。
ガーディアンを作る
次にガーディアンを作っていきます。
以下のように新しいスプライトを追加し、コスチュームを描きます。ポイントは中心をはさんで対称に丸を設置します。そうすることでプレイヤーを中心にくるくる回せるようになります。
ガーディアンのコードは以下の通りです。
ゾンビがやられる
次に攻撃でゾンビがやられるようにしていきます。以下のようにさきほど作ったゾンビのコードに「やられる」の定義を追加していきます。やられるときは、少し光ってから消えるようにすると、やられた感じを出すことができます。
プレイヤーの体力が削られる
プレイヤーのコード
次に、プレイヤーがゾンビに当たると体力が削られるようにしていきます。プレイヤーのコードに以下のコードを追加します。
体力ゲージを作る
体力ゲージも作りましょう。
以下のように新たに体力ゲージのスプライトを作ります。コスチュームのマス目に従い、10メモリを最大として、1メモリづつ減らしていき最大からゼロまで11種類作ります。
そして、以下のようにコードを書きます。
タイマーを作る
最後にタイマーを作ります。どのスプライトでも良いので、以下のようにコードを書いて終了です。
全てのコード
これで全てのプログラムが終了です。
全てのコードはこちらから確認できます。攻撃の種類を増やすなど、色々工夫をしてみてください。