PDA

Volledige versie bekijken : MovieClip dupliceren


eindbaas
%Europe/Berlin %916 %2006, 21:59
Ik heb een afbeelding ingeladen mbv loadClip, en wil diezelfde afbeelding nog eens gebruiken om eronder een spiegelend effect te creeren - apple, web2.0, je kent het wel. Ik heb dus die ingeladen mc en wil een kopie ervan in een andere mc stoppen. Hoe doe ik dit? Ik heb naar duplicateMovieClip gekeken, maar snap eigenlijk niet wat die nou doet (terwijl het me zo eenvoudig in de orgen klonk).

wat doet deze regel code precies? ik wil hier bereiken dat er een kopie van de mc original in de mc mirrored belandt.

mirrored = original.duplicateMovieClip("mirrored",mirrored.getNextHighestDepth());

M0L
%Europe/Berlin %918 %2006, 22:03
Zo zou het moeten werken:
duplicateMovieClip(original,"mirrored",getNextHighestDepth());
Dan wordt de MovieClip original gekopieerd en de nieuwe MovieClip heet dan mirrored

eindbaas
%Europe/Berlin %920 %2006, 22:06
maar waar komt die kopie dan terecht? dat vat ik niet helemaal geloof ik.

M0L
%Europe/Berlin %922 %2006, 22:07
Wat bedoel je met waar?
Waar op het scherm of op welke tijdlijn?

eindbaas
%Europe/Berlin %922 %2006, 22:09
in welke mc - if any. of wordt hij uberhaupt niet op de stage gezet?

M0L
%Europe/Berlin %923 %2006, 22:10
Hij wordt op de stage gezet in dezelfde tijdlijn als de orginal.

Dus b.v.: _root.original dan _root.mirrored

eindbaas
%Europe/Berlin %925 %2006, 22:12
ah ok, dat is duidelijk. maar als ik dat niet wil? want dat wil ik namelijk niet :)

Emveedee
%Europe/Berlin %935 %2006, 22:26
Kijk eens in de flashHelp en zoek naar attachMovie.
Kan je precies bepalen waar je m wil.

eindbaas
%Europe/Berlin %937 %2006, 22:29
dat was mijn plan, maar attachmovie gebruikt toch mc's die zich in de library bevinden en die je een linkage-identifier hebt gegeven? of zie ik het nu helemaal verkeerd.

Emveedee
%Europe/Berlin %942 %2006, 22:36
Dat klopt.
Maar je kan wel kiezen in welke tijdlijn je
die movieclips geplaatst wil hebben.

Bijv:

// Op de main timeline
_root.attachMovie("bla", "bla1", 1);

// In de mc 'bladiebla'
bladiebla.attachMovie("bla", "bla1", 1);


// In de mc 'mc2', die op zijn beurt weer in mc1 staat:
mc1.mc2.attachMovie("bla", "bla1", 1);


De geattachte mc's mogen dezelfde instancenames en depths
hebben (in dit geval!) omdat ze op een andere tijdlijn staan.

eindbaas
%Europe/Berlin %947 %2006, 22:44
Dat klopt.
Maar je kan wel kiezen in welke tijdlijn je
die movieclips geplaatst wil hebben.

Dat weet ik, maar daar ligt mijn probleem niet. Misschien maakt deze gestripte code het duidelijker:

origineel._x = 10;
origineel.duplicateMovieClip("kopie", getNextHighestDepth());

kopie._x = 200; // om de kopie ook daadwerkelijk te zien

container._x = 300;
container.attachMovie("new_mc","even_newer_mc",container.getNextHighestDepth());

Ik wil die kopie dus in die container hebben, maar die laatste regel code gaat niet werken omdat er geen niks in de library staat wat een linkage identifyer "new_mc" heeft (mijns inziens)

Laiverd
%Europe/Berlin %949 %2006, 22:46
Ik wil die kopie dus in die container hebben, maar die laatste regel code gaat niet werken omdat er geen niks in de library staat wat een linkage identifyer "new_mc" heeft (mijns inziens)Twee handen: 1 aan het toetsenbord, 1 aan de muis ... dan moet het toch lukken? Kortom; ik zie het probleem nog steeds niet om attachMovie() te gaan gebruiken. Met duplicate ga je gewoonweg niet bereiken wat je wilt, maar dat was al gezegd geloof ik.

John

eindbaas
%Europe/Berlin %956 %2006, 22:57
ik zie het probleem nog steeds niet om attachMovie() te gaan gebruiken. Met duplicate ga je gewoonweg niet bereiken wat je wilt, maar dat was al gezegd geloof ik.
Niet heel expliciet, ik dacht momenteel dat ik attachMovie na een duplicate moest gebruiken. Als je een hint hebt, ik ben erg benieuwd, want mij lukt het niet om die mc met attachmovie in een andere mc te kopieren.

Bovenstaande code zou dan toch zoiets moeten worden?

kopiecontainer.attachMovie("origineel","kopie",kopiecontainer.getNextHighestDepth());


Maar dit werkt volgens mij niet omdat de eerste parameter een linkage-id wil hebben (en die heeft de mc 'origineel' niet).

eindbaas
%Europe/Berlin %978 %2006, 23:29
Voor de duidelijkheid: die mc heeft geen linkage-id omdat hij met Loadclip vers van het net is ingeladen. Mijn probleem komt volgens mij hierop neer: hoe kan ik een mc die op de stage staat in een andere mc zetten? Als het eenvoudig is, please tell me, maar ik kom er momenteel echt niet uit.

Laiverd
%Europe/Berlin %981 %2006, 23:33
Als je 'm extern inlaadt, dan heb je geen andere keuze dan hem meermalen in te laden in de movieclip waar je 'm wilt hebben. Duplicate of attach zal dan inderdaad niet werken.

John