0

ムービークリップがあり、このムービークリップ内でいくつかの Actionscript 変数を定義するとします。例えば

var majorValue:Number = 20;  
var minorValue:Number = 10;

デフォルトでは、ステージ上のこのムービークリップのすべてのインスタンスに、これらの値が設定されたこれらの変数があります。ここで、ステージ上にこのムービークリップの 3 つのインスタンスがあるとします。これらを「Moe」、「Larry」、「Curly」と呼びます。Moe と Larry をムービークリップのデフォルト インスタンスとして残したいとしますが、"Curly" インスタンスを微調整して、majorValue が 50、minorValue が 15 になるようにします。これを行うにはどうすればよいでしょうか?

私は指定してそれをやろうとしました:

Curly.majorValue = 50;
Curly.minorValue = 15;

親タイムラインでは、アクションスクリプトが最初に親クリップで実行され、次に子クリップで実行されるように見えるため、これは機能していないようです。つまり、「Curly」インスタンスの特別な値の宣言は、親クリップのアクション スクリプトの後に実行されるクリップのデフォルト宣言によって上書きされます。

特定のインスタンスのムービークリップのデフォルト変数をオーバーライドする方法を知っている人はいますか?

4

1 に答える 1

0

タイムラインの操作については、「疑わしい場合はキー フレームを追加してください」という古いヒントがあります。実際、可能であれば、タイムラインを完全に使用しないようにすることをお勧めします。

何が起こっているかについてのあなたの要約は、おそらくほぼ正しいと思います。実際には、インスタンスが適切にインスタンス化される前に、インスタンスのプロパティを更新しようとしています。インスタンス化されると、値はデフォルトにリセットされます。

stop解決策は、追加のフレームを追加し、インスタンスのプロパティを設定するコードを 2 番目のフレームに (アクションと共に) 配置することです。これにより、インスタンスがインスタンス化された後にコードが実行されるようになります。

于 2012-11-25T14:40:33.737 に答える