Guest User

Untitled

a guest
Nov 18th, 2017
84
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.91 KB | None | 0 0
  1. #include "stdafx.h"
  2. #include <SFML/Graphics.hpp>
  3. #include "Animation.h"
  4. #include "Player.h"
  5. #include "Fence.h"
  6.  
  7. static const float VIEW_HEIGHT = 900;
  8. static const float VIEW_WIDTH = 1500;
  9.  
  10. void ResizeView(const sf::RenderWindow& window, sf::View & view)
  11. {
  12. float aspectRatio = float(window.getSize().x) / float(window.getSize().y);
  13. view.setSize(VIEW_WIDTH * aspectRatio, VIEW_HEIGHT);
  14. }
  15.  
  16. int main()
  17. {
  18. sf::RenderWindow window(sf::VideoMode(VIEW_WIDTH, VIEW_HEIGHT, 32), "DUDUDUD", sf::Style::Close | sf::Style::Resize);
  19.  
  20. sf::Texture playerTexture;
  21. playerTexture.loadFromFile("player_layout.png");
  22.  
  23. sf::Texture background_texture;
  24. background_texture.loadFromFile("background.jpg");
  25.  
  26. sf::Sprite map;
  27. map.setTexture(background_texture);
  28.  
  29. sf::View view(sf::Vector2f(0.0f, 0.0f), sf::Vector2f(VIEW_WIDTH, VIEW_HEIGHT));
  30.  
  31. Fence fence1(nullptr, sf::Vector2f(400.0f, 200.0f), sf::Vector2f(500.0f, 100.0f));
  32. Fence fence2(nullptr, sf::Vector2f(200.0f, 200.0f), sf::Vector2f(100.0f, 0.0f));
  33.  
  34. Player player(&playerTexture, sf::Vector2u(4, 4), 0.1f, 100.0f);
  35.  
  36. float deltatime = 0.0f;
  37. sf::Clock clock;
  38. while (window.isOpen())
  39. {
  40. deltatime = clock.restart().asSeconds();
  41. sf::Event zdarzenie;
  42. while (window.pollEvent(zdarzenie))
  43. {
  44. switch (zdarzenie.type)
  45. {
  46. case sf::Event::Closed:
  47. window.close();
  48. break;
  49. case sf::Event::KeyPressed:
  50. if (zdarzenie.key.code == sf::Keyboard::Escape)
  51. window.close();
  52. break;
  53. case sf::Event::Resized:
  54. ResizeView(window, view);
  55. break;
  56. default:
  57. break;
  58. }
  59.  
  60. }
  61. player.Update(deltatime);
  62.  
  63. view.setCenter(player.GetPosition());
  64.  
  65. fence1.GetCollider().CheckCollision(player.GetCollider(), 1.0f);
  66. fence2.GetCollider().CheckCollision(player.GetCollider(), 1.0f);
  67. view.setCenter(player.GetPosition());
  68.  
  69. window.clear(sf::Color::Black);
  70. window.draw(map);
  71. player.Draw(window, view);
  72. fence1.Draw(window);
  73. fence2.Draw(window);
  74. window.display();
  75. }
  76.  
  77. return 0;
  78. }
Add Comment
Please, Sign In to add comment