
このブログテーマでは、スクラッチの初心者から上級者まで、ちょっとお役に立つ情報を不定期で紹介していきます。
スクラッチ講座、投稿記事のまとめはこちら(一分間スクラッチ講座 まとめ)でご参照ください。
今回は変数の値を決定する、スライダー型ルーレットの作り方をご説明します。よくスポーツ系のゲーム、例えばピッチャーの球速を決めたり、サッカーのシュートの速さ、ゴルフの打つ力を決めた入りするするときに使ったりする、あれです。
下の動画は不定期配信の「ファイブボックス一分間スクラッチ講座」です。ご興味のある方は併せてご参照ください。
変数の準備
まずは変数を1つ用意します。
全てのスプライト用で「スピード」という変数を作成してください。

スピードゲージの作成
「描く」から新しいスプライトを追加します。
スプライト名を「スピードゲージ」、左右のグラデーションを指定して四角形を作ります。サンプルでは白と赤のグラデーションに指定してみました。 作成した四角形の横の大きさを200に指定します。右上のコスチューム一覧に表示される数字の「×」をはさんで左側が横軸、右側が縦軸の大きさになります。 出来上がったコスチュームは中心を合わせておいてください。

旗が押されたとき
- x座標を 0、y座標を 0 にする
上の課題でスプライトの幅を200に指定したので、このスプライトの左端が-100,右端は100になります。

矢印の作成
続いてスピードゲージの上部を左から右に移動し続ける矢印を作成します。
スプライトの選択から「Arrow1」というスプライトを取り込みます。今回使用するのは下向きの矢印(3番目のarrow1-c)になります。

Arrowのプログラムには移動の動き、および停止時にその座標から変数:スピードの値を決定する役割があります。
旗が押されたとき
- x座標を -100、y座標を 54 にする ちょうどスピードゲージの左端を指す位置
- スペースキーが押されるまで以下の処理(移動)を続ける
- x座標を10ずつかえる 矢印の移動速度、大きくすると難しくなる
- もしx座標が100より大きくなったら、x座標を-100に戻す
- 変数:スピードを (x座標 / 20)+ 5 にする
- メッセージ:スタート を送る
3,のスピードの値を指定するのがポイントです。今回はスピードを0から10の値の範囲で指定しましたが、0~100にしたいのであれば、(x座標 / 2)+ 50 にすればいいですね。

Catの作成
最後は設定した変数:スピード の力をもって移動するスプライトを作成します。サンプルでは Cat を使用していますが、ボールだったり動物だったり、なんでも結構です。
旗が押されたとき
- x座標を -160、y座標を -127 にする スタート位置を指定します
メッセージ「スタート」を受け取った時
- ずっと以下の処理を繰り返す 他の繰返し処理でもいいですよ
- 変数:スピード 歩動かす 1フレームの移動量になります

これで簡単なスライダー型ルーレットの完成です。
ファイブボックスでは、スクラッチやUnityの個別指導のオンラインレッスンを行っています。