配列 10. ランダムな地形

新登場要素は、毎回ランダムな数字(乱数)を返すrandomInt関数です。

などとすると、randomNumber変数に、0から12までのうちのどれかの整数が入ります。プログラムを実行する度に毎回違った数字になるので、サイコロを振るなどゲーム的なアプリには欠かせない関数です。
このステージでは、7行目で.appendメソッドのパラメータとして使っています。前後のfor文で20回繰り返されるので、9行目の時点でheights配列には0〜12の中のどれかの数字が20個入っていることになります。続くループの中で、これを先頭から取り出し、積み上げるブロックの高さとして利用しているのです。前ステージ同様、コマが20個目以降になるとindexがheights配列がもっている要素数を超えて範囲外エラーになってしまうので、12-14行目のif文で0に戻しています。

ステージとしては、何か所かあるコメント文の下に、その条件に当てはまるコマの時になにかしらの処理(world.place()的なこと)をしろとあります。自分のセンスで好きな処理を書きましょう。また40行目のところには、if文の条件そのものを自分で決めてなにか処理を追加しましょう(以下のコードでは書いてありません)。

上記のコードの実行結果はこんな感じになります。ただし乱数を使っているので、実行する度に各コマの高さが変わり、毎回違った風景になるでしょう。

改善希望!役に立った! (+3 rating, 5 votes)
読み込み中...

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です