Slick 2D - .playing() boolean испортил
Я создаю игру с Slick 2D.
Я хочу, чтобы анимация воспроизводилась во время воспроизведения звука. Все работает нормально, звук играет, анимация играет. Однако после этого момента анимация будет воспроизводиться, если воспроизводится ЛЮБОЙ звук. Что здесь происходит?
if (sound1.playing()) {
exA.draw(700, pY); // Animation plays if sound2.playing()
} else {
g.drawImage(idlePic, 700, pY); // Regular picture is drawn if no sound is playing.
}
Вот где звучит sound2:
if (cvX.length >= 1) {
for (int j=0;j<cvX.length; j++) {
if (checkCatch(cvX[j], cvY[j]) && amount < 10) {
cvX = removeElement(cvX, j);
cvY = removeElement(cvY, j);
amount++;
purity++;
sound2.play(1.0f, .25f);
}
}
}
cvX и cvY содержат координаты каждого объекта. Метод checkCatch берет один набор координат и сравнивает его с координатами игрока. Если они достаточно близки, он удаляет объект, добавляет 1 к количеству, добавляет 1 к чистоте (системы оценки) и воспроизводит звук.