Toon posts:

[actionscript] dupliceren van een random gegenereerde MC

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik heb twee movieclips, te weten streepjes en streepjesAfbeelding.
Binnenin 'streepjes' plaats ik 1 streepjesAfbeelding en door middel van actionscript dupliceer ik deze 150 maal, waarbij de _x telkens met 2 verhoogd wordt (streepjesAfbeelding is maar 1 pixel breed, dus je krijgt een soort van barcode effect. Alleen zijn de streepjes telkens even hoog en even breed. Het enigste wat onregelmatig varieerd is de _y. Op die manier krijg je iets als onderstaande afbeelding).

Afbeeldingslocatie: http://www.streamingmediadesign.nl/got/streepjes.gif

Ik gebruik deze code:

code:
1
2
3
4
5
6
7
8
9
ij = 10;

for(i=0, a=0;i<149;i++, a=a+2)
{
    
    duplicateMovieClip("streep", "streep" add i, i);
    setProperty("streep" add i, _x, a);
    setProperty("streep" add i, _y, (ij - 5) + random(10));
}


Nu plaats ik de MC 'streepjes' in mijn root timeline, zodat ik de mooie streepjes te zien krijg. Als ik nu de MC dupliceer, dan plaatst hij inderdaad een nieuwe, alleen voert hij dan opnieuw het actionscript in 'streepjes' uit, zodat ik allemaal andere streepjes krijg!

Ik wil een exacte kopie krijgen van de streepjes MC.
Weet iemand hoe ik dat kan doen?

Ik zat al te denken om alle Y waarden die gegenereerd worden in actionscript, op te slaan in een array en deze vervolgens gebruiken om de MC te kopieren maar ik denk dat dat ietwat omslachtig is?

offtopic:
Als je de hele dag met het woord 'streepjes' in je hoofd loopt is dat niet mijn schuld! ;)

[ Voor 7% gewijzigd door Verwijderd op 10-01-2004 10:14 ]


Verwijderd

Je dupliceert de MovieClip en dan gaat hij dat script opnieuw uitvoeren. In een array gaat ook niet werken, dan moet je behoorlijk wat scripten omdat goed te krjgen.

Waarom doe je het niet zelf met de hand zoveel werk is dat niet ... copy paste 5x 1 streepje, dan dpliceer je die 5 weer etc. Zo gebeurt, 10 seconden werk. Vervolgens even de y verschillend maken en dupliceren maar ;)

[ Voor 20% gewijzigd door Verwijderd op 10-01-2004 14:48 ]


  • mpegernie
  • Registratie: November 2000
  • Laatst online: 12-03-2016

mpegernie

.mpe

Ik zat al te denken om alle Y waarden die gegenereerd worden in actionscript, op te slaan in een array en deze vervolgens gebruiken om de MC te kopieren maar ik denk dat dat ietwat omslachtig is?
Dat is denk ik wel de enige manier. Je zult toch die 150 random y vars moeten onthouden.

Overigens denk ik dat het niet zo'n werk is.
Je genereert de array first thing op je root. Dan maak je je streepjes MC aan, en zorgt óf dat deze zelf de array inlaad en tekent bij het instantieren, óf je zet er een functie als setStreepjes( randomArray) in en roept deze handmatig aan na instantieren. De eerste oplossing geeft jou natuurlijk de mogelijkheid duplicate MC te gebruiken.

"The Major advances in civilization are processes that all but wreck the societies in which they occur." -A. N. Whitehead


  • hobbit_be
  • Registratie: November 2002
  • Laatst online: 04-07-2025
hmmm misschien snap ik het niet maar je hebt MC 'A' deze heeft x-aantal streepjes.

dan doe je toch gewoon A.duplicateMovieClip(); ?

ie je duplicate de 'containing' MC. en zien dat de code voor het genereren van A niet in A zelfs staat maar erbuiten?

Verwijderd

Topicstarter
Oplossing is er, nog even voor de geinteresseerden:

Heb in de _root een array aangemaakt en deze gevuld met 150 random waarden.
Vervolgens plaats ik in de MC 'streepjes' 150 kopieen van de streepAfbeelding en de y-waardes daarvan bepaal ik aan de hand van _root.ywaarden[i].

Als ik nu een kopie maak van de Streepjes MC dan zullen die streepjes op dezelfde hoogtes staan aangezien de array in de root maar 1 keer (welliswaar random) aangemaakt wordt.

Bedankt allen.