您好我有一个as3文件(如下所列),当鼠标悬停在X轴上时(使用Tweenlight)只需移动一个方框。我想做的是把盒子放在30度的角度,让盒子沿着这个角度移动。有人能告诉我我做错了吗?
import com.greensock.*;
import com.greensock.easing.* ;
cont.addEventListener(MouseEvent.ROLL_OVER, onOver);
cont.addEventListener(MouseEvent.ROLL_OUT, onOut);
var stx:Number;
function onOver(e:MouseEvent):void
{
var stx:Number = cont.x +20 ;
TweenLite.to(cont, 1, { x:stx });
}
function onOut(e:MouseEvent):void
{
stx = cont.x - 20
TweenLite.to(cont, 1, { x:stx } );
}
答案 0 :(得分:3)
最困难的是将你的盒子以30度的角度移动到一条线上。 你必须使用三角学......记得SOHCAHTOA?
所以基本上你需要在x和y方向移动。
在你的onOver处理程序......
你想将x移动到20 * Math.cos(30 * Math.PI / 180)
你想将y移动到20 * Math.sin(30 * Math.PI / 180)
cos和sin给你x和y步骤,让你的物体保持30度移动。
如果您希望对象移动更多,请更改20参数。