2017-02-21 5 views
0

のは、私はムービークリップにActionScriptのパネル内の変数があるとしましょう親から変数を呼び出す方法は? AS3

parent_mc:このムービークリップ内の

var ispaused:Boolean = false; 

は、独自のActionScriptを使用して別のムービークリップです

child_mc:

if (!ispaused) 
{ gotoAndPlay(1); } 

子ムービークリップ内でアクションスクリプトを処理するときに、親から変数を呼び出すにはどうすればよいですか?

答えて

0

エヘン...

if (parent.ispaused) // ... 

そして、これは時間の型キャストをコンパイルするため、動作しない場合:

if (parent["ispaused"]) // ... 

それとも、型キャストすることができます

if ((parent as ParentClass).ispaused) // ... 
+0

補正がMovieClipの親に呼ばれる偽

機能doSomethingの:これらは働くかもしれないが、私は仕事にそれらを取得することができませんでした – Koden

0

私が実際に持っていますこれは親からの変数を呼び出すための適切な方法であることがわかりました。文字通りMovieClip(ルート)はchanにはありませんge。

if ((MovieClip(root).entervariablename)) 
{ dothisaction; } 

または親のMovieClipのタイムライン(私はあなたのコードは、それの上に置かれていることを想定)で

if (thistrigger) 
{ (MovieClip(root).entervariablename) = desiredvalue; } 
0

変数の値を変更する:子MovieClipのタイムライン上

var isPaused:Boolean=false; 
function doSometing():void{ 
    trace("function doSomething called in parent MovieClip"); 
} 

を:

import flash.display.MovieClip; 
var parentClip:MovieClip = (parent as MovieClip); 
var parentPaused:Boolean = parentClip.isPaused; 
if (!parentPaused){ 
    trace("parent clip isPaused = " + parentPaused); 
    parentClip.doSometing(); 
    // Do what you want here 
} 

出力:

親クリップisPaused =

関連する問題