Моя игра, которую я сделал на Java, почему-то связывает два спрайта? - PullRequest
0 голосов
/ 27 февраля 2011

Ну, я сделал эту игру на Java, и когда вы стреляете в пулю, она перемещает пистолет и пулю.Вот блок кода, в котором проблема, я думаю:

case KeyEvent.VK_SPACE:
        Point2D currentGunPos = sGun.position();
        sBullet[bulletNum].setAlive(true);
        sBullet[bulletNum].setPosition(sGun.position());
        sBullet[bulletNum].setVelocity(new Point2D(-5,0));
        bulletNum++;

Почему он тоже двигает пистолет?

1 Ответ

2 голосов
/ 27 февраля 2011

Вам необходимо клонировать объект положения оружия, прежде чем вызывать метод setPosition для пули.

Point2D currentGunPos = (Point2D)sGun.position().clone();
sBullet[bulletNum].setPosition(currentGunPos);
...