Snake/back-end/itemworld.cpp

45 lines
841 B
C++
Raw Normal View History

2018-09-27 00:10:42 +03:00
#include "itemworld.h"
2018-10-11 18:09:35 +03:00
#include "utils.h"
2018-09-27 00:10:42 +03:00
#include <cmath>
2018-10-11 00:04:52 +03:00
#include <QDebug>
#include <QRectF>
2018-09-27 00:10:42 +03:00
2018-11-16 02:08:35 +03:00
#define POINT 100
2018-10-11 00:04:52 +03:00
ItemWorld::ItemWorld(double x, double y) {
2018-10-11 18:09:35 +03:00
setSize(x, y);
2018-09-27 14:59:10 +03:00
}
2018-10-11 18:09:35 +03:00
void ItemWorld::setBeckGroundObject(bool value) {
2018-10-11 00:04:52 +03:00
beckGroundObject = value;
}
2018-09-27 00:10:42 +03:00
2018-09-27 14:59:10 +03:00
void ItemWorld::setSize(double x, double y) {
QRectF rect;
rect.setX(x);
rect.setY(y);
setRect(rect);
2018-09-27 14:59:10 +03:00
}
void ItemWorld::render() {
2018-10-11 18:09:35 +03:00
if (m_rect.x() < 0) {
2018-11-16 02:08:35 +03:00
m_rect.setX(rand() % 200);
m_rect.setY(rand() % 100);
2018-10-11 18:09:35 +03:00
emit rectChanged(m_rect);
2018-09-27 00:10:42 +03:00
2018-10-11 18:09:35 +03:00
}
}
2018-10-11 00:04:52 +03:00
2018-10-11 18:09:35 +03:00
bool ItemWorld::move(const QRectF &snakeRiger, double dx) {
m_rect.setX( m_rect.x() - dx);
emit rectChanged(m_rect);
2018-10-11 00:04:52 +03:00
2018-10-11 18:09:35 +03:00
return snakeRiger.intersects(m_rect) && !beckGroundObject;
2018-10-11 00:04:52 +03:00
}
bool ItemWorld::isBeckGroundObject() {
return beckGroundObject;
}
2018-10-11 18:09:35 +03:00
ItemWorld::~ItemWorld() {}