0
こんにちは、私は3つのクラスのMainintro.as、Gameplay.as、Lastscene.asを持っています。私はこのコードを使って別のクラスを呼び出しています..フレームは連続的に動きません...フレームはactionscript3.0で動きません
null object reference
エラーになりますが、私は の正しい名前を与えてくれた
Globe.self.realstage.click_mc.addEventListener(MouseEvent.CLICK,onClick);
:
Mainintro.as
package
{
import flash.display.MovieClip;
import flash.events.TimerEvent;
import flash.events.MouseEvent;
import com.greensock.*;
import com.greensock.easing.*;
import Globe;
public class MainIntro
{
public function MainIntro(Mc:MovieClip)
{
Globe.self.realstage = Mc;
Globe.self.realstage.intro_mc.stop();
Mc.intro_mc.play_mc.addEventListener(MouseEvent.CLICK, GameStart);
Mc.intro_mc.play_mc.buttonMode = true;
Mc.intro_mc.ins_btn.buttonMode = true;
var gameply:GamePlay = new GamePlay();
}
public function GameStart(e:MouseEvent):void
{
{
Globe.self.realstage.gotoAndPlay("game");
}
}
}
}
ここでは、このクラスファイル(Gameplay.as)内のコードはによって引き起こさpublic function onClick
で発生しますスタンスその後、私はそれが今では良い働いて停止しているフレームで停止を使用していた
Gameplay.as
package
{
import com.greensock.*;
import com.greensock.easing.*;
import flash.events.MouseEvent;
import flash.display.MovieClip;
import Globe;
public class GamePlay
{
var currentEntry:int = -1;
var aList:Array =
[
{card:Globe.self.realstage.joker_mc, x:605.55, y:195.45},
{card:Globe.self.realstage.king_mc, x:323.80, y:298.45},
{card:Globe.self.realstage.queen_mc, x:45.85, y:213.95},
{card:Globe.self.realstage.a_mc, x:605.55, y:195.45},
{card:Globe.self.realstage.ten_mc, x:323.80, y:298.45},
{card:Globe.self.realstage.five_mc, x:45.85, y:213.95},
{card:Globe.self.realstage.two_mc, x:605.55, y:195.45},
{card:Globe.self.realstage.nine_mc, x:323.80, y:298.45},
{card:Globe.self.realstage.four_mc, x:45.85, y:213.95},
];
public function GamePlay()
{
Globe.self.realstage.stop();
var gameply:LastScene = new LastScene();
Globe.self.realstage.click_mc.addEventListener(MouseEvent.CLICK,
onClick);
Globe.self.realstage.exit_mc.addEventListener(MouseEvent.CLICK,
lastScene);
}
public function lastScene(e:MouseEvent):void
{
Globe.self.realstage.gotoAndPlay("Scene");
}
public function onClick(e:MouseEvent):void
{
// Unsubscribe to avoid the mess with second click.
Globe.self.realstage.click_mc.removeEventListener(MouseEvent.CLICK,
onClick);
// Start process.
moveNext();
}
public function moveNext():void
{
Globe.self.realstage.currentEntry++;
// Stop the process if all the cards have been moved.
if (Globe.self.realstage.currentEntry >=
Globe.self.realstage.aList.length) return;
// Get the entry.
var anEntry:Object =
Globe.self.realstage.aList[Globe.self.realstage.currentEntry];
// Move the card.
Globe.self.realstage.TweenLite.to(Globe.self.realstage.anEntry['card'],
.4,
{x:Globe.self.realstage.anEntry['x'],y:Globe.self.realstage.anEntry['y'],
onComplete:moveNext});
}
}
}
タイムラインにエラーがあると、内部のすべてのスクリプトが無視されます。その結果、タイムラインはデフォルトの「再生」された動作に戻ります!したがって、エラーは無視されません**。あなたがさらに助けが必要な場合は、あなたの質問を編集する必要があります。おそらく 'Globe'で、エラーメッセージを追加し、もっと詳しく説明してください:) – someOne
' Globe.self.realstage.click_mc .. .etc ... etc': 'e.currentTarget.removeEventListener(MouseEvent.CLICK、 onClick);'? –