2P11/src/Controllers/SFMLController/SFMLController.cpp

74 lines
1.3 KiB
C++
Raw Normal View History

#include "SFMLController.hpp"
2015-05-04 17:12:57 +02:00
//==================== Constructor and Destructor ====================
2015-05-04 17:12:57 +02:00
//Constructor
2015-05-04 14:05:06 +02:00
SFMLController::SFMLController() : m_game(), m_MainWindow(600,800, "2P11"){
}
2015-05-04 17:12:57 +02:00
//Destructor
SFMLController::~SFMLController(){
}
2015-05-04 17:12:57 +02:00
//Run controller
void SFMLController::run(){
2015-05-04 17:12:57 +02:00
//Init keypress
kbdh::Direction keyPress;
2015-05-04 17:12:57 +02:00
//First pop
m_game.popRandomNumber();
2015-05-04 17:12:57 +02:00
//Start game
while(m_MainWindow.isOpen()){
//Check event
sf::Event event;
while (m_MainWindow.pollEvent(event))
{
// évènement "fermeture demandée" : on ferme la fenêtre
if (event.type == sf::Event::Closed)
m_MainWindow.close();
if (event.type == sf::Event::KeyPressed)
{
if (event.key.code == sf::Keyboard::Up)
{
m_game.swipe(kbdh::Direction::Up);
}
if (event.key.code == sf::Keyboard::Down)
{
m_game.swipe(kbdh::Direction::Down);
// Do something when W is pressed...
}
if (event.key.code == sf::Keyboard::Left){
m_game.swipe(kbdh::Direction::Left);
}
if (event.key.code == sf::Keyboard::Right){
m_game.swipe(kbdh::Direction::Right);
}
// And so on.
}
}
2015-05-04 17:12:57 +02:00
//Clear window
m_MainWindow.clearBG();
2015-05-04 17:12:57 +02:00
//Draw the game
m_MainWindow.drawGame(m_game.getGrid(),m_game.isOver(), m_game.getStats());
2015-05-04 17:12:57 +02:00
//Display the changements
m_MainWindow.display();
}
2015-05-04 17:12:57 +02:00
}