Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/actionscript-3/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Actionscript 3 AS3以一定角度发射射弹_Actionscript 3 - Fatal编程技术网

Actionscript 3 AS3以一定角度发射射弹

Actionscript 3 AS3以一定角度发射射弹,actionscript-3,Actionscript 3,我不知道在这件事上该怎么办,我希望你们中的一些人能帮忙 我有3组射弹,一组在Y轴上发射正射弹,一组在X轴上发射负射弹,另一组在X轴上发射正射弹(基本上,以T形发射),我希望在这两组射弹之间再发射两组射弹,因此,将有5架飞机朝以下方向发射:W-SW-S-SE-E 有人知道我是如何做到这一点的吗?假设你的射弹在x轴和y轴上以一定的速度移动,你所需要做的就是设置x轴和y轴的速度,以及你希望射弹移动的角度的相应cos/sin。然后乘以你希望它们移动的速度 假设您有速度变量 velocity.x = Ma

我不知道在这件事上该怎么办,我希望你们中的一些人能帮忙

我有3组射弹,一组在Y轴上发射正射弹,一组在X轴上发射负射弹,另一组在X轴上发射正射弹(基本上,以T形发射),我希望在这两组射弹之间再发射两组射弹,因此,将有5架飞机朝以下方向发射:W-SW-S-SE-E


有人知道我是如何做到这一点的吗?

假设你的射弹在x轴和y轴上以一定的速度移动,你所需要做的就是设置x轴和y轴的速度,以及你希望射弹移动的角度的相应cos/sin。然后乘以你希望它们移动的速度

假设您有
速度
变量

velocity.x = Math.cos( angleInRadians ) * speed;
velocity.y = Math.sin( angleInRadians ) * speed;
然后你的射弹只是按照你的新速度在轴上增加:

projectile.x += velocity.x;
projectile.y += velocity.y;

对于您的具体实现,您的角度将以45度为增量。所以你的
angelinradians
应该是
45*Math.PI/180

到目前为止什么都没有,我有点困惑于如何去做,我一直在集思广益。我从来没有用过像
velocity.x
这样的东西,我到底该如何实现呢?通常大多数人在AS3中创建速度变量作为
点。这就是问题的关键,其他的都很简单,你根据速度x和y移动物体的x和y。唯一的区别是当你想让物体以我的答案中所示的角度移动时。是的,我可以肯定地看到这将如何实现,我只是从来没有使用速度作为
点。我目前是一名学生,在学校方面从事这个项目。有时候,课堂作业并不能涵盖一切。无论如何,最好的学习方法是自己动手:)你的位置对了