スクラッチでタワーディフェンスゲーム(城を守るゲーム)の作り方

中級

今回つくるゲーム

難易度3 out of 5 stars

今回はスクラッチでタワーディフェンスゲームを作っていきます。お城に向かって進軍してくる敵をマップ内に作った砦で攻撃し、進軍を阻止するゲームです。砦はコインで進化させ、攻撃力をアップすることことができますが、コインには限りがあるので、どの砦をどの順番で進化させていくかがポイントとなるゲームです。少し作るのに時間はかかりますが、とても面白いゲームなので是非取り組んでみてください!

この記事でも順番に作り方を解説しますがくわしくははYouTube動画で確認してください。


まずはゲームをプレイしてみましょう。
マップ内の砦ポイントをクリックすると100コインで砦を進化させられます。
右下の雷はゲージが満帆になると、クリックして、好きな場所でもう一度クリックするとそこに雷を落とすことができます。

youtube解説

こちらの動画ではわかりやすくゲームの作り方を解説しています。実際に作るときはこの動画を見ながら作ることをお勧めします。チャンネル登録もよろしくお願いします!

[スクラッチ]タワーディフェンスゲーム(城防衛ゲーム)の作り方【まずはざっくり解説】

マップを作る

まずはマップを作ります。以下のようにステージの背景にマップを描きます。今回は左下・左上・右上の3ヶ所から敵が進軍してくることを想定しています。

スクラッチでタワーディフェンスゲーム(城を守るゲーム)の作り方

敵を作る

次に敵を作ります。新しく「敵」というスプライトを作り、そこのコスチュームに敵を描いていきます。今回は6種類の敵を作りました。

スクラッチでタワーディフェンスゲーム(城を守るゲーム)の作り方

ここで一つ大事なポイントがあります。それぞれのコスチュームの名前を以下のように数字にしてください。この数字はその敵のHPになります。強い敵ほどHPは高くなります。ケンタウルスは20回攻撃を受けてようやく倒せると言うことです。このように名前をHPにするというのはよく使うテクニックなので覚えておきましょう。

スクラッチでタワーディフェンスゲーム(城を守るゲーム)の作り方
スクラッチでタワーディフェンスゲーム(城を守るゲーム)の作り方
スクラッチでタワーディフェンスゲーム(城を守るゲーム)の作り方

進軍のチェックポイントを作る

次に敵がマップ上を進軍できるようにします。そのためにマップ上にチェックポイントを作ります。敵がチェックポイントに触れると次のチェックポイントに向かうようにするのです。

以下のようにマップ上に城を入れて9ヶ所のチェックポイントを作ります。

スクラッチでタワーディフェンスゲーム(城を守るゲーム)の作り方

そうすると敵の進軍ルートは以下のパターンとなります。

c1→c4→c5→c8→城

c2→c6→c5→c8→城

c2→c6→c7→c8→城

c3→c7→c8→城

それぞれのチェックポイントごとにスプライトを作り場所を指定していきます。大きさは城以外はすべて60×60程度に設定しています。城は今回はただの茶色い四角ですが、城っぽいコスチュームを作ってもらえればと思います。

スクラッチでタワーディフェンスゲーム(城を守るゲーム)の作り方

それぞれのコードはこのようになりますが、こまかな位置は描くマップによって異なりますので、自分の描いたマップにあうように場所の調整をしてください。

スクラッチでタワーディフェンスゲーム(城を守るゲーム)の作り方
スクラッチでタワーディフェンスゲーム(城を守るゲーム)の作り方
スクラッチでタワーディフェンスゲーム(城を守るゲーム)の作り方
スクラッチでタワーディフェンスゲーム(城を守るゲーム)の作り方
スクラッチでタワーディフェンスゲーム(城を守るゲーム)の作り方
スクラッチでタワーディフェンスゲーム(城を守るゲーム)の作り方
スクラッチでタワーディフェンスゲーム(城を守るゲーム)の作り方
スクラッチでタワーディフェンスゲーム(城を守るゲーム)の作り方
スクラッチでタワーディフェンスゲーム(城を守るゲーム)の作り方

敵を進軍させる

では次に敵を進軍させられるようにします。以下のように敵のスプライトにコードを書いてください。これで敵が城まで進軍できるようになります。

スクラッチでタワーディフェンスゲーム(城を守るゲーム)の作り方
スクラッチでタワーディフェンスゲーム(城を守るゲーム)の作り方

砦をつくる

では次に敵を攻撃する砦をつくっていきます。新たなスプライトを作り、以下のように5つのコスチュームを作ります。コスチューム1が砦のベースでそこをクリックすると2→3→4→5の順番で進化していきます。

スクラッチでタワーディフェンスゲーム(城を守るゲーム)の作り方
実際は・・・

わかりやすく番号で作りましたが、実際はこのように進化する食べに強そうな砦になるようにコスチュームを描くと良いでしょう。

スクラッチでタワーディフェンスゲーム(城を守るゲーム)の作り方

砦を配置する

では、マップ上に砦を配置していきます。以下のように配置したい”場所”と”向き”に砦を配置します。この向きの方向に攻撃をすることになります。それがわかりやすいように「コスチューム1」だけは右をとがらせています。

最初はコスチューム1にして、クリックされると、次のコスチュームにします(ただし、5以上にはならない)

また、コインは最初500あって、スプライトが押されるたびに100ずつ減り、コインが100未満になると進化できなくなります。

これらをコードに書くと以下の通りとなります。

スクラッチでタワーディフェンスゲーム(城を守るゲーム)の作り方

これで旗を押して、砦を進化させるとこのようになります。

スクラッチでタワーディフェンスゲーム(城を守るゲーム)の作り方
実際は・・・

今回はわかりやすくするために砦を6つだけ配置しましたが、実際にはもっと大量に配置すると良いでしょう。ビンゴおじさんが作ったゲームではこれだけ配置しています。

スクラッチでタワーディフェンスゲーム(城を守るゲーム)の作り方

砦から攻撃する

次に砦から敵を攻撃できるようにしていきます。「弾」のスプライトを新たに作り、砦から弾を打てるようにします。

まずはこのように「弾」のスプライトをつくり弾のコスチュームを描きます

スクラッチでタワーディフェンスゲーム(城を守るゲーム)の作り方

次に砦のスプライトに移動して、以下のようにコードを追加します。

スクラッチでタワーディフェンスゲーム(城を守るゲーム)の作り方

ここまで書けたら、次に弾のスプライトにもどって以下のようにコードを書きます。砦のスプライトでランダムに「弾」のクローンを作って、クローンが作られたらその時の「攻撃x」「攻撃y」の位置で、「攻撃の向き」に向けて弾が発射されるという仕組みです。

スクラッチでタワーディフェンスゲーム(城を守るゲーム)の作り方

雷攻撃を作る

砦からの攻撃だけではなく、一定時間毎に強い攻撃を局地的に加えられるようにします。そのために二つのスプライトを作ります。一つが「雷」でもう一つが「雷ゲージ」です。

コスチューム

まずは雷です。

以下のようにもともとスクラッチに用意してある雷のイラストを変形させて以下のようなコスチュームを作ります。大きさはおおよそ50×50になるようにするとよいでしょう。

スクラッチでタワーディフェンスゲーム(城を守るゲーム)の作り方

次に雷ゲージです。
雷を覆い隠せるくらいの50×50程度の四角を描きます。色は背景と同じ色になるように設定しましょう。

スクラッチでタワーディフェンスゲーム(城を守るゲーム)の作り方

このコスチュームを描くときにひとつ工夫が必要です。実は緑の四角の外側に画面いっぱいに透明の四角を描いています。そうするとコスチュームの大きさが50×50ではなくて、480×360程度におおきくなります。そうすることで、緑の四角が画面ギリギリまでに下がるのです。(逆に50×50のままでは途中までしか下にいかないのです)

この、画面いっぱいに透明の四角を描くテクニックはいろいろな場面で使えるので覚えておきましょう。

スクラッチでタワーディフェンスゲーム(城を守るゲーム)の作り方

コード

まずは雷のコードです。以下のようにコードを書きましょう。ゲージが満タンになる(雷ゲージのy座標が-210以下になる)とクリックができて、敵の場所にもう一度クリックするとそこに雷を落とすことができるようになります。

スクラッチでタワーディフェンスゲーム(城を守るゲーム)の作り方

次に雷ゲージのコードです。10秒で上から下まで四角が降りてきて、そうすると雷を落とせるようになると言うからくりです。

スクラッチでタワーディフェンスゲーム(城を守るゲーム)の作り方

敵のHP、お城のHPを操作する

では、ここからHPの操作ができるようにしていきます。以下のようなルールを設定しています。

敵のスプライトに以下のコードを追加します。

・敵が弾に触れるとHPが1づつ減る

・HPが0になると敵はやっつけられる

・敵をやっつけると、HP×10だけのコインをゲットできる

・雷に触れるとHPが10ずつ減る

・敵が城に触れると敵に1のダメージを与える

スクラッチでタワーディフェンスゲーム(城を守るゲーム)の作り方

続いて城のコードを以下のように変更します。

スクラッチでタワーディフェンスゲーム(城を守るゲーム)の作り方

すべてのコード

これで完成です。すべてのコードはこちらから確認できます。

タワーディフェンスゲーム

コメント