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