Witam wszystkich, nie moge zrozumiec dlaczego moj warunek nie dziala prawidlowo. Dane mamy dwa obiekty: kolo1 i blok1. Instrukcja ma za zadanie sprawdzac czy wspolrzedne obiektow nachodza na siebie, jesli tak to zmienic kolor obiektu blok1 i zmienic wektor predkosci obiektu kolo1. Gdy to nastąpi sprawdzanie wspolrzednych trwa dalej, program dziala dalej, ale przy drugiej detekcji takiej kolizji warunek ma sie juz nie spelnic. Niestety moj kod ciagle zmienia wektor dla kolo1 gdy natrafi na kolizje, niewazne czy to pierwszy drugi czy 10 raz. Mam nadzieje ze dobrze wytłumaczylem o co chodzi :).
bool kolizjaBlok[1] = true;
while(window.isOpen())
{
if ((kolo1.getGlobalBounds().intersects( blok[1].getGlobalBounds())) && (kolizjaBlok[1] = true))
{
wektorkolo = -wektorkolo;
blok[1].setFillColor(sf::Color::Black);
kolizjaBlok[1] = false;
}
}