Witam robię gierkę ala space invaders i ostatnio utknąłem na strzelaniu. Chodzi o to, że jak mam zdefiniowaną klasę "strzala" i w momencie, gdy ją wywołuje po naciśnięciu spacji owszem pojawia się obiekt, ale po kolejnym naciśnięciu strzał znika i robi się od razu nowy obiekt. Tutaj próbuje zastosować tutaj wektory, ale nigdy na tym nie robiłem i jak widać ciągle coś źle robię. Tutaj jest kod:
if ((event.type == sf::Event::KeyPressed) && (event.key.code == sf::Keyboard::Space)){ std::cout << "Test"<< std::endl; canShoot = true; strzal1.strzala_sprite.setPosition(gracz1.gracz_sprite.getPosition()); } } vector <strzala> strzaly; window.clear(); if (canShoot) { strzaly.push_back(strzala()); for (int i = 0; i < strzaly.size(); i++){ sf::Vector2f dir(0,-4); window.draw(strzal1.strzala_sprite); strzal1.strzala_sprite.move(dir.x, dir.y); } } window.display();