スプライトの 移動方法 ( いどうほうほう )


スプライトの 移動方法 ( いどうほうほう ) を学ぶ

スプライトの 位置 ( いち ) を 移動 ( いどう ) させる 方法 ( ほうほう ) は1つではありません。 具体的 ( ぐたいてき ) な 例 ( れい ) とそれぞれの 違 ( ちが ) いについて 説明 ( せつめい ) します。サンプルプロジェクトを 読 ( よ ) み 込 ( こ ) み、 実際 ( じっさい ) に 動 ( うご ) かしながら色々な 移動 ( いどう ) のさせ方を 覚 ( おぼ ) えていきましょう。

スプライトの 移動方法 ( いどうほうほう )

ファイルを読み込む 方法 ( ほうほう )

パソコンの中にあるサンプルプログラムをスクラッチで読み込んで 動 ( うご ) かしてみましょう。

  1. 公式 ( こうしき ) サイトを 開 ( ひら ) きます。
    https://scratch.mit.edu/
  2. 左上のメニューの「作る」をクリックします。

  3. 左上のファイルをクリックして、「コンピューターから読み込む」をクリックします。
  4. 「PC」 - 「ドキュメント」 - 「scratch_samples」の 順 ( じゅん ) にダブルクリックします。 そして、「MoveSample.sb3」を 選択 ( せんたく ) します。
  5. 以下 ( いか ) の 画面 ( がめん ) が出たら、OKをクリックします。
  6. ※次のいずれかの場合には「サンプルプログラムをダウンロードする方法」に 従 ( したが ) ってダウンロードし、 「scratch_samples」フォルダに 置 ( お ) いてください。
    ・「scratch_samples」フォルダがない
    ・「scratch_samples」フォルダ内にファイルがない
    ・サンプルプログラムのファイルを 誤 ( あやま ) って 削除 ( さくじょ ) してしまった
    ・サンプルプログラムのファイルを 誤 ( あやま ) って 変更 ( へんこう ) してしまった

読み込んだサンプルプロジェクトを 動 ( うご ) かしてみる

  • 「movesample.sb3」の読み込みができたらをクリックしましょう。
    右下に 並 ( なら ) んでいる5つのスプライトのいずれかをクリックすると そのスプライトが 選択 ( せんたく ) された 状態 ( じょうたい ) になり、 動 ( うご ) かすことができるようになります。
  •  

選択 ( せんたく ) されているスプライトをクリックしてみる

選択 ( せんたく ) されているスプライトをクリックすると 自動的 ( じどうてき ) に 移動 ( いどう ) します。それぞれの 動 ( うご ) き方を見てみましょう。

    • スプライト
    •  
    • 説明 ( せつめい )
    • 400歩 動 ( うご ) かすを使って 移動 ( いどう ) させています。

      ?歩 動 ( うご ) かすを使うとそのスプライトが向いている方向へ 移動 ( いどう ) しますので、 先に 動 ( うご ) きたい方向へ向けておく 必要 ( ひつよう ) があります。

      右に 移動 ( いどう ) させたければ、まずスプライトを右(90度)に向けてから ?歩 動 ( うご ) かすで 移動 ( いどう ) させます。

      左に 移動 ( いどう ) させたければ左(-90度)、上であれば0度、 下であれば180度に向けてから?歩 動 ( うご ) かすで 移動 ( いどう ) させます。

      このサンプルではをクリックした時に 90度に向ける(右に向ける)を実行していますので、 右に向かって 移動 ( いどう ) します。

      移動 ( いどう ) した後に180度回して左を向いた 状態 ( じょうたい ) にしていますので、 もう一度クリックすると左に400歩動いた先に 移動 ( いどう ) します。

      400歩 動 ( うご ) かすという名前ですが、 スプライトが1歩ずつ 移動 ( いどう ) していくわけではなく、400歩動いた先に 瞬間 ( しゅんかん ) 移動 ( いどう ) しているように見えます。

      移動先 ( いどうさき ) に向かって進む様子を見せたい場合はスプライト3~5で使用している 方法 ( ほうほう ) を使います。

    • スプライト
    •  
    • 説明 ( せつめい )
    • x 座標 ( ざひょう ) を400ずつ 変 ( か ) えるを使って 移動 ( いどう ) させています。

      移動 ( いどう ) のしかたは400歩 動 ( うご ) かすと同じです。 ただし、スプライトの向きに 関係 ( かんけい ) なく右に 移動 ( いどう ) します。

      x 座標 ( ざひょう ) を?ずつ 変 ( か ) えるを使って左に 移動 ( いどう ) させたい場合はx 座標 ( ざひょう ) を-400ずつ 変 ( か ) えるとします。 スプライトを左に向ける 必要 ( ひつよう ) はありません。

      y 座標 ( ざひょう ) を10ずつ 変 ( か ) える、 y 座標 ( ざひょう ) を-10ずつ 変 ( か ) えるを使えばそれぞれ上に10、 下に10 移動 ( いどう ) させることができます。

      座標 ( ざひょう ) についてはこちらで 説明 ( せつめい ) しています。

    • スプライト
    •  
    • 説明 ( せつめい )
    • 2秒でx 座標 ( ざひょう ) を200に、y 座標 ( ざひょう ) を50に 変 ( か ) えるを使って 移動 ( いどう ) させています。

      この 方法 ( ほうほう ) ではスプライトが 徐々 ( じょじょ ) に 移動 ( いどう ) している様子が 表示 ( ひょうじ ) されます。

      移動 ( いどう ) する前の 座標 ( ざひょう ) をx 座標 ( ざひょう ) を-200、 y 座標 ( ざひょう ) を0としていますので右方向だけでなく上方向にも 移動 ( いどう ) します。


      右に 移動 ( いどう ) し終わったら、2秒でx 座標 ( ざひょう ) を-200に、y 座標 ( ざひょう ) を0に 変 ( か ) えるを実行して元の 位置 ( いち ) に 戻 ( もど ) しています。

    • スプライト
    •  
    • 説明 ( せつめい )
    • 5歩 動 ( うご ) かすを200回くり返すことで 移動 ( いどう ) させています。

      をクリックした時に90度に向ける (右に向ける)を実行していますので、 まず右に向かって5歩ずつ 移動 ( いどう ) し、 右端 ( みぎはし ) に着いたら 跳 ( は ) ね返り、 左に向かって 移動 ( いどう ) していきます。5歩×200回=1000歩 移動 ( いどう ) して止まります。

      1000歩 動 ( うご ) かすを使うと1000歩動いた先に 瞬間 ( しゅんかん ) 移動 ( いどう ) してしまいますが、 5歩 動 ( うご ) かすをくり返すと、 5歩ずつ 移動 ( いどう ) している様子が 表示 ( ひょうじ ) されます。


      もし 端 ( はし ) に着いたら、 跳 ( は ) ね返るを 200回くり返すの外 側 ( がわ ) (くり返すの後)に 置 ( お ) くと、 どのように 動 ( うご ) くのか 試 ( ため ) してみましょう。


      右端 ( みぎはし ) に着いた時点では 跳 ( は ) ね返らずに右に進み 続 ( つづ ) けようとします。 そして1000歩 移動 ( いどう ) し終わったら 跳 ( は ) ね返って左を向いた 状態 ( じょうたい ) で止まります。 ( 右端 ( みぎはし ) にずっといて、しばらくしたら左を向いて止まるという見え方になります)

    • スプライト
    •  
    • 説明 ( せつめい )
    • 135度に向けるで右下に向けてから 10歩×500回 動 ( うご ) かしています。 端 ( はし ) に着いたら 跳 ( は ) ね返ります。

回転について

  • スプライトの 動 ( うご ) かしかたを5つご 紹介 ( しょうかい ) しましたが、左を向いたり、 跳 ( は ) ね返ったときに上下も入れ 替 ( か ) わって 逆立 ( さかだ ) しているようになってしまう点が気になると思います。

    これはスプライトの 回転方法 ( かいてんほうほう ) を左右のみにしてあげれば 解決 ( かいけつ ) します。
    左右のみにする 方法 ( ほうほう ) は2つあります。

方法 ( ほうほう ) その1

  • を実行します。 実行した後は見た目の向きの 変化 ( へんか ) が左右のみになります。

方法 ( ほうほう ) その2

  • スプライトの向きを 表示 ( ひょうじ ) し、回転の 種類 ( しゅるい ) をから に 変更 ( へんこう ) します。
    を 選択 ( せんたく ) すると左右にも 変化 ( へんか ) しなくなります。
    「1」スプライトの「2」向きをクリックしてスプライトの向きをである「3」を 表示 ( ひょうじ ) させて実行します。

    こうすると-90度(左向き)にしても 逆 ( さか ) さになりません。

    これはあくまで見た目(コスチューム)の回転に対する 設定 ( せってい ) なので 移動 ( いどう ) には 影響 ( えいきょう ) しません。 180度に向ければ下方向に 移動 ( いどう ) します。

選択 ( せんたく ) されているスプライトを 矢印 ( やじるし ) キーで 動 ( うご ) かしてみる

次にキーボードの 操作 ( そうさ ) でスプライトを 動 ( うご ) かす 方法 ( ほうほう ) をご 紹介 ( しょうかい ) します。
矢印 ( やじるし ) キーを 押 ( お ) すと 選択 ( せんたく ) されているスプライトが 動 ( うご ) きます。それぞれのスプライトの 動 ( うご ) き方を見てみましょう。

    • スプライト
    •  
    • 説明 ( せつめい )
    • 上下左右の 矢印 ( やじるし ) キーが 押 ( お ) されたときのイベントを受けたらそれぞれ 座標 ( ざひょう ) を 変更 ( へんこう ) します。

      サンプルプログラムではx 座標 ( ざひょう ) を?ずつ 変 ( か ) える、 y 座標 ( ざひょう ) を?ずつ 変 ( か ) えるを使っていますが、 スプライト4のように 押 ( お ) した 矢印 ( やじるし ) キーの方向に向けてから 5歩 動 ( うご ) かすとしても 構 ( かま ) いません。

    • スプライト
    •  
    • 説明 ( せつめい )
    • 右向き 矢印 ( やじるし ) キーが 押 ( お ) されたら x 座標 ( ざひょう ) を5ずつ 変 ( か ) えます。

      他の3つの方向に対しても同じようにします。

      これらはくり返してチェックし 続 ( つづ ) ける 必要 ( ひつよう ) があります。

    • スプライト
    •  
    • 説明 ( せつめい )
    • 各方向の 矢印 ( やじるし ) キーが 押 ( お ) されていることをチェックして 座標 ( ざひょう ) を 変 ( か ) える点はスプライト2と同じです。

      スプライト2では1つのキーが 押 ( お ) されていても他のキーが 押 ( お ) されているのかのチェックをしていますが、 スプライト3では右が 押 ( お ) されていない場合だけ 残 ( のこ ) りのキーをチェックします。

      左右のどちらも 押 ( お ) されていなければ上のキーをチェックし、 3つとも 押 ( お ) されていない場合だけ下のキーをチェックします。

      スプライト2と3では 複数 ( ふくすう ) のキーを同時に 押 ( お ) した場合の 動 ( うご ) き方が 違 ( ちが ) います。

      スプライト2で右向き 矢印 ( やじるし ) キーと左向き 矢印 ( やじるし ) キーを両方とも 押 ( お ) すと、 右に5、左に5 移動 ( いどう ) するので 結果的 ( けっかてき ) にどちらにも 移動 ( いどう ) しません。

      右向き 矢印 ( やじるし ) キーと下向き 矢印 ( やじるし ) キーを両方とも 押 ( お ) すと右下に 移動 ( いどう ) します。

      スプライト3の場合は右向き 矢印 ( やじるし ) キーと左向き 矢印 ( やじるし ) キーを両方とも 押 ( お ) したり、 右向き 矢印 ( やじるし ) キーと下向き 矢印 ( やじるし ) キーを両方 押 ( お ) したりしても右方向にだけ 移動 ( いどう ) します。

      右向き 矢印 ( やじるし ) キーが 押 ( お ) されていたら 残 ( のこ ) りの 矢印 ( やじるし ) キーはチェックしないため、 このような 動 ( うご ) きとなります。

    • スプライト
    •  
    • 説明 ( せつめい )
    • スプライト2とほぼ同じですがスプライト4では 矢印 ( やじるし ) キーの方向に向きを 変 ( か ) えた後に5歩 動 ( うご ) かすで 移動 ( いどう ) しています。

      スプライト2では左右に 移動 ( いどう ) する時に見た目の向きを 変 ( か ) えずに 移動 ( いどう ) していますが、 スプライト4では 動 ( うご ) く方向を向いています。

      スプライト2でも向きを 変 ( か ) えてから 座標 ( ざひょう ) を 変更 ( へんこう ) すれば同じ 動 ( うご ) きになります。

    •  
    • スプライト
    •  
    • 説明 ( せつめい )
    • 右向き 矢印 ( やじるし ) キーを 押 ( お ) すと、スプライトが右へ回転します。
      左向き 矢印 ( やじるし ) キーの場合は左へ回転します。
      上向き 矢印 ( やじるし ) キーを 押 ( お ) すとスプライトが向いている方向へまっすぐ進みます。
      下向き 矢印 ( やじるし ) キーを 押 ( お ) すとスプライトの向きの 逆 ( ぎゃく ) の方向へ進みます(後ろへ下がります)。
      それぞれのキーを 押 ( お ) し 続 ( つづ ) けると次のように 動 ( うご ) きます。

    •  
    •  
    •  

2つのキーを同時に 押 ( お ) している時の 動 ( うご ) き

4つのうちのどれか一つの 矢印 ( やじるし ) キーを 押 ( お ) した場合、 スプライト1~4はほぼ同じ 動 ( うご ) き方をしますが、 左右のキーを同時に 押 ( お ) すというように2つ以上のキーを同時に 押 ( お ) した場合はそれぞれ 違 ( ちが ) う 動 ( うご ) き方をします。
左右のキーを同時に 押 ( お ) した場合と右下のキーを同時に 押 ( お ) した場合のそれぞれのスプライトの 動 ( うご ) き方を 説明 ( せつめい ) します。

    • スプライト
    •  
    • 説明 ( せつめい )
    • 右向き 矢印 ( やじるし ) キーのみが 押 ( お ) されている場合は右に5 移動 ( いどう ) (+5 移動 ( いどう ) )します。

      左向き 矢印 ( やじるし ) キーのみが 押 ( お ) されている場合は左に5 移動 ( いどう ) (-5 移動 ( いどう ) )します。

      両方のキーが 押 ( お ) されている場合、後に 押 ( お ) された方のキーのみが実行され 続 ( つづ ) けます。

      例 ( たと ) えば右、左の 順 ( じゅん ) に 押 ( お ) した場合、ほぼ同時であったとしても左に 移動 ( いどう ) し 続 ( つづ ) けます。

      左、右の 順 ( じゅん ) に 押 ( お ) すと右に 移動 ( いどう ) し 続 ( つづ ) けます。

    • スプライト
    •  
    • 説明 ( せつめい )
    • 右向き 矢印 ( やじるし ) キーのみが 押 ( お ) されている場合は右に5 移動 ( いどう ) (x方向に+5 移動 ( いどう ) )します。

      下向き 矢印 ( やじるし ) キーのみが 押 ( お ) されている場合は下に5 移動 ( いどう ) (y方向に-5 移動 ( いどう ) )します。

      両方のキーが 押 ( お ) されている場合、後に 押 ( お ) された方のキーのみが実行され 続 ( つづ ) けます。

      例 ( たと ) えば右、下の 順 ( じゅん ) に 押 ( お ) した場合、ほぼ同時であったとしても下に 移動 ( いどう ) し 続 ( つづ ) けます。

      下、右の 順 ( じゅん ) に 押 ( お ) すと右に 移動 ( いどう ) し 続 ( つづ ) けます。

    • スプライト
    •  
    • 説明 ( せつめい )
    • まず右に5 移動 ( いどう ) (+5 移動 ( いどう ) )し、次に左に5 移動 ( いどう ) (-5 移動 ( いどう ) )するので同じ場所からずっと 動 ( うご ) きません。

      見た目の向きも 変 ( か ) わりません。

    • スプライト
    •  
    • 説明 ( せつめい )
    • 右に5 移動 ( いどう ) し、次に下に5 移動 ( いどう ) をくり返して右下へ 移動 ( いどう ) し 続 ( つづ ) けます。

    • スプライト
    •  
    • 説明 ( せつめい )
    • 右向き 矢印 ( やじるし ) キーが 押 ( お ) されているので右に5 移動 ( いどう ) (+5 移動 ( いどう ) )します。

      左向き 矢印 ( やじるし ) キーが 押 ( お ) されているかどうかは 確認 ( かくにん ) されないので左には 動 ( うご ) きません。

      よって右に 移動 ( いどう ) し 続 ( つづ ) けます。 判定 ( はんてい ) の 順番 ( じゅんばん ) (ブロックの 順番 ( じゅんばん ) )を入れ 替 ( か ) えて 左向き 矢印 ( やじるし ) キーの 判定 ( はんてい ) を先にすると左に 移動 ( いどう ) し 続 ( つづ ) けます。

      ただしスプライトが向いている方向は 変 ( か ) わりません(後ろに向かって 移動 ( いどう ) しているように見えます)。

    • スプライト
    •  
    • 説明 ( せつめい )
    • 右向き 矢印 ( やじるし ) キーが 押 ( お ) されているので右に5 移動 ( いどう ) します。

      下向き 矢印 ( やじるし ) キーが 押 ( お ) されているかどうかは 確認 ( かくにん ) されないので下には 動 ( うご ) きません。

      よって右に 移動 ( いどう ) し 続 ( つづ ) けます。 判定 ( はんてい ) の 順番 ( じゅんばん ) (ブロックの 順番 ( じゅんばん ) )を入れ 替 ( か ) えて 下向き 矢印 ( やじるし ) キーの 判定 ( はんてい ) を先にすると下に 移動 ( いどう ) し 続 ( つづ ) けます。

      ただしスプライトが向いている方向は 変 ( か ) わりません。

    • スプライト
    •  
    • 説明 ( せつめい )
    • まず右(90度)を向いて、その方向に5 移動 ( いどう ) (+5 移動 ( いどう ) )します。

      次に左(-90度)を向いて、その方向に5 移動 ( いどう ) (-5 移動 ( いどう ) )するので同じ場所からずっと 動 ( うご ) きません。

      右を向いた後に左を向くので左を向き 続 ( つづ ) けます。

      判定 ( はんてい ) の 順番 ( じゅんばん ) (ブロックの 順番 ( じゅんばん ) )を入れ 替 ( か ) えて 左向き 矢印 ( やじるし ) キーの 判定 ( はんてい ) を先にすると、 位置 ( いち ) は 変 ( か ) わりませんが右を向き 続 ( つづ ) けるようになります。

    • スプライト
    •  
    • 説明 ( せつめい )
    • まず右(90度)を向いて、その方向に5 移動 ( いどう ) します。

      次に下(180度)を向いて、その方向に5 移動 ( いどう ) します。

      右を向いた後に下を向くので下を向いた 状態 ( じょうたい ) で右下へ 移動 ( いどう ) し 続 ( つづ ) けます。

      判定 ( はんてい ) の 順番 ( じゅんばん ) (ブロックの 順番 ( じゅんばん ) )を入れ 替 ( か ) えて下向き 矢印 ( やじるし ) キーの 判定 ( はんてい ) を先にすると、 右を向いた 状態 ( じょうたい ) で右下へ 移動 ( いどう ) し 続 ( つづ ) けるようになります。

    • スプライト
    •  
    • 説明 ( せつめい )
    • 現在 ( げんざい ) の向きから右へ5度回転します。

      次に左へ5度回転します(最初の向きに 戻 ( もど ) ります)。

      左右に同じ角度だけ回転するので向きは 変 ( か ) わりません。

      上下を両方とも 押 ( お ) した場合は、前に5、後ろに5 移動 ( いどう ) するので同じ 位置 ( いち ) にい 続 ( つづ ) けます。

    • スプライト
    •  
    • 説明 ( せつめい )
    • 現在 ( げんざい ) の向きから右へ5度回転します。

      次に後ろへ5 移動 ( いどう ) します。

      それをくり返し、後ろに進みながら右に 回転移動 ( かいてんいどう ) します。

      右と上を両方とも 押 ( お ) した場合はスプライトが前に進みながら右に 回転移動 ( かいてんいどう ) します。

位置 ( いち ) ( 座標 ( ざひょう ) )の 説明 ( せつめい )

    • 説明 ( せつめい )
    • 画面上 ( がめんじょう ) の 位置 ( いち ) を 座標 ( ざひょう ) といいます。

      座標 ( ざひょう ) には左右の 位置 ( いち ) を表すx 座標 ( ざひょう ) と上下の 位置 ( いち ) を表すy 座標 ( ざひょう ) があります。

      右に行くほどx 座標 ( ざひょう ) が大きくなり、上に行くほどy 座標 ( ざひょう ) が大きくなります。

      位置 ( いち ) を表す 座標 ( ざひょう ) を(x 座標 ( ざひょう ) , y 座標 ( ざひょう ) )のように表すことにします。

      Scratchの 画面 ( がめん ) では真ん中が(0, 0)となります。4 隅 ( すみ ) の 座標 ( ざひょう ) は次のような 値 ( あたい ) となります。

      右上 隅 ( すみ ) (240, 180)、右下 隅 ( すみ ) (240, -180)、左上 隅 ( すみ ) (-240, 180)、左下 隅 ( すみ ) (-240, -180) との 値 ( あたい ) が そのスプライトの 現在 ( げんざい ) の 座標 ( ざひょう ) です。

      x 座標 ( ざひょう ) を 変更 ( へんこう ) などを使って 値 ( あたい ) を 変更 ( へんこう ) すると、そのスプライトの 位置 ( いち ) が 変 ( か ) わります。

      の 座標 ( ざひょう ) を 変更 ( へんこう ) してみて、 どの 位置 ( いち ) に 表示 ( ひょうじ ) されるのかを 確認 ( かくにん ) してみましょう。 ペンの 現在 ( げんざい ) の 座標 ( ざひょう ) の 値 ( あたい ) は右上に 以下 ( いか ) のように 表示 ( ひょうじ ) されます。

    •  
    • 他のスプライトでも、そのスプライトを選んでx 座標 ( ざひょう ) 、 y 座標 ( ざひょう ) にチェックをつければそのスプライトの 座標 ( ざひょう ) が 表示 ( ひょうじ ) されます。

^