Vorig college

• Variabelen: var i:int = 7;
• Instanties
• Trace: trace(i); // Resultaat: 7
• Expressies: i < 10; // Resultaat: true;
• Conditional statements: if(i > 10) { code; }
Onderwerpen

• AS3 Reference Guide
• Eventlisteners
• Functies
• Constanten
AS3 Reference Guide

• Flash CS 3, Flash Player 9, ActionScript 3
• Flash CS 4, Flash Player 10.1, ActionScript 3
• http://livedocs.adobe.com/flash/9.0/
  ActionScriptLangRefV3/
Eventlisteners

• Imports en libraries
• import flash.events.Event;
• addEventListener(event, functie);
• startButton.addEventListener(MouseEvent.
  CLICK, startRotation);
Eventlisteners


  variabele                       constante        referentie
startButton.addEventListener(MouseEvent.CLICK, startRotation);
  waaraan?                       welk event?     welke functie?
Functies

• Hergebruiken van code
• Abstractie
• Leesbaarheid
Pythagoras

• c= + √(a 2   b2)


• function pythagoras(a:Number, b:Number):Number {
      var c:Number = Math.pow(a, 2) + Math.pow(b, 2);
      return Math.sqrt(c);
  }
• var r:Number = pythagoras(3, 4); // Resultaat: 5
Pythagoras

• c= + √(a 2   b2)


• function pythagoras(a:Number, b:Number):Number {
      var c:Number = Math.pow(a, 2) + Math.pow(b, 2);
      return Math.sqrt(c);
  }
• var r:Number = pythagoras(3, 4); // Resultaat: 5
Pythagoras

• c= + √(a 2   b2)


• function pythagoras(a:Number, b:Number):Number {
      var c:Number = Math.pow(a, 2) + Math.pow(b, 2);
      return Math.sqrt(c);
  }
• var r:Number = pythagoras(3, 4); // Resultaat: 5
Functies
• Functie-naam
• Parameters + types
• Return-waarde + type
• Code
• Return
• Void
Som

• function som(a:Number, b:Number):Number
  {
      return a + b;
  }
• var s:Number = som(2, 3); // Resultaat: 5
Product

• function product(a:Number, b:Number):Number
  {
      return a * b;
  }
• var p:Number = product(3, 3); // Resultaat: 9
Round
• function round(n:Number):int
  {
      var m:Number = n % 1;
      if(m < .5)
         return n - m;
      else
         return n - m + 1;
  }
• var r:int = round(3.49991); // Resultaat: 4
• var r:int = round(6.789); // Resultaat: 7
Constanten

• Niet-veranderende waarde
• Variabele: wel-veranderende waarde
• Getallen: 1, 2, 5, 123, 1.47
• Wiskunde: Math.PI, Math.E, Math.LN10
• Events: MouseEvent.CLICK,
  Event.ENTER_FRAME
Eventlisteners


  variabele                       constante    referentie naar functie
startButton.addEventListener(MouseEvent.CLICK, startRotation);
  waaraan?                       welk event?       welke functie?
Eventlistener

• Variabele
• addEventListener()
• Constante, bijv. Event.ENTER_FRAME
• Functie, bijv. onEnterFrame
• Functie zonder parameters of haakjes
Event en functie

• startButton.addEventListener(MouseEvent.CLICK,
  startRotation);
• function startRotation(e:MouseEvent):void {
      trace("Start met roteren");
      isRotating = true;
  }
Event en functie

• Event “klik” toevoegen aan startButton
• Als er geklikt wordt, voer startRotation uit
• Parameter: e van type MouseEvent
• Resultaat: void (niks!)
Voorbeeld: draaiende appel
• Importeren events
• Boolean isRotating, moet de appel draaien?
• Toevoegen 3 eventlisteners: elk frame,
   start, stop
• Functie: elk frame, moet de appel draaien?
   Ja? Draai de appel.
• Functie: start met roteren, zet isRotating is
   true.
• Functie: stop met roteren, zet isRotating is
   false
Code-voorbeelden

• Draaiende appel: eventlisteners
• Functies: verschillende functies, o.a. map()
• Draaiende appel 2: eventlisteners en
  functies
Opdracht

• Maak een Flash-movie, met een lampje
  (MovieClip) die aan en uit kan m.b.v. twee
  buttons.
• Tip: elke MovieClip heeft de property
  “visible” (Boolean).

College 2 ActionScript 3

  • 1.
    Vorig college • Variabelen:var i:int = 7; • Instanties • Trace: trace(i); // Resultaat: 7 • Expressies: i < 10; // Resultaat: true; • Conditional statements: if(i > 10) { code; }
  • 2.
    Onderwerpen • AS3 ReferenceGuide • Eventlisteners • Functies • Constanten
  • 3.
    AS3 Reference Guide •Flash CS 3, Flash Player 9, ActionScript 3 • Flash CS 4, Flash Player 10.1, ActionScript 3 • http://livedocs.adobe.com/flash/9.0/ ActionScriptLangRefV3/
  • 4.
    Eventlisteners • Imports enlibraries • import flash.events.Event; • addEventListener(event, functie); • startButton.addEventListener(MouseEvent. CLICK, startRotation);
  • 5.
    Eventlisteners variabele constante referentie startButton.addEventListener(MouseEvent.CLICK, startRotation); waaraan? welk event? welke functie?
  • 6.
    Functies • Hergebruiken vancode • Abstractie • Leesbaarheid
  • 7.
    Pythagoras • c= +√(a 2 b2) • function pythagoras(a:Number, b:Number):Number { var c:Number = Math.pow(a, 2) + Math.pow(b, 2); return Math.sqrt(c); } • var r:Number = pythagoras(3, 4); // Resultaat: 5
  • 8.
    Pythagoras • c= +√(a 2 b2) • function pythagoras(a:Number, b:Number):Number { var c:Number = Math.pow(a, 2) + Math.pow(b, 2); return Math.sqrt(c); } • var r:Number = pythagoras(3, 4); // Resultaat: 5
  • 9.
    Pythagoras • c= +√(a 2 b2) • function pythagoras(a:Number, b:Number):Number { var c:Number = Math.pow(a, 2) + Math.pow(b, 2); return Math.sqrt(c); } • var r:Number = pythagoras(3, 4); // Resultaat: 5
  • 10.
    Functies • Functie-naam • Parameters+ types • Return-waarde + type • Code • Return • Void
  • 11.
    Som • function som(a:Number,b:Number):Number { return a + b; } • var s:Number = som(2, 3); // Resultaat: 5
  • 12.
    Product • function product(a:Number,b:Number):Number { return a * b; } • var p:Number = product(3, 3); // Resultaat: 9
  • 13.
    Round • function round(n:Number):int { var m:Number = n % 1; if(m < .5) return n - m; else return n - m + 1; } • var r:int = round(3.49991); // Resultaat: 4 • var r:int = round(6.789); // Resultaat: 7
  • 14.
    Constanten • Niet-veranderende waarde •Variabele: wel-veranderende waarde • Getallen: 1, 2, 5, 123, 1.47 • Wiskunde: Math.PI, Math.E, Math.LN10 • Events: MouseEvent.CLICK, Event.ENTER_FRAME
  • 15.
    Eventlisteners variabele constante referentie naar functie startButton.addEventListener(MouseEvent.CLICK, startRotation); waaraan? welk event? welke functie?
  • 16.
    Eventlistener • Variabele • addEventListener() •Constante, bijv. Event.ENTER_FRAME • Functie, bijv. onEnterFrame • Functie zonder parameters of haakjes
  • 17.
    Event en functie •startButton.addEventListener(MouseEvent.CLICK, startRotation); • function startRotation(e:MouseEvent):void { trace("Start met roteren"); isRotating = true; }
  • 18.
    Event en functie •Event “klik” toevoegen aan startButton • Als er geklikt wordt, voer startRotation uit • Parameter: e van type MouseEvent • Resultaat: void (niks!)
  • 19.
    Voorbeeld: draaiende appel •Importeren events • Boolean isRotating, moet de appel draaien? • Toevoegen 3 eventlisteners: elk frame, start, stop • Functie: elk frame, moet de appel draaien? Ja? Draai de appel. • Functie: start met roteren, zet isRotating is true. • Functie: stop met roteren, zet isRotating is false
  • 20.
    Code-voorbeelden • Draaiende appel:eventlisteners • Functies: verschillende functies, o.a. map() • Draaiende appel 2: eventlisteners en functies
  • 21.
    Opdracht • Maak eenFlash-movie, met een lampje (MovieClip) die aan en uit kan m.b.v. twee buttons. • Tip: elke MovieClip heeft de property “visible” (Boolean).