我有一个球将被玩家踢,它是一个动画片段,我希望它一点一点地变小,因为它离开原来的地方,也许是AS3的补间?这是移动球的代码:
speed=10;
var ease:int = 100;
var gravity:Number = 0.5;
function moveBall()
{
var targetX:Number = mouseX;
var targetY:Number = mouseY;
var angle = Math.atan2(targetY,targetX);
bola.x = mouseX + Math.cos(angle);
bola.y = mouseY + Math.sin(angle) ;
ballRotation = true;
stage.removeEventListener(MouseEvent.CLICK, kick);
非常感谢您的耐心和帮助!
答案 0 :(得分:1)
如果您有tweenlite / tweenmax,那么您可以使用此代码获得一个非常逼真的球:
import com.greensock.*;
import com.greensock.plugins.*;
import flash.events.MouseEvent;
TweenPlugin.activate([BezierPlugin]);
ball.addEventListener(MouseEvent.CLICK, kickBall);
function kickBall(e:MouseEvent):void
{
TweenMax.to(ball,2,{scaleX:0,scaleY:0,bezier:[{x:400, y:-250}, {x:315, y:200}]});
}
显然,您可以随意调整这些值。