beefviper

Pong 0.01

Mar 20th, 2019
164
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. // main.cpp
  2.  
  3. #include <SFML/Graphics.hpp>
  4. #include <string>
  5. #include <iostream>
  6.  
  7. int main(void)
  8. {
  9.     std::string name = "Pong";
  10.     int screenWidth = 1280;
  11.     int screenHeight = 720;
  12.     int framerate = 60;
  13.     float ballDiameter = 20;
  14.     int ballSpeed = 5;
  15.     float paddleWidth = 20;
  16.     float paddleHeight = 100;
  17.  
  18.     sf::VideoMode videoMode(screenWidth, screenHeight);
  19.     sf::RenderWindow window;
  20.     window.create(videoMode, name);
  21.     window.setFramerateLimit(framerate);
  22.  
  23.     sf::CircleShape ball(ballDiameter);
  24.     ball.setFillColor(sf::Color::Red);
  25.     ball.setPosition(screenWidth / 2.0f, screenHeight / 2.0f);
  26.  
  27.     sf::RectangleShape paddle1(sf::Vector2f(paddleWidth, paddleHeight));
  28.     paddle1.setFillColor(sf::Color::Blue);
  29.     paddle1.setPosition(paddleWidth, screenHeight / 2 - paddleHeight / 2);
  30.  
  31.     sf::RectangleShape paddle2(sf::Vector2f(paddleWidth, paddleHeight));
  32.     paddle2.setFillColor(sf::Color::Blue);
  33.     paddle2.setPosition(screenWidth - 2 * paddleWidth, screenHeight / 2 - paddleHeight / 2);
  34.  
  35.     while (window.isOpen())
  36.     {
  37.  
  38.         sf::Event event;
  39.  
  40.         while (window.pollEvent(event))
  41.         {
  42.             switch (event.type)
  43.             {
  44.             case sf::Event::Closed:
  45.                 window.close();
  46.                 break;
  47.  
  48.             case sf::Event::KeyPressed:
  49.                 switch (event.key.code)
  50.                 {
  51.                 case sf::Keyboard::Escape:
  52.                     window.close();
  53.                     break;
  54.  
  55.                 case sf::Keyboard::Up:
  56.                     paddle1.setPosition(paddle1.getPosition().x, paddle1.getPosition().y - 5);
  57.                     break;
  58.  
  59.                 case sf::Keyboard::Down:
  60.                     paddle1.setPosition(paddle1.getPosition().x, paddle1.getPosition().y + 5);
  61.                     break;
  62.  
  63.                 default:
  64.                     break;
  65.                 }
  66.                 break;
  67.  
  68.             default:
  69.                 break;
  70.             }
  71.         }
  72.  
  73.  
  74.  
  75.         window.clear();
  76.  
  77.         window.draw(ball);
  78.         window.draw(paddle1);
  79.         window.draw(paddle2);
  80.  
  81.         window.display();
  82.     }
  83.  
  84.     return 0;
  85. }
RAW Paste Data