Advertisement
Guest User

Personnage.cpp

a guest
Aug 22nd, 2017
287
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.28 KB | None | 0 0
  1. #include "Personnage.h"
  2.  
  3. Personnage::Personnage(sf::RenderWindow *window, sf::Texture *texture, Vue *vue) : m_window(window), m_texture(texture), m_view(vue)
  4. {
  5.     m_sprite = new sf::Sprite(*m_texture);
  6.     m_sprite->setScale(m_window->getSize().y / 1440.f, m_window->getSize().y / 1440.f);
  7.     m_x = 0.f;
  8.     m_y = window->getSize().y - m_sprite->getGlobalBounds().height;
  9.     m_speed = 7.f;
  10.     m_sprite->setPosition(m_x, m_y);
  11.     update();
  12. }
  13.  
  14. Personnage::~Personnage()
  15. {
  16.     delete m_sprite;
  17. }
  18.  
  19. /**********************************
  20. *                                 *
  21. *           METHODES              *
  22. *                                 *
  23. ***********************************/
  24.  
  25. float Personnage::getX() const { return this->m_x; }
  26. float Personnage::getY() const { return this->m_y; }
  27. float Personnage::getSpeed() const { return this->m_speed; }
  28. sf::Sprite& Personnage::getSprite() const { return *m_sprite; }
  29.  
  30. void Personnage::move(int direction)
  31. {
  32.     switch (direction)
  33.     {
  34.     case 2:
  35.         m_x -= m_speed;
  36.         break;
  37.  
  38.     case 3:
  39.         m_x += m_speed;
  40.         break;
  41.  
  42.     default:
  43.         break;
  44.     }
  45.  
  46.     update();
  47. }
  48.  
  49. void Personnage::update()
  50. {
  51.     m_sprite->setPosition(m_x, m_y);
  52.     m_top = m_y;
  53.     m_bottom = m_y + m_sprite->getGlobalBounds().height;
  54.     m_left = m_x;
  55.     m_right = m_x + m_sprite->getGlobalBounds().width;
  56. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement