Toon posts:

[flash] dynamische MC name aanspreken in huidige level

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik heb een irritant probleem waar ik niet uit kom.
(Waarschijnlijk een onwijze NOOB probleem :( )

Ik heb een MC, die wordt geladen in een andere MC.
Nou wil ik een andere MC dynamisch aanspreken.

Voorbeeld code:
code:
1
2
3
4
5
6
var aSteden:Array = new Array("nl_bilt", "nl_dekooy", "nl_leeuwarden", "nl_maastricht", "nl_twente", "nl_woensdrecht");

for(i=0; i<aSteden.length; i++)
{
   trace(_root[aSteden[i]]);
}


Dit werkt perfectals het script en de MC's in de root staan, maar dat staan ze niet. En in welk level ze komen is nog niet bekend.
Het enig wat bekend is, is dat het script en de MS's in dezelfde level staan.

Ik moet dus iets hebben van:
this[aSteden[i]]
Maar dat werkt dus niet...

  • XangadiX
  • Registratie: Oktober 2000
  • Laatst online: 25-03 10:55

XangadiX

trepanatie is zóó kinderachtig

en als je this["aSteden" add i] probeert?

Stoer; Marduq


Verwijderd

Topicstarter
XangadiX schreef op zondag 24 juli 2005 @ 19:13:
en als je this["aSteden" add i] probeert?
Werkt ook niet.

Misschien is het handig om te weten dat het script een framescript is en dat de MC's op de stage staan.

Verwijderd

als je var aSteden en je trace loop bij elkaar staan, kan je er gewoon volgende van maken.

code:
1
trace(aSteden[i]);


overigens is aSteden een variabele en geen MC, maak je van aSteden een MC variabele, dan kun je het niveau of level vinden in de debugger.

Verwijderd

Topicstarter
Verwijderd schreef op maandag 25 juli 2005 @ 08:03:
als je var aSteden en je trace loop bij elkaar staan, kan je er gewoon volgende van maken.

code:
1
trace(aSteden[i]);


overigens is aSteden een variabele en geen MC, maak je van aSteden een MC variabele, dan kun je het niveau of level vinden in de debugger.
Ik heb het probleem inmiddels opgelost.
Het is idd een soortgelijke oplossing als hierboven gegeven is.

Uiteindelijk kwam ik erachter dat je ook objecten in een array kan zetten (ipv een string) en er later weer als object uit kan halen.

De code (heel simpel) is als volgt geworden:
PHP:
1
2
3
4
5
6
var aSteden:Array = new Array(nl_bilt, nl_dekooy, nl_leeuwarden, nl_maastricht, nl_twente, nl_woensdrecht);

for(i=0; i<aSteden.length; i++)
{
   trace(aSteden[i]);
}

[ Voor 39% gewijzigd door Verwijderd op 25-07-2005 08:47 ]