今回つくるゲーム
難易度
はじめに
まず初めに以下のプロジェクトをリミックスしてください。こちらには今回のゲームを作るスプライトが全て用意されています
ボールのコード
まずはボールのコードを書いていきます。ボールの上にマウスポインたを置いてスワイプすることで、スワイプをした方向に向かってボールが転がり、またスワイプの勢いに応じてスピードが変わるようにします。
ボールのコードを書く前に、まずゲーム管理のスプライトに以下のコードを書いてください。
ではボールのスプライトに以下のコードを書いていきます。ボールをスワイプで飛ばす考え方についてはこちらの動画で詳しく解説しています。マウスポインターの位置を常にリストに書き込んでいき、大きく数値が動いたタイミングをスワイプしたと判断するようにします。
ピンのコード
次にピンのコードを書いていきます。ピンは以下のようにクローンを使って10本並べます。
そして、ボールが当たった球は倒れますが、それ以外にも隣のピンが倒れた時にランダムな確率で倒れるようにします。例えば、5のピンは以下のように2,3,4,6のいづれかが倒れた時に連鎖して倒れる可能があります。
引数付きの定義を使って、それぞれのクローンの動きを決めていきます。以下のコードをピンのスプライトに書いてください。
ここまでできると、ボールを投げてピンを倒せるようになります。
得点をつける
最後に得点をつけられるようにします。ここがこのゲームの最難関です。まず、ボウリングのスコアのルールは以下の通りです。
具体的に以下のように点数が推移していきます。
ストライクが3回連続で続いた場合は以下のようになります。これをターキーと言います。
そして最終フレームは、ストライクかスペアを取れば3投目まで投げることができます。
このルールをコードにしていくのがなかなか大変な作業になります。全てのコードは以下の通りとなります。それぞれのフレームの1投目を1st、2投目を2ndのリストに入れていきます。そして各フレームのスコアをスコアリストに入れていきます。前のフレームがストライクかスペアの場合は一つ戻って加算されるため、そこも考慮されています。また10フレだけは計算方法が異なってくるのでスコアの計算方法を変えています。10フレの3投目は書くところがないので11フレの1投目に倒したピンの本数を記載するようにします。
全てのコード
全てのコードはこちらから確認できます。
コメント
ベイブレード風ゲームの作り方を教えてください。
ベイブレード風ゲームの作り方を教えてください
リクエストありがとうございます。ベイブレード風ゲーム、面白いかもしれませんね!ちょっと考えてみます
ありがとうございます。(^^)