== 処理の順番を考える == スクリプト内で命令をどの順にならべたらよいのか考えましょう。 ---- === スクリプト内では順番に実行される === スクリプト内にいくつかの命令を並べたときは 上から順に実行されます。 3つの命令を並べた例です。 . {{attachment:junban4.png}} 次の3つが順に実行されます。 1. ウサギを進める5 1. 入れ物のカーソル位置 ← 2 1. ウサギの画像 ← 入れ物のカーソル位置の画像 !を押して1回だけ実行してみると分かります。 チクタクでは分かりにくいかもしれません。 ---- === 1つのスクリプトで考える === つぎの2つのスクリプトを考えます。 . {{attachment:junban1.png}} . {{attachment:junban2.png}} 1回だけ実行したり、どちらかだけをチクタクにするのはよいのですが 2つともチクタクにすると、全体としての動作が分かりにくくなってしまいます。 2つとも実行したいのであれば 1つのスクリプトにまとめたほうが分かりやすい。 . {{attachment:junban3.png}} '''チクタク'''にするスクリプトは 1つのオブジェクトにたいして'''1つだけ'''にして考えましょう。 ---- === 並べる順が重要 === 正しい順に並べないとうまく動作しないものもあります。 最初の例です。 . {{attachment:junban4.png}} 1回だけ実行するとして考えると . 入れ物のカーソル位置 ← 2 の後で . ウサギの画像 ← 入れ物のカーソル位置の画像 を行わないとだめなことがわかります。 判定により画像を変える場合も 同じ順番に並べればよい。 . {{attachment:junban5.png}} ウサギが . 赤色のところに来たときはカーソル位置1の画像に . そうでないときはカーソル位置2の画像になります。 ---- === 複数の判定が必要なとき === 複数の判定が必要なときはさらに注意が必要です。 ウサギが . 黄色のところに来たときはカーソル位置3の画像に . そうでないときはカーソル位置2の画像 にするときも、同様に書けます。 . {{attachment:junban6.png}} ==== 問題 ==== ウサギが . 赤色のところに来たときはカーソル位置1の画像に . 黄色のところに来たときはカーソル位置3の画像に . そうでないときはカーソル位置2の画像に するにはどうしたらよいでしょうか。 ==== 間違い ==== . {{attachment:junban7.png}} 上の2つのスクリプトのテストの部分を並べたものです。 . 赤色のテストをした後、黄色のテストをしています。 ウサギが赤色のところにいるときの処理はつぎのようになります。 1. ウサギを進める 1. 赤色のテストが成り立つので、カーソル位置は1になる 1. 黄色のテストが成り立たないので、カーソル位置は2になる 1. カーソル位置2の画像が表示される ==== 正解1 ==== 赤色と重なっていないときだけ 黄色のテストを行えばよいので、 赤色のテストの'''いいえ'''の部分に黄色のテストを入れます。 . {{attachment:junban8.png}} ==== 正解2 ==== このような方法もあります。 . {{attachment:junban9.png}}