10. juni 2003 - 12:17Der er
10 kommentarer og 1 løsning
_duplicateMovieClip - men kun én gang!
Jeg har "lånt" et script fra en tutorial, som kan duplikere x-antal klip når man trækker dem til et bestemt område. Det jeg nu mangler er at kunne trække rundt med klippene når de befinder sig i området, men uden de duplikerer sig igen. Er der mon nogen der kan hjælpe med det? Sådan ser koden ud:
onClipEvent (load) {
function buildIconList() { spacing=30; iconY=480; iconX=310; var i=-1; while (++i<_root.icon._totalFrames) { newName="icon"+i; _root.icon.duplicateMovieClip(newName,10000+i); _root[newName]._x=iconX; _root[newName]._y=iconY+i*spacing; _root[newName].gotoAndStop(i+1); } } function iconReleased (name) { if (_root.canvas.hitTest(_root._xmouse,_root._ymouse)) { ++v; newName="object" + v; _root[name].duplicateMovieClip(newName, v); _root[newName].gotoAndStop(_root[name]._currentFrame); //_root[newName].iconButton.enabled=false;
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
Ok! Du vil kun duplikere dem, og derefter trække rundt med dem. så du bliver nød til at lave en kanp med en der sætter en variabel. F.eks. _root.duplicate = false;
Jeg er ikke helt med på: "så du bliver nød til at lave en kanp med en der sætter en variabel. F.eks. _root.duplicate = false;" og hvor mener du at det script du viser skal sidde (er det i stedet for noget andet?) Undskyld, jeg er lidt tung ...
personligt synes jeg det ville være federe hvis du forklarede præcist hvad det er du vil, istedet for at sidde og modificere på et script taget ud af kontekst. Hoejrup har sådan set ret, du kan stoppe yderligere dublikater med en boolean.
mat>> Hvis jeg var i stand til selv at skrive et script, så ville jeg have gjort det, og sikkert også vidst hvordan jeg stoppede yderligere duplikater med en boolean. Jeg fandt dette script, og mente at det var lige det jeg skulle bruge, men så viste der sig jo lige et par detaljer ... Som jeg siger ovenfor har jeg brug for at kunne trække/duplikere et klip til et bestemt område, og herefter trække duplikaten rundt inden for området (det kan jeg med ovenstående script), men det skal være uden at den duplikerer sig igen. Ovenfor er det egentligt originalen man trækker - kopien lægger sig på den sidst registrerede x-y-pos.
Det var nu ikke for at fornærme dig at jeg skrev som jeg gjorde - det var bare en personlig konstatering.
Jeg synes stadig ikke helt præcist jeg kan se hvor det bærer hen, men jeg har lavet et lille eksempel på en dublikering der forekommer een gang ved at dragge movieclippet ind i en anden movieclip (instancenavn "box"):
onClipEvent (load) { copy = true; // der kan kopieres :) } on (press) { startDrag(this, true); } on (release) { stopDrag(); } onClipEvent (enterFrame) { if (copy && this.hitTest(_root.box)) { // hvis copy er true og clippet rammer "box" kopier! duplicateMovieClip(this, "nm", 1000); copy = false; // eftersom den nu er false og aldrig bliver true igen er der blokeret for yderligere dublikater } }
Jeg tror næppe jeg har "leveret varen". Jeg har blot lavet et allerførste udkast til en funktionalitet der minder om det du efterspørger (som jeg tolker det). Meningen var så at du kunne teste det og vende tilbage, så kan vi udbygge funktionaliteten derfra :)
(jeg lægger dette som et svar, men du skal ikke føle dig forpligtiget til at acceptere, hvis der skal tilføjes mere)
Jeg accepterer, og vil så gå igang med at prøve dit forslag af i morgen. Så kan jeg jo vende tilbage, hvis noget ikke virker helt som ventet. Håber det vil være ok ...
:) Shanne
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.