Bonjours je suis nouveau dans le domaine de la programmation (1 mois)
et j'ais un problème avec les collisions de mon casse brique si une âme charitable pourrais m'éclairer sa serais apprécier.
je vous donne le code complet:
#include "pch.h"
#include <iostream>
#include <SFML/Graphics.hpp>
int main()
{
bool Ismove = false;
sf::RenderWindow window(sf::VideoMode(1280, 800), "My window");
sf::CircleShape balle(10.f, 10.f);
balle.setPosition(balle.getPosition().x + 675, balle.getPosition().y + 730);
sf::RectangleShape raquette(sf::Vector2f(100.f, 20.f));
raquette.setPosition(raquette.getPosition().x + 640, raquette.getPosition().y + 750);
while (window.isOpen())
{
sf::Event event;
while (window.pollEvent(event))
{
if (event.type == sf::Event::Closed)
window.close();
}
window.clear(sf::Color::Black);
if (sf::Keyboard::isKeyPressed(sf::Keyboard::A))
{
raquette.move(-0.10f, 0.f);
if (Ismove == false)
{
// deplacement
balle.move(-0.10f, 0.f);
}
else
{
}
}
else if (sf::Keyboard::isKeyPressed(sf::Keyboard:
))
{
raquette.move(0.10f, 0.f);
if (Ismove == false)
{
balle.move(0.10f, 0.f);
}
else
{
}
}
else if (sf::Keyboard::isKeyPressed(sf::Keyboard::Space))
{
//regarde si la valeur est vrais
Ismove = true;
}
if (Ismove == true ) // applique la valeur Ismove
{
if (balle.getPosition().y > 0.0 || balle.getPosition().x > 0.0)
{
balle.move(0.0f, -0.1f);
}
if (balle.getPosition().y < 0.0 || balle.getPosition().x < 0.0)
{
balle.move(0.0f, 0.1f);
}
}
window.draw(balle);
window.draw(raquette);
window.display();
}
return 0;
}