コンテンツにスキップ

Scratch:「端にぶつかったら跳ね返る」をつかわない跳ね返り

概要

内容

Scratchには「端にぶつかったら跳ね返る」という便利なブロックがあるが、これを使わずに跳ね返りを作ってみる。

対象

Scratchを一通りやり尽くした子ども

画面

stage1.png

「端にぶつかったら跳ね返る」を使う場合

普通はこんなプログラムになります。

script1.png

導入:XY座標で動かす

あえて「歩動かす」を使わずに座標でスプライトを動かしてみよう。

手順1:X座標を動かすと

script2.png

  • 右に進む

手順2:Y座標を動かすと

script3.png

  • 上に進む

手順3:X座標、Y座標ともに動かすと

script4.png

  • ななめに進む

手順4:数字を変えると?(1)

script5.png

  • 角度が変わる!

手順5:数字を変えると?(2)

script7.png

  • 数字をマイナスにすると逆に進む。

本格的なプログラム:スピードを導入しよう

手順1:X方向のスピードとY方向のスピードを変数にしよう

script8.png

手順2:右の壁を作ってみる。

stage2.png

手順3:右の壁で跳ね返るスクリプト

script6.png

※このあとは、左、上、下に壁を作って跳ね返るようにしてみる。

応用例

  • 壁を作らずに跳ね返るようにする。(座標で判定する)

  • 壁に跳ね返るたびにスピードが遅くなるようにする。