Skip to main content
emmau10371638
Inspiring
March 15, 2016
Question

how can I unLoadAndStop() previous SWF and Load a new SWF?

  • March 15, 2016
  • 1 reply
  • 498 views

go_level_2.addEventListener(MouseEvent.CLICK,level_2);

function level_2(event:MouseEvent)

{

var loader2:Loader = new Loader();

var loaderContext2:LoaderContext = new LoaderContext(false, ApplicationDomain.currentDomain);

var file2:File=File.applicationDirectory.resolvePath("level2.swf");

loader2.load(new URLRequest(file2.url), loaderContext2);

loader2.addEventListener("LEVEL_2",true);

addChild(loader2);

}

function finishLevel2(event:Event):void

{   var loader2:Loader;

loader2=event.target.loader;
loader2.parent.removeChild(loader2);
loader2.unloadAndStop();

}

//And the code in next level to remove level before add another.

var loader2:Loader;

function finish_game(event:Event):void

{

dispatchEvent(new Event("LEVEL_2",true));

}

I have a Main_SWF within 10 levels_SWF's.

I tried several codes but not one of these unload te previous game.

And the game begin slower and slower.

The last part of  developing a game for IOS is a "nightmare" i think.

i test the code on iOS simulator.

I hope you can help me.

This topic has been closed for replies.

1 reply

kglad
Community Expert
Community Expert
March 15, 2016

don't make your loader reference local to a function.:

var loader2:Loader = new Loader();

go_level_2.addEventListener(MouseEvent.CLICK,level_2);

function level_2(event:MouseEvent)

{

var loaderContext2:LoaderContext = new LoaderContext(false, ApplicationDomain.currentDomain);

var file2:File=File.applicationDirectory.resolvePath("level2.swf");

loader2.load(new URLRequest(file2.url), loaderContext2);

loader2.addEventListener("LEVEL_2",true);

addChild(loader2);

}

function finishLevel2(event:Event):void

loader2.parent.removeChild(loader2);
loader2.unloadAndStop();

}

emmau10371638
Inspiring
March 15, 2016

Thanks for the reply!!!

I have change my code like above.

but.....

1067: Impliciete afgedwongen omzetting van een waarde van het type Boolean in een niet-gerelateerd type Function.

This is the warning because the code

"loader2.addEventListener("LEVEL_2",true);" isn't good.

but that is the code to refer to the next level, i think.

//And the code in next level to remove level before add another.

var loader2:Loader;

function finish_game(event:Event):void

{

dispatchEvent(new Event("LEVEL_2",true));

}

kglad
Community Expert
Community Expert
March 15, 2016

the 2nd parameter should be a function.