From 71ebf1235ed023425c2539eabf1d15ba922c1dda Mon Sep 17 00:00:00 2001 From: krilius Date: Thu, 30 Apr 2015 08:48:29 +0400 Subject: first version of the controller --- src/CTController/CTConsole.cpp | 48 ++++++++++++++++++++++++++++++++++++++++++ src/CTController/CTConsole.hpp | 26 +++++++++++++++++++++++ 2 files changed, 74 insertions(+) create mode 100644 src/CTController/CTConsole.cpp create mode 100644 src/CTController/CTConsole.hpp (limited to 'src/CTController') diff --git a/src/CTController/CTConsole.cpp b/src/CTController/CTConsole.cpp new file mode 100644 index 0000000..44b598e --- /dev/null +++ b/src/CTController/CTConsole.cpp @@ -0,0 +1,48 @@ +#include "CTConsole.hpp" + +CTConsole::CTConsole() +{ + m_game = new Game(); +} + +CTConsole::~CTConsole() +{ + delete m_game; +} + +void CTConsole::play() +{ + while (!m_game->isOver()) + { + m_game->showGrid(); + char moveChoice = ' '; + + std::cin >> moveChoice; + + switch (moveChoice) + { + case 'z': + std::cout << "up" << std::endl; + break; + + case 's': + std::cout << "down" << std::endl; + break; + + case 'q': + std::cout << "left" << std::endl; + break; + + case 'd': + std::cout << "right" << std::endl; + break; + + default: + break; + } + + std::cout << std::endl; + + m_game->pop(); + } +} \ No newline at end of file diff --git a/src/CTController/CTConsole.hpp b/src/CTController/CTConsole.hpp new file mode 100644 index 0000000..9534877 --- /dev/null +++ b/src/CTController/CTConsole.hpp @@ -0,0 +1,26 @@ +#ifndef DEF_CTCONSOLE +#define DEF_CTCONSOLE + +/* CTConsole.hpp + * Defines the class CTConsole + * CTConsole is a controller which displays a game in a terminal + * Creators : krilius, manzerbredes + * Date : 29/04/2915 */ + +#include + +#include "../Model/Game.hpp" + +class CTConsole +{ +private: + Game * m_game; + +public: + CTConsole(); + ~CTConsole(); + + void play(); +}; + +#endif \ No newline at end of file -- cgit v1.2.3