私はFlashで動作する読み込み画面を取得しようとしています。Flash Actionscript 3.0ローディング画面
ゲームのすべてが、さまざまなシーンに設定されている「レイヤー1」で発生します:これは私のプロジェクトの設定方法である「レベル0」、「レベル1」などそのコード".as"ファイルで実行されます
新しいレイヤー "Preloader"に単純な読み込み画面(プログレスバー付き)を実装しようとしました。そのコードはレイヤの「アクション」で実行されます。
私は私が最初で、レイヤ1の「の.as」ファイルの負荷レベル0を持っていたので、その「アクション」にプリローダーのコードを置くことは最高のアイデアではなかったことを実現します。そのため、 "Preloader"と "Layer 1"のレイヤーは同時に実行しようとしました。これにより問題が発生しました。
今、私はプリローダーをそれ自身のシーンに入れようとしました。それは動作していません。ここで
は私がプリローダーのために使用して試したコードである - 「シーン」バージョン:
// This function loads the Preloader
public function loadPL(event:Event) {
// Load the Scene associated with the Preloader
this.gotoAndStop(1, "PL");
// Prevent the MovieClip (game) from playing right away
stop();
// Add an EventListener that calls the 'loading()' function
this.addEventListener(Event.ENTER_FRAME, loadingPL);
} // End of 'loadPL()' method
// 'loading()' function
// This function calculates how much of the game has been loaded vs. how much data
// the game contains. The loading progress bar is resized accordingly.
public function loadingPL(e:Event):void{
// How much data does the game have in all?
var totalData:Number = this.stage.loaderInfo.bytesTotal;
// How much data has been loaded so far?
var loadedData:Number = this.stage.loaderInfo.bytesLoaded;
// Scale the 'plBarIns' according to the loadedData:totalData ratio
plBarIns.scaleX = loadedData/totalData;
// If the 'loadedData' == 'totalData' (all of the game's data has been loaded), allow
// the game to play
if (loadedData == totalData) {
play();
// Remove the EventListener that calls the 'loading()' function. It's not needed now
this.removeEventListener(Event.ENTER_FRAME, loadingPL);
}
}
誰も私を助けてもらえますか?あなたが設定する必要がその後あなたは、フレーム1であなたのプリローダーを入れて、フレーム2に、プロジェクトの開始の残りの部分を持っている必要があり
おかげで、 クリスチャン
ありがとうございました!しかし、私は別の方法を試みました。以前の記事で触れたように、ゲームの各レベルは異なるシーンです。各レベルではそれぞれのシーンの最初のフレームが使用されます。私はプリローダーを自分のシーンに入れようとしました。ゲームが始まると、プリローダーシーンが読み込まれるはずです。その後、ゲームがロードされた後、レベル1が開始されます。それはうまくいかなかった。私はシーンの代わりにフレームに異なるレベルをすべて入れなければなりませんか?または、シーンと一緒にプリローダーを実装する方法はありますか? –
また、フレーム2の実際のインスタンスをドラッグすると、 "YourDocumentClass"型の変数がメインタイムライン上に作成されるため、フレーム2のgetDefinitionByNameを介してメイン文書クラスをインスタンス化することができますフレーム1でエクスポートされます。 – Triynko