1

我正在尝试制作一个游戏,其中玩家拥有激光武器,他可以射击物体以推动它们,或者射击地板/墙壁以将自己从一个地方移动到另一个地方。我的问题是,我不知道如何进行后推——当你射击时将你推向相反方向的力,也不是推其他物体的力(尽管一旦我知道如何计算会更容易以前的)。有谁能够帮我?

我掌握的信息:

Laser = startX, startY, endX, endY.
Player = x, y, width, height, xVel, yVel.
D = distance between the player and the laser end point.

我如何计算xVel\yVel差异?

4

1 回答 1

1

你需要知道物体的质量和弹丸的力量。您可以扩展一个类或构建一个接口,或者您可以将这些属性附加到 Laser 或 player 并在物理方法的签名中使用它。

就像评论说你

力=-反对力

牛顿告诉我们力=质量*加速度。

为了简单起见,您可以使用速度来加速。

找到速度:

距离 = 起点-终点

为了速度,您必须使用计时方法,该方法将按您可以配置的间隔计数。

速度=距离*时间

现在你可以用武力给对手负速度了!

于 2012-09-27T15:35:02.553 回答