１つのスクリプトで考える

動作のタイルを引き出してならべることで、スクリプトをつくることができました。

スクリプトを簡単に作ることができるのですが、 たくさんのスクリプトが同時に(チクタクで)動いていると どのように動作しているのかわかりにくくなってしまいます。

ここでは１つのスクリプト だけを使った動作を考えてみましょう。

１つのもの(オブジェクト)について１つのスクリプトで考えましょう。

ものがいくつかあるときは、それぞれに１つです。

もちろん動かないオブジェクトにはスクリプトは不要です。

条件を含まないスクリプト

動作を表すタイルを並べて作ります。

進める

指定量だけ進みます

回す

指定角度だけ回転します

はねかえる

ウインドウの端にぶつかったとき向きを変える指定です

以下の方向に向く

指定したオブジェクトの方を向きます

１回の実行ごとに、並べた順に実行されます。

例

３つの命令(タイル)を並べました。

１回実行すると

いぬを５進める

いぬを５度回す

端にぶつかったら向きを変える

の順に行われます。

チクタクにすると、それが１秒間に８回行われます。

全体が１つのテストタイルのスクリプト

スクリプトの中にテストタイルを１つ配置し

テストの右に条件を

条件が成り立つときの処理をはいの右に

条件が成り立たないときの処理をいいえの右に

書きます。

注意

条件 は必ず記入すること

はい またはいいえ の少なくとも一方は記入すること

条件 には 「以下のモーフが次のものと重なっているか」 を使いましょう。

ドット の部分に相手の名前 を入れて使います。

次のように実行されます。

指定した相手と重なったときにははい の右に書いた動作が行われます。

ぶつかっていないときにはいいえ の右に書いた動作が行われます。

例

次のように実行されます。

いぬがおやつ と重なったときは

いぬを５進め

いぬを５度回します

いぬがおやつ と重なっていないときは

いぬを１０進めます

動作のタイルとテストタイルを並べたスクリプト

順に並べられたタイルはその順に実行されます。

テストタイルがあるとそこでは条件判定が行われ、 はい かいいえ のどちらかの処理が実行されます。

例

次のように実行されます。

いぬを５進めます

端にぶつかったら向きを変えます

いぬがおやつ と重なったときは

いぬを５度回します

いぬがおやつ と重ならなかったときは

いぬを５進めます

端にぶつかったら向きを変えます

だけが行われることになります。

応用

上記の考え方を組み合わせて使うことができます。

例

テストタイルを２つ使った例です。

どのような動きになるか考えましょう。