#include "./ConsoleController.hpp" #include #include "../../Model/ModelConstants.hpp" ConsoleController::ConsoleController() { m_game = new Game(); } ConsoleController::~ConsoleController() { delete m_game; } void ConsoleController::play() { std::cout << "Use arrows to play !" << std::endl; //Init keyPress Direction keyPress; //Display the first grid m_game->showGrid(); //Start game while (!m_game->isOver()) { //Wait for keypress while(1){ if (sf::Keyboard::isKeyPressed(sf::Keyboard::Left)) { keyPress=LEFT; while(sf::Keyboard::isKeyPressed(sf::Keyboard::Left)) { //Wait for release } break; } if (sf::Keyboard::isKeyPressed(sf::Keyboard::Right)) { keyPress=RIGHT; while(sf::Keyboard::isKeyPressed(sf::Keyboard::Right)) { //Wait for release } break; } if (sf::Keyboard::isKeyPressed(sf::Keyboard::Up)) { keyPress=UP; while(sf::Keyboard::isKeyPressed(sf::Keyboard::Up)) { //Wait for release } break; } if (sf::Keyboard::isKeyPressed(sf::Keyboard::Down)) { // la touche "flèche gauche" est enfoncée : on bouge le personnage keyPress=DOWN; while(sf::Keyboard::isKeyPressed(sf::Keyboard::Down)) { //Wait for release } break; } } //Check for keypress switch (keyPress) { case UP: std::cout << "up" << std::endl; break; case DOWN: std::cout << "down" << std::endl; break; case LEFT: std::cout << "left" << std::endl; break; case RIGHT: std::cout << "right" << std::endl; break; default: break; } //Show the Grid m_game->showGrid(); std::cout << std::endl; //Pop new number m_game->pop(); } }