sep 22
Door: Mickel van Kouwen
Genoeg van Fuse? Tijd voor een echte AS3 tweenengine! Bekijk dan TweenMax van Jack Doyle. Alle functies die Fuse in zich heeft zijn te vinden in TweenMax en nog veel meer. Max rulezzzzzzzzz!
Hier een voorbeeld van de functie AllFrom.
De functie heeft als eigenschap om meerdere movieclips in één keer een x en y waarde te geven, bijv. : random()*400. De movieclips op de stage zullen eerst gerenderd worden voordat ze zichtbaar worden. Hierna zullen de movieclips naar hun oorsponkelijke x en y waarden animeren. (altijd al willen doen, helaas kan Fuse dit niet, erg vet dus!
)
Download source .fla
Bekijk broncode:
CODE:
-
import gs.TweenMax;
-
import gs.easing.*;
-
-
stage.frameRate = 30;
-
var aMc:Array = [mc1, mc2, mc3, mc4, mc5, mc6, mc7, mc8];
-
-
function go():void
-
{
-
enableBtn.enabled = false;
-
disableBtn.enabled = false;
-
-
TweenMax.allFrom(aMc, 3, {scaleX:2,
-
scaleY:2,
-
rotation:5*360,
-
blurFilter:{blurX:30, blurY:30, quality:1},
-
x:-200,
-
y:500,
-
bezierThrough:[{x:75, y:274},{x:400, y:-400}],
-
orientToBezier:false,
-
delayIncrement:0.2,
-
ease:Back.easeInOut,
-
// easeParams:[2, 0.2], // for Elastic.easeOut
-
renderOnStart:false,
-
onCompleteAll:makeButtons,
-
onCompleteAllParams:["make buttons"]
-
});
-
}
-
-
function makeButtons(sEnd:String):void
-
{
-
for (var i:Number = 0; i <aMc.length; i++) {
-
//aMc[i].idName = "mc" + i;
-
aMc[i].addEventListener(MouseEvent.MOUSE_OVER, onMouseOver);
-
aMc[i].addEventListener(MouseEvent.MOUSE_OUT, onMouseOut);
-
aMc[i].addEventListener(MouseEvent.CLICK, onMouseClick);
-
aMc[i].buttonMode = true;
-
aMc[i].useHandCursor = true;
-
}
-
-
txt.text = sEnd;
-
-
enableBtn.enabled = true;
-
disableBtn.enabled = true;
-
}
-
-
var scaleTween:TweenMax;
-
-
function onMouseOver(event:MouseEvent):void
-
{
-
scaleTween = TweenMax.to(event.target, 0.5, {scaleX:1.2,
-
scaleY:1.2,
-
//dropShadowFilter:{color:0xFFFFFF, alpha:0.4, blurX:10, blurY:10, angle:0, distance:10, quality:3}
-
glowFilter:{color:0xFFFFFF, alpha:0.6, blurX:10, blurY:10, strength:5, quality:3}
-
});
-
txt.text = event.target.name;
-
-
}
-
-
function onMouseOut(event:MouseEvent):void
-
{
-
scaleTween = TweenMax.to(event.target, 0.5, {scaleX:1,
-
scaleY:1,
-
//dropShadowFilter:{color:0xFFFFFF, alpha:0, blurX:0, blurY:0, angle:0, distance:0, quality:3}
-
glowFilter:{color:0xFFFFFF, alpha:0, blurX:0, blurY:0, strength:0, quality:3}
-
});
-
}
-
-
function onMouseClick(event:MouseEvent):void
-
{
-
scaleTween = TweenMax.to(event.target, 2, {rotation:360*2});
-
-
txt.text = "click!";
-
}
-
-
disableBtn.addEventListener(MouseEvent.CLICK, disableButtons);
-
disableBtn.buttonMode = true;
-
disableBtn.useHandCursor = true;
-
-
enableBtn.addEventListener(MouseEvent.CLICK, enableButtons);
-
enableBtn.buttonMode = true;
-
enableBtn.useHandCursor = true;
-
-
resetBtn.addEventListener(MouseEvent.CLICK, resetAnimation);
-
resetBtn.buttonMode = true;
-
resetBtn.useHandCursor = true;
-
-
function enableButtons(event:MouseEvent):void
-
{
-
for (var i:Number = 0; i <aMc.length; i++) {
-
aMc[i].mouseEnabled = true;
-
-
}
-
}
-
-
function disableButtons(event:MouseEvent):void
-
{
-
for (var i:Number = 0; i <aMc.length; i++) {
-
aMc[i].mouseEnabled = false;
-
}
-
}
-
-
function resetAnimation(event:MouseEvent):void
-
{
-
go();
-
}
-
-
go();

