diff --git a/back-end/head.cpp b/back-end/head.cpp index 8658300..ed07114 100644 --- a/back-end/head.cpp +++ b/back-end/head.cpp @@ -33,18 +33,12 @@ void Head::render(){ time = QDateTime::currentMSecsSinceEpoch(); } -double *Head::getSpeed() const -{ - return speed; +double Head::getSpeed() const { + return *speed; } -void Head::setSpeed(double *speed) -{ - this->speed = speed; -} - -Head::Head() { - +Head::Head(double *spead) { + this->speed = spead; } Head::~Head() { diff --git a/back-end/head.h b/back-end/head.h index ae10fc3..93c3fe6 100644 --- a/back-end/head.h +++ b/back-end/head.h @@ -14,7 +14,7 @@ private: qint64 time; double *speed; public: - Head(); + Head(double *speed); double getAngle() const; void setAngle(double angle); @@ -24,7 +24,7 @@ public: double getX() const; void setX(double x); - double *getSpeed() const; + double getSpeed() const; void setSpeed(double *value); void render(); diff --git a/back-end/snake.cpp b/back-end/snake.cpp index d897c1d..724cc69 100644 --- a/back-end/snake.cpp +++ b/back-end/snake.cpp @@ -1,23 +1,41 @@ #include "snake.h" -void Snake::setItems(const QVector
&value) -{ - items = value; -} - -QVector Snake::getItems() const -{ - return items; -} - -void Snake::setSpeedHead(){ - for(int i = 0;i < getItems().size(); ++i){ - getItems().at(i)->setSpeed(&speed); - } -} Snake::Snake() : - speed(SPEEDSNAKE) -{ - setSpeedHead(); + _speed(SPEEDSNAKE){ +} + +const QVector &Snake::getItems() const { + return _items; +} + +void Snake::render() { +// зздесь должна быть реализация рендера змейки +// for (auto i : _items) { +// i->render(); +// } +} + +bool Snake::init(int size, double spead) { + + if (size < 0 || spead <= 0) { + return false; + } + + _speed = spead; + + for ( int i = size; i >= 0; --i ) { + _items.push_back( new Head(&_speed)); + } + + return true; + +} + +Snake::~Snake() { + for (auto i : _items) { + delete i; + } + _items.clear(); + } diff --git a/back-end/snake.h b/back-end/snake.h index a2ad9b1..60c64fc 100644 --- a/back-end/snake.h +++ b/back-end/snake.h @@ -5,17 +5,20 @@ #include