ブロックの位置と大きさをランダムに変えよう

ここまでで、だいぶゲームらしくなってきました。
次は、ブロックの位置と大きさをランダムに変えることで、よりゲームらしくしていきましょう。

現在、ブロックはゲーム画面の真ん中を動いているだけです。
そこで、ブロックが出現する位置をランダムに変化させ、さらに大きさも変えてみましょう。

まず、ブロックの初期位置を画面右側に変えておきましょう。
setup 関数内で、変数 block に値を代入しているところを、次のように変えてください。

block = { x: 450, y: 200, w: 30, h: 30 };

x を450にしました。
これにより、ゲーム起動時のブロックの位置は画面右の外側になります。

さてここからが本題です。
ブロックが画面左に消えてから画面右に復活させる際に、位置と大きさをランダムに変えてみましょう。

ランダムに変えるを実現するには、乱数を使います。

乱数について詳しく知りたい方は、以下の入門コースの解説をご覧ください。
乱数とは - 入門コース

それでは、updateGame 関数内で、ブロックを復活させる処理の部分を次のように変更してください。

if (block.x < -block.w / 2) { block.x = 400 + block.w / 2; block.y = random(0, 400); block.h = random(30, 100); }

乱数を使って、ブロックのY方向の位置と高さをランダムに変えています。

block.y = random(0, 400);

この部分で、ブロックのY方向の位置を0〜400のランダムな値にしています。

block.h = random(30, 100);

この部分で、ブロックの高さを30〜100のランダムな値にしています。

ゲームを起動してみましょう。
ブロックが画面左に消えて画面右に復活すると、位置と大きさがランダムに変わるようになったと思います!

ブロックの位置と大きさが変わる

オンライン相談

つまづいたときは

フライトゲーム
レッスン一覧

はじめに

コース一覧

ゲーム開発コース

数学コース

アートコース

入門コース

このサイトについて


© 2022 ルートアイ All rights reserved.