Javaプレイヤーのv39で現象を確認しました(バージョンはステージ左上の灰色の部分で確認できます)。
これは、この作品中のスクリプトで定義された「トップに戻る」というメッセージが、本来受け取るべきスクリプトの一部に届いていないために発生しているようです(スプライトの「表示する」や「隠す」と直接の関係はありません)。
メッセージ名を変えてみたり、「送って待つ」を試したりしましたが、改善しませんでした。
この現象は、Scratch上やFlashプレイヤー(v37)では発生しないため、Javaプレイヤーのバグと考えられます。
消極的な回避法ですが、Webブラウザー上で動かす場合は、Flashプレイヤーを使うようにするくらいしか思いつきません(ログイン後、個々の作品の右にあるTry the new playerを参照)。
今後のため、以下からバグレポートを送ることができます。
http://scratch.mit.edu/forums/viewforum.php?id=9
Offline
meshで2つ以上のPCを同時につなげることは可能ですか?おしえてください。
Last edited by takumi2000 (2011-11-16 04:14:58)
Offline
ネコにボールが当たった時の処理を、ネコとボールの両方のスクリプトで行なっているのが原因だと思います。Scratchはこれらのスクリプトを並行に処理しますが、どちらが先に実行されるかは不定です。そのため、ボール側のスクリプトが先に実行された場合は、即座にボールが右端に移動してネコと触れなくなり、ネコ側の減点や吹き出しの処理が行われなくなっていました。
これらを改良したものを以下に置きましたのでご覧ください。
http://scratch.mit.edu/projects/abee/2159032
Last edited by abee (2011-11-19 05:32:38)
Offline
どうもありがとうございました。改良版もありがとうございました。削除したつもりだったのですが、ballに「もしcatに触れたら」のスクリプトが残っていました。ちゃんと確認してなかったです。失礼しました。改良版ではcatに触れたときにballとstarからメッセージを送っていますが、重複していたスクリプトをballから削除するというやり方でもよいのでしょうか?
http://scratch.mit.edu/projects/ribbith/2159539
メッセージを送る側が異なることで何か処理に違いは出てくるのでしょうか?
Offline
このプログラムの動きだけを考えると違いはないと思います。
これは、プログラミングというより、オブジェクト指向分析や設計に関する話かもしれません。
今回のケースは、ある処理をどのオブジェクト(スプライト)が処理するのが適切かという議論です。これをオブジェクトの責任(responsibility)と呼びます。たとえば、スコアの処理はネコとボールのどちらが行うのがよりふさわしいかというようなことです。この判断基準の一つが、変更に対する強度(robustness)です。今はネコと星とボールだけですが、もっとキャラクターが増えた時に影響がどこまで及ぶか。具体的には複数のスプライトの複数のスクリプトを変える必要があるか、それとも、局所的な変更で済むかということを検討します。場合によっては、パフォーマンスとのトレードオフが発生することもあります。
Last edited by abee (2011-11-20 08:57:06)
Offline
http://scratch.mit.edu/projects/takumi2000/2187704
scrartch上で実行すると
スタンプのごみが出てしまいます。どうしてか教えてください。
Offline
abeeさんのmod作品がほしいです。どこにありますか?
Offline
Gamecenter wrote:
abeeさんのmod作品がほしいです。どこにありますか?
自分でもよく分からなくなっていたのでまとめてみました。
abee's scratch mods
Offline
ちゃんとメモしたり管理したりしてくださいよ
Offline
abeeさんすごい!
僕にあったmodまでよ用意してくれてる!
Offline
App StoreからScratch.app for iOSが削除された経緯については、以下の記事が参考になると思います。
「アラン・ケイの言語」を拒否したAppleに非難の声
現在は少し状況が変わっていて、App Storeから入手できないのは同じですが、jishihaさんのお陰で、ソースコードからアプリをビルドして動かすことが出来るようになっています。
Scratch のプロジェクトを iPhone/iPad 上で動かせる Scratch.app for iOS
jishihaさんに相談してみるとよいと思います。
Offline
http://scratch.mit.edu/projects/takumi2000/2277632
クリックしても反応しないときがあるんですが、なぜなのか教えてください。
Offline
takumi2000 wrote:
http://scratch.mit.edu/projects/takumi2000/2277632
クリックしても反応しないときがあるんですが、なぜなのか教えてください。
これはとても面白いバグです。問題は2箇所ありました。
修正したものを以下にアップしましたが、もう少し悩んでみてもよいかもしれません。
http://scratch.mit.edu/projects/abee/2277786
ヒントはステップ実行を使うこと、リストの中身を監視することです。
Last edited by abee (2012-01-17 09:56:46)
Offline