Introducing to AS3 Programming ENGR. SOLIEL G. MUTYA DLS-CSB MAY 2016
ACTIONSCRIPT 3.0 DATA TYPES • AS3 is a structured language as well as an object-oriented language. • It is a structured because it is built around functions. • It is an OOP because it is built around classes and objects. Data identified for I-P-O will need to be stored as data objects.
AS3 DATA TYPES • Data type is defined as a type of data and a set of operations that can be performed on that data. • PRIMITIVE data type is on that is provided as an integral part of AS3 language and requires no external code.
AS3 DATA TYPES Data Type Definition Example INTEGER Used to store whole numbers. Age:int UNSIGNED INTEGER Used for storing and working with positive whole numbers. X:uint NUMBER A floating-point number, that can be the number zero or any positive or negative number that contains a decimal point. Pi:Number STRING Used to store textual information. Name: String BOOLEAN Can hold only one of two values: TRUE or FALSE. Answer: Boolean
VARIABLE AND CONSTANT DECLARATIONS • To allocate memory for a data object, programs require a special statement called DECLARATION. • Data objects come in two forms: VARIABLE and CONSTANT. • A Constant is a static data object – whose value will not change during the program execution. (const to declare a constant) • A Variable is a dynamic data object. (var to declare a variable)
IDENTIFIERS • Identifiers are the names we assign to the data objects we declare. – RULE 1: Identifiers must start with a letter of the alphabet or an underscore(_). – RULE 2: Identifiers must consist of only letters, digits and underscores. – RULE 3: AS3 is case sensitive. – RULE 4: Do not use AS3 Keywords in declaring identifiers/Variable name.
AS3 KEYWORDS
COLOR CODES • Variable Name – • Data Type – • Instance Name – • Function Name – • AS3 Keywords –
CONTINUOUS GROWING var growthRate:Number = 2; circle_mc.addEventListener(Event.ENTER_FRAME, grow); function grow(e:Event):void { e.target.width += growthRate; e.target.height += growthRate; }
GROWING WITH TARGET SIZE var growthRate:Number = 2; var maxSize:Number = 150; circle_mc.addEventListener(Event.ENTER_FRAME, grow); function grow(e:Event):void { e.target.width += growthRate; e.target.height += growthRate; if(e.target.width>= maxSize) { circle_mc.removeEventListener(Event.ENTER_FRAME, grow); } }
GROWING AND SHRINKING (ENTER FRAME) var growthRate:Number = 2; var maxSize:Number = 150; var minSize:Number = 100; var scaleMode:String = "grow"; circle_mc.addEventListener(Event.ENTER_FRAME, growShrink); function growShrink(e:Event):void { if(scaleMode == "grow") { e.target.width += growthRate; e.target.height += growthRate;
GROWING AND SHRINKING (ENTER FRAME)if(e.target.width>= maxSize) { scaleMode = "shrink"; } } else if(scaleMode == "shrink") { e.target.width -= growthRate; e.target.height -= growthRate; if(e.target.width<= minSize) { scaleMode = "grow"; } } }
GROWING AND SHRINKING WITH MOUSE EVENTS var growthRate:Number = 2; var maxSize:int = 200; var minSize:int = 150; var scaleMode:String = "shrink"; var clickMode:String = "start"; circle_mc.addEventListener(MouseEvent.CLICK, startStop); function startStop(e:MouseEvent):void { if (clickMode == "start") { circle_mc.addEventListener(Event.ENTER_FRAME, growShrink); clickMode = "stop"; }
GROWING AND SHRINKING WITH MOUSE EVENTS else if(clickMode == "stop") { circle_mc.removeEventListener(Event.ENTER_FRAME, growShrink); clickMode = "start"; } } function growShrink(e:Event):void { if (scaleMode == "shrink") { e.target.width -= growthRate; e.target.height -= growthRate;
GROWING AND SHRINKING WITH MOUSE EVENTS if (e.target.width<= minSize) { scaleMode = "grow"; } } else if (scaleMode == "grow") { e.target.width += growthRate; e.target.height += growthRate; if (e.target.width>= maxSize) { scaleMode = "shrink"; } } }
FADE-IN AND FADE-OUT var fadeRate:Number = .05; var maxVal:int = 1; var minVal:int = 0; var fadeMode:String = "out"; circle_mc.addEventListener(Event.ENTER_FRAME, fade); function fade(e:Event):void { if(fadeMode == "out") { e.target.alpha -= fadeRate; if(e.target.alpha<= minVal) { fadeMode = "in"; } }
FADE-IN AND FADE-OUT else if(fadeMode == "in") { e.target.alpha += fadeRate; if(e.target.alpha>= maxVal) { fadeMode = "out"; } } }
FADE-IN AND FADE-OUT WITH BUTTONS var fadeRate:Number = .05; var maxVal:int = 1; var minVal:int = 0; var fadeMode:String = "out"; start_btn.addEventListener(MouseEvent.CLICK, startFade); stop_btn.addEventListener(MouseEvent.CLICK, stopFade);
FADE-IN AND FADE-OUT WITH BUTTONS function startFade(e:MouseEvent):void { circle_mc.addEventListener(Event.ENTER_FRAME, fade); } function stopFade(e:MouseEvent):void { circle_mc.removeEventListener(Event.ENTER_FRAME, fade); }
FADE-IN AND FADE-OUT WITH BUTTONSfunction fade(e:Event):void { if (fadeMode == "out") { e.target.alpha -= fadeRate; if (e.target.alpha<= minVal) { fadeMode = "in"; } } else if (fadeMode == "in") { e.target.alpha += fadeRate; if (e.target.alpha>= maxVal) { fadeMode = "out"; } } }
UP AND DOWN BUTTON function goUp(e:MouseEvent):void { starfish_mc.y = starfish_mc.y - 10; } function goDown(e:MouseEvent):void { starfish_mc.y = starfish_mc.y + 10; } up_btn.addEventListener(MouseEvent.CLICK, goUp); down_btn.addEventListener(MouseEvent.CLICK, goDown);
NEXT AND BACK BUTTON stop(); next_btn.addEventListener(MouseEvent.CLICK, goNext); back_btn.addEventListener(MouseEvent.CLICK, goBack); function goNext(e:MouseEvent):void { nextFrame(); } function goBack(e:MouseEvent):void { prevFrame(); }
GROWING AN OBJECT USING UP AND DOWN BUTTON up_btn.addEventListener(MouseEvent.CLICK, goUp); down_btn.addEventListener(MouseEvent.CLICK, goDown); function goUp(e:MouseEvent):void { starfish_mc.width += 10; starfish_mc.height += 10; } function goDown(e:MouseEvent):void { starfish_mc.width -= 10; starfish_mc.height -= 10; }

Introducing to AS3.0 programming

  • 1.
    Introducing to AS3Programming ENGR. SOLIEL G. MUTYA DLS-CSB MAY 2016
  • 2.
    ACTIONSCRIPT 3.0 DATATYPES • AS3 is a structured language as well as an object-oriented language. • It is a structured because it is built around functions. • It is an OOP because it is built around classes and objects. Data identified for I-P-O will need to be stored as data objects.
  • 3.
    AS3 DATA TYPES •Data type is defined as a type of data and a set of operations that can be performed on that data. • PRIMITIVE data type is on that is provided as an integral part of AS3 language and requires no external code.
  • 4.
    AS3 DATA TYPES DataType Definition Example INTEGER Used to store whole numbers. Age:int UNSIGNED INTEGER Used for storing and working with positive whole numbers. X:uint NUMBER A floating-point number, that can be the number zero or any positive or negative number that contains a decimal point. Pi:Number STRING Used to store textual information. Name: String BOOLEAN Can hold only one of two values: TRUE or FALSE. Answer: Boolean
  • 5.
    VARIABLE AND CONSTANT DECLARATIONS •To allocate memory for a data object, programs require a special statement called DECLARATION. • Data objects come in two forms: VARIABLE and CONSTANT. • A Constant is a static data object – whose value will not change during the program execution. (const to declare a constant) • A Variable is a dynamic data object. (var to declare a variable)
  • 6.
    IDENTIFIERS • Identifiers arethe names we assign to the data objects we declare. – RULE 1: Identifiers must start with a letter of the alphabet or an underscore(_). – RULE 2: Identifiers must consist of only letters, digits and underscores. – RULE 3: AS3 is case sensitive. – RULE 4: Do not use AS3 Keywords in declaring identifiers/Variable name.
  • 7.
  • 8.
    COLOR CODES • VariableName – • Data Type – • Instance Name – • Function Name – • AS3 Keywords –
  • 9.
    CONTINUOUS GROWING var growthRate:Number= 2; circle_mc.addEventListener(Event.ENTER_FRAME, grow); function grow(e:Event):void { e.target.width += growthRate; e.target.height += growthRate; }
  • 10.
    GROWING WITH TARGETSIZE var growthRate:Number = 2; var maxSize:Number = 150; circle_mc.addEventListener(Event.ENTER_FRAME, grow); function grow(e:Event):void { e.target.width += growthRate; e.target.height += growthRate; if(e.target.width>= maxSize) { circle_mc.removeEventListener(Event.ENTER_FRAME, grow); } }
  • 11.
    GROWING AND SHRINKING(ENTER FRAME) var growthRate:Number = 2; var maxSize:Number = 150; var minSize:Number = 100; var scaleMode:String = "grow"; circle_mc.addEventListener(Event.ENTER_FRAME, growShrink); function growShrink(e:Event):void { if(scaleMode == "grow") { e.target.width += growthRate; e.target.height += growthRate;
  • 12.
    GROWING AND SHRINKING(ENTER FRAME)if(e.target.width>= maxSize) { scaleMode = "shrink"; } } else if(scaleMode == "shrink") { e.target.width -= growthRate; e.target.height -= growthRate; if(e.target.width<= minSize) { scaleMode = "grow"; } } }
  • 13.
    GROWING AND SHRINKINGWITH MOUSE EVENTS var growthRate:Number = 2; var maxSize:int = 200; var minSize:int = 150; var scaleMode:String = "shrink"; var clickMode:String = "start"; circle_mc.addEventListener(MouseEvent.CLICK, startStop); function startStop(e:MouseEvent):void { if (clickMode == "start") { circle_mc.addEventListener(Event.ENTER_FRAME, growShrink); clickMode = "stop"; }
  • 14.
    GROWING AND SHRINKINGWITH MOUSE EVENTS else if(clickMode == "stop") { circle_mc.removeEventListener(Event.ENTER_FRAME, growShrink); clickMode = "start"; } } function growShrink(e:Event):void { if (scaleMode == "shrink") { e.target.width -= growthRate; e.target.height -= growthRate;
  • 15.
    GROWING AND SHRINKINGWITH MOUSE EVENTS if (e.target.width<= minSize) { scaleMode = "grow"; } } else if (scaleMode == "grow") { e.target.width += growthRate; e.target.height += growthRate; if (e.target.width>= maxSize) { scaleMode = "shrink"; } } }
  • 16.
    FADE-IN AND FADE-OUT varfadeRate:Number = .05; var maxVal:int = 1; var minVal:int = 0; var fadeMode:String = "out"; circle_mc.addEventListener(Event.ENTER_FRAME, fade); function fade(e:Event):void { if(fadeMode == "out") { e.target.alpha -= fadeRate; if(e.target.alpha<= minVal) { fadeMode = "in"; } }
  • 17.
    FADE-IN AND FADE-OUT elseif(fadeMode == "in") { e.target.alpha += fadeRate; if(e.target.alpha>= maxVal) { fadeMode = "out"; } } }
  • 18.
    FADE-IN AND FADE-OUTWITH BUTTONS var fadeRate:Number = .05; var maxVal:int = 1; var minVal:int = 0; var fadeMode:String = "out"; start_btn.addEventListener(MouseEvent.CLICK, startFade); stop_btn.addEventListener(MouseEvent.CLICK, stopFade);
  • 19.
    FADE-IN AND FADE-OUTWITH BUTTONS function startFade(e:MouseEvent):void { circle_mc.addEventListener(Event.ENTER_FRAME, fade); } function stopFade(e:MouseEvent):void { circle_mc.removeEventListener(Event.ENTER_FRAME, fade); }
  • 20.
    FADE-IN AND FADE-OUTWITH BUTTONSfunction fade(e:Event):void { if (fadeMode == "out") { e.target.alpha -= fadeRate; if (e.target.alpha<= minVal) { fadeMode = "in"; } } else if (fadeMode == "in") { e.target.alpha += fadeRate; if (e.target.alpha>= maxVal) { fadeMode = "out"; } } }
  • 21.
    UP AND DOWNBUTTON function goUp(e:MouseEvent):void { starfish_mc.y = starfish_mc.y - 10; } function goDown(e:MouseEvent):void { starfish_mc.y = starfish_mc.y + 10; } up_btn.addEventListener(MouseEvent.CLICK, goUp); down_btn.addEventListener(MouseEvent.CLICK, goDown);
  • 22.
    NEXT AND BACKBUTTON stop(); next_btn.addEventListener(MouseEvent.CLICK, goNext); back_btn.addEventListener(MouseEvent.CLICK, goBack); function goNext(e:MouseEvent):void { nextFrame(); } function goBack(e:MouseEvent):void { prevFrame(); }
  • 23.
    GROWING AN OBJECTUSING UP AND DOWN BUTTON up_btn.addEventListener(MouseEvent.CLICK, goUp); down_btn.addEventListener(MouseEvent.CLICK, goDown); function goUp(e:MouseEvent):void { starfish_mc.width += 10; starfish_mc.height += 10; } function goDown(e:MouseEvent):void { starfish_mc.width -= 10; starfish_mc.height -= 10; }