Witam, kończę już moją grę w SFML, i klasę "wall", która robi po prostu kolizje(kwadraty), mam tez drzwi, i chciałbym by po kupieniu drzwi, kolizja z tych drzwi znikała. Teoretycznie to działa, tylko że jak kupię jedne drzwi, kolizja znika ze wszystkich, jak mam to rozwiązać? (Dodam że drzwi kupuje się pod przyciskiem F)
//PRZED PETLA GLOWNA
wall1.destructable = true;
wall1.rect.setPosition(GateRect.getPosition().x, GateRect.getPosition().y);
wall1.rect.setSize(sf::Vector2f(150, 50));
wallArray.push_back(wall1);
wall1.rect.setPosition(DoorKFCRect.getPosition().x, DoorKFCRect.getPosition().y);
wall1.rect.setSize(sf::Vector2f(50, 50));
wallArray.push_back(wall1);
wall1.rect.setPosition(WideGateRect.getPosition().x, WideGateRect.getPosition().y+50);
wall1.rect.setSize(sf::Vector2f(150, 50));
wallArray.push_back(wall1);
wall1.rect.setPosition(WideGateRect2.getPosition().x, WideGateRect2.getPosition().y + 50);
wall1.rect.setSize(sf::Vector2f(150, 50));
wallArray.push_back(wall1);
wall1.rect.setPosition(WideGateRect3.getPosition().x, WideGateRect3.getPosition().y + 50);
wall1.rect.setSize(sf::Vector2f(150, 50));
wallArray.push_back(wall1);
wall1.rect.setPosition(FurtkaRect.getPosition().x, FurtkaRect.getPosition().y);
wall1.rect.setSize(sf::Vector2f(150, 50));
wallArray.push_back(wall1);
wallArray.push_back(wall1);
wall1.rect.setPosition(BramaRect.getPosition().x, BramaRect.getPosition().y + 50);
wall1.rect.setSize(sf::Vector2f(150, 50));
wallArray.push_back(wall1);
//kolizja zrobiona, juz na mapie
//W PETLI GLOWNEJ
counter2 = 0;
for (iter15 = wallArray.begin(); iter15 != wallArray.end(); iter15++)
{
if (Player1.rect.getGlobalBounds().intersects((wallArray[counter2].rect.getGlobalBounds())), sf::Keyboard::isKeyPressed(sf::Keyboard::F))
{
if (wallArray[counter2].destructable == true)
{
wallArray[counter2].destroy = true;
}
}
counter2++;
}