Flappy Bird と同じ仕組みを持つ 2D 形式を使用して、Unity でゲームを作成しています。しかし、思い通りの動きにはなりません。
主な問題は、マウス ボタンを押すと、ボタンを離すまで停止しないことです。マウスボタンを押したまま離さないと鳥が落ちるように、ワンクリックで1回の動きが必要です。なぜなら、一度だけバウンドするからです。
これが動作コードです。この問題を修正する方法を教えてください。ムーブメントで使用されていないコードの一部をスキップしました。
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;
}
}