From 164d94eec1b88f0e9a466585b512fc8dca4c80ed Mon Sep 17 00:00:00 2001 From: manzerbredes Date: Mon, 4 May 2015 14:00:54 +0200 Subject: Add stats class, make a functionnal SFML game --- src/Model/CMakeLists.txt | 2 +- src/Model/Game.cpp | 14 +++++--------- src/Model/Game.hpp | 8 +++----- src/Model/Stats.cpp | 29 +++++++++++++++++++++++++++++ src/Model/Stats.hpp | 30 ++++++++++++++++++++++++++++++ 5 files changed, 68 insertions(+), 15 deletions(-) create mode 100644 src/Model/Stats.cpp create mode 100644 src/Model/Stats.hpp (limited to 'src/Model') diff --git a/src/Model/CMakeLists.txt b/src/Model/CMakeLists.txt index 888589e..4ebe544 100644 --- a/src/Model/CMakeLists.txt +++ b/src/Model/CMakeLists.txt @@ -1,2 +1,2 @@ #Make Model lib -add_library(Model Grid.cpp Game.cpp) +add_library(Model Grid.cpp Game.cpp Stats.cpp) diff --git a/src/Model/Game.cpp b/src/Model/Game.cpp index 9c67184..5781f54 100644 --- a/src/Model/Game.cpp +++ b/src/Model/Game.cpp @@ -4,7 +4,7 @@ //==================== Constructor and Destructor ==================== //Constructor -Game::Game() : Grid(), m_nbMove(0), m_score(0){ +Game::Game() : Grid(), m_stats(){ } //Destructor @@ -35,8 +35,8 @@ bool Game::swipe(kbdh::Direction direction){ } if(moveDone){ - m_score+=m_lastMoveScore; - m_nbMove++; + m_stats.incScore(m_lastMoveScore); + m_stats.incnbMove(); this->popRandomNumber(); } @@ -75,14 +75,10 @@ void Game::popRandomNumber(){ //==================== Getters and Setter ==================== //Retrieve the Score -int Game::getScore(){ - return m_score; +Stats Game::getStats(){ + return m_stats; } -//Retrieve the number of moves -int Game::getNbMove(){ - return m_nbMove; -} //std::vector > Game::getGrid(){ //return m_grid.getGrid(); diff --git a/src/Model/Game.hpp b/src/Model/Game.hpp index 77be7d7..e468176 100644 --- a/src/Model/Game.hpp +++ b/src/Model/Game.hpp @@ -11,6 +11,7 @@ #include #include "../Helpers/Keyboard.hpp" #include "Grid.hpp" +#include "Stats.hpp" #include class Game : public Grid @@ -18,9 +19,7 @@ class Game : public Grid private: //Members //Grid m_grid; - int m_score; - int m_nbMove; - + Stats m_stats; public: //Constructor and Destructor Game(); @@ -33,8 +32,7 @@ class Game : public Grid //bool isOver(); //Getters and Setters - int getScore(); - int getNbMove(); + Stats getStats(); //int maxStrLenInGrid(); //std::vector > getGrid(); }; diff --git a/src/Model/Stats.cpp b/src/Model/Stats.cpp new file mode 100644 index 0000000..8bada78 --- /dev/null +++ b/src/Model/Stats.cpp @@ -0,0 +1,29 @@ +#include "Stats.hpp" + + +Stats::Stats() : + m_score(0), + m_nbMove(0) +{ + +} + +Stats::~Stats(){ +} + + + +void Stats::incScore(int value){ + m_score+=value; +} +void Stats::incnbMove(){ + m_nbMove++; +} + + +int Stats::getScore(){ + return m_score; +} +int Stats::getNbMove(){ + return m_nbMove; +} diff --git a/src/Model/Stats.hpp b/src/Model/Stats.hpp new file mode 100644 index 0000000..49c7356 --- /dev/null +++ b/src/Model/Stats.hpp @@ -0,0 +1,30 @@ +#ifndef __STATS__ +#define __STATS__ + +#include + + + + + +class Stats{ + + private: + int m_score; + int m_nbMove; + public: + + Stats(); + ~Stats(); + void incScore(int value); + void incnbMove(); + + + int getScore(); + int getNbMove(); + + + +}; + +#endif -- cgit v1.2.3