如何使烧瓶中的物体移动到其旋转角度?

时间:2014-02-16 07:58:35

标签: flash rotation

我想制作一个sqare,当我按下lefr或右箭头键时旋转,当我按下箭头键时,我希望它朝着它面向的方向。我不知道动作脚本2是否可行......

1 个答案:

答案 0 :(得分:0)

在AS2中,您可以应用基于速度返回新xy的向量

function setVector(dir:Number, speed:Number):Array
{
    var xspeed:Number = Math.cos(dir*Math.PI/180)*speed;
    var yspeed:Number = Math.sin(dir*Math.PI/180)*speed;
    var retArray:Array = new Array(xspeed, yspeed);
    return retArray;
}

您需要计算帧时间以提供准确的移动

var frameStartTime:Number = getTimer();
var frameTime:Number = getTimer();
var direction:Number = 10;
var speed:Number = 50;
var coords:Object = new Object();

this.onEnterFrame = function():Void
{
    frameTime = frameStartTime - getTimer();
    frameStartTime = getTimer();
    tileVector = setVector(direction, (Number * frameTime));
    coords.x = Number(coords.x) + Number(tileVector[0]);
    coords.y = Number(coords.y) + Number(tileVector[1]);
    tileMC._x = coords.x;
    tileMC._y = coords.y;
}

我没有完全测试过这段代码,但它应该......指出正确的方向......请忽略双关语。