les 2
 

les1les2les3les4les5les6les7les8les9les10les11les12
pagina 1 | pagina 2 | pagina 3 | pagina 4 | pagina 5 | pagina 6
link van de les

In les2 heb je gezien wat functies zijn. We gaan twee functies in de praktijk toepassen: Math.random() en Math.floor()
We gebruiken de functies om een poppetje aan het dansen te krijgen. Het poppetje beweegt springt steeds naar een ander frame en wekt zo de indruk dat hij gevarieerd staat te dansen.



De liefhebbers kunnen mbv onderstaande stappen een eigen poppetje designen en aan het dansen maken. Als je daar geen zin in hebt, kun je het bestaande voorbeeldbestand downloaden en zelf de code ontleden.

character

Als voorbeeld gebruiken we klontje, een character dat Jolante gedesigned heeft.



hoe werkt het?



hoe maken we het?


voorbereiding: movieclip met poppetje

  • Design een poppetje (dat kan 'n simpel poppetje zijn, zie voorbeeld)
  • Maak een movieclip
  • Plaats 10 achtereenvolgende keyframes
  • Plaats, teken of sleep in elk frame 'n andere danshouding (zie figuur)
  • Zet in elk frame van je movieclip een stop()-actie.
  • Bekijk als je er niet uitkomt het voorbeeldbestand: mx-linkvandeles2.fla


    de code
  • Open het editscherm voor de movieclip (dubbelklik op de movieclip in je library of op de stage)
  • Maak een nieuwe laag aan voor de actionscript en noem deze "actions"
  • Plaats onderstaande code in het eerste frame in de nieuwe laag:

    var totaalAantalFrames = 10;
    var curFrame = 0;
    this.onEnterFrame = function(){
       curFrame = Math.floor(Math.random() * totaalAantalFrames);
       gotoAndStop(curFrame)
    }

  • Test je movie. Wanneer de animatie je te snel gaat kun je eventueel de framerate van de movie lager zetten.

    noot: 'Geluid' is geen onderdeel van de les, en wordt niet nader verklaard. Bekijk eventueel het downloadbare voorbeeldbestand hoe het geluid toegevoegd is.

    uitleg functies
    Math.random()
    Deze functie geeft een getal tussen 0 en 1 terug. (Bijvoorbeeld: 0,3) Door het getal wat uit Math.random() komt te vermenigvuldigen met 10 krijgen we een waarde tussen 0 en 10. (Bijvoorbeeld 0,3 * 10 = 3) Deze waarde valt binnen het aantal frames in de movieclip!
    Tweede voorbeeld: Stel Math.random() levert de maximale waarde 1 op. Dan levert de vermenigvuldiging met 10 als totaal 10 op. Ook in dit geval komt dit overeen met een framenummer waar we artwork hebben staan!
    Math.floor()
    Deze functie geeft een geheel getal (een 'integer') terug dat kleiner of gelijk is aan het getal of de expressie tussen de haken.
    Math.floor(4.5);
    levert bijvoorbeeld 4 op. Dit is handig want naar frame 4,5 springen is een beetje moeilijk, frame 4 is daarentegen duidelijk.

    de resultaten!
    bekijk de ingestuurde flashmovies:



    tips en overwegingen
  • Als je snel wilt werken is het handig om voor alle ledematen aparte layers te gebruiken.
  • Flash springt nu van frame1 t/m frame10. Hoe zou je de code kunnen aanpassen dat flash van frame1 t/m frame20 springt?
  • Het script is ook te gebruiken om random verschillende poppetjes te laten zien (bijv. de klontjes die aan de zijkant van deze pagina staan). Bedenk een toepassing van dit script voor je eigen praktijk.
  • Zoek zelf een geluidsloop op google of flashkit/loops
  • Laat op webklus je schepping bewonderen! We zijn nieuwsgierig.



  • pagina 1 | pagina 2 | pagina 3 | pagina 4 | pagina 5 | pagina 6

     

    download de nieuwste flashplayer bij Macromedia.
    zegt de buurvrouw © buuv.nl / bourgondien.nl 1999-2003 - contact: info@webklus.nl