スクラッチでボウリングゲームの作り方

上級

今回つくるゲーム

難易度4 out of 5 stars

今回はスクラッチでボウリングゲームを作っていきます。スワイプでボールを投げてピンを倒します。スワイプの勢いでボールスピードが変化し、ピンが連鎖して倒れていきます。またボウリングのとても複雑なスコアのつけかたも再現していきます。とても難しいですが頑張って作ってみてください。

まずは実際にゲームをプレイしてみてください。

youtube解説

こちらの動画ではわかりやすくボウリングゲームの作り方をゼロから解説していますのであわせてチェックしてください。チャンネル登録もよろしくお願いします!

スクラッチでボーリングゲームの作り方#1

はじめに

まず初めに以下のプロジェクトをリミックスしてください。こちらには今回のゲームを作るスプライトが全て用意されています

【素材】ボウリングゲーム

スクラッチでボウリングゲームの作り方

ボールのコード

まずはボールのコードを書いていきます。ボールの上にマウスポインたを置いてスワイプすることで、スワイプをした方向に向かってボールが転がり、またスワイプの勢いに応じてスピードが変わるようにします。
ボールのコードを書く前に、まずゲーム管理のスプライトに以下のコードを書いてください。

スクラッチでボウリングゲームの作り方

ではボールのスプライトに以下のコードを書いていきます。ボールをスワイプで飛ばす考え方についてはこちらの動画で詳しく解説しています。マウスポインターの位置を常にリストに書き込んでいき、大きく数値が動いたタイミングをスワイプしたと判断するようにします。

スクラッチでボウリングゲームの作り方
スクラッチでボウリングゲームの作り方

ピンのコード

次にピンのコードを書いていきます。ピンは以下のようにクローンを使って10本並べます。

スクラッチでボウリングゲームの作り方

そして、ボールが当たった球は倒れますが、それ以外にも隣のピンが倒れた時にランダムな確率で倒れるようにします。例えば、5のピンは以下のように2,3,4,6のいづれかが倒れた時に連鎖して倒れる可能があります。

スクラッチでボウリングゲームの作り方

引数付きの定義を使って、それぞれのクローンの動きを決めていきます。以下のコードをピンのスプライトに書いてください。

スクラッチでボウリングゲームの作り方
スクラッチでボウリングゲームの作り方
スクラッチでボウリングゲームの作り方

ここまでできると、ボールを投げてピンを倒せるようになります。

得点をつける

最後に得点をつけられるようにします。ここがこのゲームの最難関です。まず、ボウリングのスコアのルールは以下の通りです。

スクラッチでボウリングゲームの作り方

具体的に以下のように点数が推移していきます。

スクラッチでボウリングゲームの作り方
スクラッチでボウリングゲームの作り方

ストライクが3回連続で続いた場合は以下のようになります。これをターキーと言います。

スクラッチでボウリングゲームの作り方

そして最終フレームは、ストライクかスペアを取れば3投目まで投げることができます。

スクラッチでボウリングゲームの作り方

このルールをコードにしていくのがなかなか大変な作業になります。全てのコードは以下の通りとなります。それぞれのフレームの1投目を1st、2投目を2ndのリストに入れていきます。そして各フレームのスコアをスコアリストに入れていきます。前のフレームがストライクかスペアの場合は一つ戻って加算されるため、そこも考慮されています。また10フレだけは計算方法が異なってくるのでスコアの計算方法を変えています。10フレの3投目は書くところがないので11フレの1投目に倒したピンの本数を記載するようにします。

スクラッチでボウリングゲームの作り方
スクラッチでボウリングゲームの作り方
スクラッチでボウリングゲームの作り方
スクラッチでボウリングゲームの作り方
スクラッチでボウリングゲームの作り方

全てのコード

全てのコードはこちらから確認できます。

ボウリングゲーム


コメント

  1. らす太 より:

    ベイブレード風ゲームの作り方を教えてください。

  2. らす太 より:

    ベイブレード風ゲームの作り方を教えてください

    • ビンゴおじさん より:

      リクエストありがとうございます。ベイブレード風ゲーム、面白いかもしれませんね!ちょっと考えてみます