提供:Japanese Scratch-Wiki

このきじは ひらがなでよめます。ひらがなでよむ
もし端に着いたら、跳ね返る
もし端に着いたら、跳ね返る
カテゴリ 動き
タイプ スタック

もし端に着いたら、跳ね返るブロック動きブロックスタックブロック)は、() 歩動かすなどの座標を変えるブロックを実行したときに、スプライトがステージの端に触れたかどうかを調べて、もし端に触れていた場合は、スプライトの向きをやって来た方向と逆にするブロックである。なお、この逆となる角度については、画面の端と直角になる線を基準に決定される。

この逆となる角度は、正確ではない場合がある。例えば、14度で右端にぶつかった場合、本来-14度になるはずだが、実際には-14.000000000000028度になる。1度で右端にぶつかった場合に至っては、本来-1度になるはずだが、-11.311610878420467度になってしまう。

使用例

  • スプライトの一部がスクリーンから見えなくなるのを防ぐ(この用途では、直後に() 度に向けるブロックを置いて、反射を止めるケースが多い)
  • 反射させる
  • Pong(ポン)」のようなゲームで、スプライトを画面端で跳ね返らせる
@greenFlag が押されたとき::events hat
ずっと
もし端に着いたら、跳ね返る
(5) 歩動かす
  • Fishのようなゲームでも使用される
ずっと
@turnright ((-10) から (10) までの乱数) 度回す
(3) 歩動かす
もし端に着いたら、跳ね返る
(0.01) 秒待つ

跳ね返るブロック

Suggestion(提案)フォーラムでは、たびたびシンプルな「跳ね返る」ブロックを導入するよう要望が出されている。これは、スプライトが他のスプライトや色に衝突したときに跳ね返るというブロックである。(参照:[1][2][3](英語)) しかし、このような要望は「いろいろな形状の物体との跳ね返りを微積分なしで実現するのは不可能」という理由で却下されている。

出典

Cookieは私達のサービスを提供するのに役立ちます。このサービスを使用することにより、お客様はCookieの使用に同意するものとします。