2013-12-14 32 views
0

您好我已經使用本網站的教程製作了基於平鋪的遊戲http://www.wildbunny.co.uk/blog/2011...m-game-part-1/我的遊戲已完成,但我想爲其添加預加載器。如何使用flashDevelop將預加載器添加到我的遊戲中?

有希望更好理解的小背景。

FlashDevelop是我所有的as3文件和類,我也可以在這裏測試我的遊戲,我工作的很好。

Flash CS6是其中只有一個場景「場景1」的場景,該幀包含我所有基於圖塊的圖片(動畫片段)和正方形動畫,如果我雙擊一個movieClip(例如「球員「)它會進入內部,我有很多幀(跳躍,跑步等)。

我無法從這裏測試我的遊戲,它顯示錯誤(場景是NAN)。我認爲這是正常的不確定 - 無論如何,也許脫離主題。

我已經在網上找到適合我的情況的預加載程序教程,但找不到任何與flashDevelop和AS3一起使用flash。

回答

0

您將創建一個全新的項目「Actionscript 3 with preloader」,FD將生成一個預加載器類* .as文件和一個包含[frame]指令的主類文件。將preloader * .as文件複製到當前項目中,將指令從新項目的Main.as複製到項目的Main.as中,如果需要在兩個位置更改包名稱(在預加載器的getDefinitionByName()調用中和在指令中 - 全限定類需要的名字),將你想要的視覺效果添加到你的預加載器類中,然後設置好。

在我的情況下,該指令是這樣的:

[Frame(factoryClass="Geologist.Preloader")] 

該軟件包是Geologist和預加載的startup()功能是這樣的:

private function startup():void 
{ 
    var mainClass:Class = getDefinitionByName("Geologist.Main") as Class; 
    var theStage:Stage = this.stage; 
    theStage.addChild(new mainClass() as DisplayObject); 
    theStage.removeChild(this); 
} 
+0

我想你說的話,但我得到一個錯誤,說我的main.as中的一些變量是空的。我會繼續嘗試並讓你知道它是如何發生的。 – user3102529

+0

當然,舞臺將是空的。通過主類中的'ADDED_TO_STAGE'事件監聽器來解決這個問題。在監聽器中移動構造函數代碼,並將if(stage)init(null); else addEventListener(Event.ADDED_TO_STAGE,init);'作爲構造函數的唯一代碼。 – Vesper

+0

謝謝我現在沒有任何錯誤,屏幕變成藍色半秒鐘巫婆是我的舞臺背景然後遊戲出現,現在只需要編碼我的加載欄我認爲。當你在第一個關於添加視覺效果的回答中說過你的意思是加載欄和你在加載時看到了什麼,或者我是否必須添加所有的遊戲圖像才能正確加載? – user3102529