1
我试图曲线球的运动。此代码直接移动对象并旋转对象,但不会以曲线运动移动。按代码曲线如何使用此代码执行此操作?
if (this.ballstart.hitTestObject(this.back)) {
trace("Hit back");
trace("ballstart rotation: " + this.ballstart.rotation);
removeEventListener(Event.ENTER_FRAME, update);
addEventListener(Event.ENTER_FRAME, BowlingScoreClass);
} else {
trace("move to back");
this.ballstart
this.ballstart.rotation -= -30;
//trace("this ballstart rotation: " + this.ballstart.rotation);
this.ballstart.y = this.ballstart.y - speed;
speed = 15;
/*speed = speed + 0.01;*/
if (this.ballstart.y < -height) {
x = Math.sin(this.ballstart.rotation * (Math.PI/180)) * speed;
y = Math.cos(this.ballstart.rotation * (Math.PI/180)) * speed * -1;
this.ballstart.x += x;
this.ballstart.y += y;
}
}
对于非AS3程序员,明白上面的代码显示的刷新功能过程中运行(通过FPS)我的项目。这里.rotation
只是旋转一个对象在自己的轴上。我需要控制ballstart.x
和ballstart.y
来进行曲线运动。
此代码将移动v运动,但我想顺利治愈我该如何改变它做到这一点?我需要在最上面的代码曲线?
if (sprite.y > 500) {
trace(height);
sprite.y -= 4;
sprite.x += 4;
} else if (sprite.y > 400) {
trace(height);
sprite.y -= 4
sprite.x += 2
} else if(sprite.y > this.height) {
sprite.y -= 4
sprite.x -= 2
}
如果下面的答案的作品,然后将其标记为使用'✓'图标解决方案 –