diff --git a/src/Controller/ConsoleController/ConsoleController.cpp b/src/Controller/ConsoleController/ConsoleController.cpp index f4d6b4d..81e16f4 100644 --- a/src/Controller/ConsoleController/ConsoleController.cpp +++ b/src/Controller/ConsoleController/ConsoleController.cpp @@ -1,4 +1,6 @@ #include "./ConsoleController.hpp" +#include +#include "../../Model/ModelConstants.hpp" ConsoleController::ConsoleController() { @@ -12,35 +14,88 @@ ConsoleController::~ConsoleController() 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()) { - m_game->showGrid(); - char moveChoice = ' '; + //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; + } + } - std::cin >> moveChoice; - switch (moveChoice) + //Check for keypress + switch (keyPress) { - case 'z': + case UP: std::cout << "up" << std::endl; break; - case 's': + case DOWN: std::cout << "down" << std::endl; break; - case 'q': + case LEFT: std::cout << "left" << std::endl; break; - case 'd': + case RIGHT: std::cout << "right" << std::endl; break; - default: + default: break; } + //Show the Grid + m_game->showGrid(); std::cout << std::endl; + + //Pop new number m_game->pop(); + } } diff --git a/src/Model/Grid.cpp b/src/Model/Grid.cpp index e484fc3..75c0209 100644 --- a/src/Model/Grid.cpp +++ b/src/Model/Grid.cpp @@ -29,7 +29,6 @@ Grid::~Grid() } } - void Grid::show() { std::cout << "_________________" << std::endl;