各種フルーツ(アイテム)の出現率を設定する【Unity】

前回、りんごをランダムな位置から2秒間隔で降らせることが出来ました。

フルーツが1種類だけだと寂しいので、りんご以外のフルーツも降らせるようにします。

また、各フルーツの出現率が同じだと面白くないので、各フルーツの得点を設定して出現率も変えたいと思います。

スポンサーリンク

各種フルーツの出現率を設定しよう

現在利用しているフルーツパックのアセットにはさまざまな種類のフルーツが用意されています。

今回は、「りんご」「バナナ」「スイカ」の3種類を使ってみたいと思います。

りんごとバナナには既にコライダやスクリプトの設定を行っていましたが、スイカは初めて使うので、シーンビューにドラッグ&ドロップした後、りんご同様の設定を付加しておきましょう。

その後は、プレハブ化してシーンビューのフルーツを削除しておきます。

出現率を変更するスクリプトの作成

「fruitGenerator」スクリプトを開いて、スクリプトを修正します。

色々な方法がありますが、サイコロを使うベーシックなパターンにしました。

前回も出てきた「Range」メソッドを使います。

まずは、1~10までのランダムな値を取得します。

サイコロの目が「1~5」ならばりんごを、「6~8」ならばバナナを、「9~10」ならばスイカを生成するようにしています。

要するにリンゴが50%、バナナが30%、スイカが20%の出現率になります。

出現率の違いが分かるように、アイテムの生成間隔「span」を1秒にしてみます。

スクリプトを保存したらゲームを実行してみましょう。

こんな感じですね。やはり50%のりんごがたくさん降ってきますね。

りんごやスイカは丸くて割とキャッチし易そうなので、難易度的にはバナナの出現率を下げた方がいいのかな。この辺はお任せで調節してもらえれば良いかなと。

ただ、このままだとずっと同じ間隔でしかアイテムが生成されないので面白味にかけますね。その辺の調整方法も制限時間等を設置した後で紹介したいと思っています。