49 lines
929 B
C++
Raw Normal View History

2018-09-27 00:10:42 +03:00
#include "itemworld.h"
2019-02-19 16:07:38 +03:00
#include "snakeutils.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-12-01 21:06:40 +03:00
ItemWorld::ItemWorld(double x, double y, const QString& guiTemplate):
GuiObject (guiTemplate) {
2018-11-25 03:24:41 +03:00
setLoc(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-11-25 03:24:41 +03:00
void ItemWorld::setSize(double h, double w) {
setH(h);
setW(w);
2018-09-27 14:59:10 +03:00
}
2018-11-25 03:24:41 +03:00
void ItemWorld::setLoc(double x, double y) {
setX(x);
setY(y);
}
2018-09-27 00:10:42 +03:00
2018-11-25 03:24:41 +03:00
void ItemWorld::render() {
2018-12-01 21:06:40 +03:00
if (m_x + w() < 0) {
2018-11-25 03:24:41 +03:00
m_x = (rand() % 400) + 200;
m_y = rand() % 100;
emit xChanged(m_x);
emit yChanged(m_y);
2018-10-11 18:09:35 +03:00
}
}
2018-10-11 00:04:52 +03:00
2018-11-25 03:24:41 +03:00
bool ItemWorld::move(const GuiObject *snakeRiger, double dx) {
m_x -= dx;
emit xChanged(m_x);
2018-10-11 00:04:52 +03:00
2018-11-25 03:24:41 +03:00
return snakeRiger->rect().intersects(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() {}