我正在使用与 Flappy Bird 相同的机制在 Unity 中使用 2D 格式制作游戏。但是,我没有让运动达到我想要的那样好。
主要问题是当我按下鼠标按钮时,它不会停止,直到我释放按钮。我想要一键只移动一个动作,这样如果我按下鼠标按钮并且不松手,鸟就会掉下来。因为,它只会反弹一次。
这是移动代码,请告诉我如何解决此问题。我跳过了运动中未使用的一些代码部分。
float flapSpeed = 25f;
float forwardSpeed = 0.9f;
void Update () {
if (Input.GetMouseButton(0)) {
didFlap = true;
}
}
void FixedUpdate () {
// Movement
GetComponent<Rigidbody2D>().AddForce(Vector2.right * forwardSpeed);
if (didFlap) {
GetComponent<Rigidbody2D>().AddForce(Vector2.up * flapSpeed);
didFlap = false;
}
}