提供: Japanese Scratch-Wiki
(Y座標を () ずつ変えるから転送)
このきじは ひらがなでよめません。ごめんなさい。編集者向け:作成する
y座標を () ずつ変える | |
y座標を () ずつ変える
| |
カテゴリ | 動き |
タイプ | スタック |
y座標を () ずつ変えるブロック(動きブロック/スタックブロック)は、スプライトの y座標を現在の位置から指定した量だけ、変化させるブロックである。
使用例
ゲームなどでは、プレイヤーの操作によってスプライトを自由に動かしたい場合がある。このようなとき、y座標を () ずつ変える ブロック (とx座標を () ずつ変えるブロック) が役に立つ。なお、y 座標の値がとりえる範囲は、-180〜180である。
- 次の例は、ユーザーの操作でスプライトを上下に動かすためのスクリプトである。変数
「y速度」がスプライトの上下の動きをコントロールしており、これによって、スプライトの加速/減速が動きに反映される。
[y速度 v] を [0] にする ずっと もし <[上向き矢印 v] キーが押された> なら [y速度 v] を (2) ずつ変える end もし <[下向き矢印 v] キーが押された> なら [y速度 v] を (-2) ずつ変える end y座標を (y速度) ずつ変える もし <(y速度) > [0]> なら [y速度 v] を (-1) ずつ変える end もし <(y速度) < [0]> なら [y速度 v] を (1) ずつ変える end end
- y座標を () ずつ変えるブロックは、次のような「ジャンプ」を行うスクリプトでもよく使われる:
(8) 回繰り返す y座標を (5) ずつ変える (0.1) 秒待つ end (1) 秒待つ <[地面 v] に触れた> まで繰り返す y座標を (-5) ずつ変える (0.1) 秒待つ end
ただし、次の方法でもなめらかなジャンプは実現できる。
(0.5) 秒でx座標を (x座標) に、y座標を ((y座標) + (40)) に変える (1) 秒待つ <[地面 v] に触れた> まで繰り返す (0.125) 秒でx座標を (x座標) に、y座標を ((y座標) - (10)) に変える end
別のブロックによる表現
- 詳細は「代用ブロック一覧」を参照
このブロックの動作は次の3つの方法で再現できる:
y座標を ((y座標) + (移動する量)) にする x座標を (x座標) 、y座標を ((y座標) + (移動する量)) にする 定義 y座標を (移動する量) ずつ変える::custom [向きの一時保存 v] を (向き) にする //この定義では、「画面を再描画せずに実行する」をオンにしておく (0 v) 度に向ける (移動する量) 歩動かす (向きの一時保存) 度に向ける
関連項目
() 歩動かす • () 度回す • () 度に向ける • () へ向ける • x座標を () 、y座標を () にする • () へ行く • () 秒でx座標を () に、y座標を () に変える • () 秒で () へ行く • x座標を () ずつ変える • x座標を () にする • y座標を () ずつ変える • y座標を () にする • もし端に着いたら、跳ね返る • 回転方法を () にする • x座標 • y座標 • 向きその他のブロック
|