変数を使って速さを変化させる

速くなったり、遅くなったり、止まったりと変化のある動きをつける方法を考えます。

「進める」を使ったスクリプトの場合

こうすると一定速度５で動きます。

数値部分を増やすと一度に動く量が増えて、速い動きになります。

進める量を０にすると、チクタクにしても止まっています。

これらを条件(テストタイル)の中に記述することで、速さを変化させることができます。

座標に値を加える方法でも同様です。

移動量を変数で表す

上の例では移動量をスクリプトタイル内の数値で指定していましたが、 移動量を変数の値で指定することもできます。

変数を利用すると複雑な処理が簡単に書けます。

動かすオブジェクトのビューアを開き、変数を作成します。

変数の名前は「移動量」としました。

スクリプト内で移動量を数値で指定していた部分を、変数名で置き換えます。

座標に値を加える方法でも同様です。

これで動作させてみると、 変数の値を変えることで動きの速さを変えることができるのが分かります。

移動量を変化させる

移動量を表す変数の値をスクリプト内で変えるには、 テストタイルの中で変数の値を指定します。

ある条件が成り立ったとき、移動量を５にする例です。

赤で示した部分には条件を記述すること

移動量を０にすると止まります。

移動量を少しずつ変える

だんだん速くするには移動量に１を加えます。

この場合、移動量が増えすぎないように次のようなテストタイルを加える必要があります。

だんだん遅くするには１を加える代わりに１を引けばよい。 この場合も、移動量が小さくなりすぎないようにテストタイルで記述します。

移動量を０にした時の注意

このようにして動きの速さを変化させることができますが、 移動量が０になって動きが止まってしまい、 画面上で変化がなくなることが考えられます。

動かなくなった状態から、動き始めるための処理を考えましょう。

例えば次のような方法があります。

方法１

あるオブジェクトの動きが止まっても、他のオブジェクトが動くことで画面上で変化があるようにする。

方法２

カウンタを用いて、止まっている時間を指定する。