2018-09-27 00:10:42 +03:00
|
|
|
#include "itemworld.h"
|
|
|
|
#include <cmath>
|
|
|
|
#include <QDateTime>
|
2018-10-11 00:04:52 +03:00
|
|
|
#include <QDebug>
|
|
|
|
#include <QRectF>
|
2018-09-27 00:10:42 +03:00
|
|
|
|
2018-10-11 00:04:52 +03:00
|
|
|
ItemWorld::ItemWorld(double x, double y) {
|
2018-09-30 16:26:06 +03:00
|
|
|
this->x = x;
|
|
|
|
this->y = y;
|
2018-09-27 14:59:10 +03:00
|
|
|
}
|
|
|
|
|
2018-10-11 00:04:52 +03:00
|
|
|
void ItemWorld::setSpeed(double *value) {
|
|
|
|
speed = value;
|
|
|
|
}
|
|
|
|
|
|
|
|
void ItemWorld::setBeckGroundObject(bool value)
|
|
|
|
{
|
|
|
|
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) {
|
|
|
|
sizeX = x;
|
|
|
|
sizeY = y;
|
|
|
|
}
|
|
|
|
|
|
|
|
void ItemWorld::render() {
|
2018-09-27 00:10:42 +03:00
|
|
|
qint64 tempTime = QDateTime::currentMSecsSinceEpoch() - time;
|
|
|
|
double mx = x + *speed;
|
|
|
|
x += (mx - x) / 1000 * tempTime;
|
|
|
|
time = QDateTime::currentMSecsSinceEpoch();
|
|
|
|
}
|
|
|
|
|
2018-10-11 00:04:52 +03:00
|
|
|
bool ItemWorld::checkContact(const QRectF &riger) {
|
|
|
|
|
|
|
|
bool result = riger.intersects(QRectF(x,y,sizeX, sizeY));
|
|
|
|
|
|
|
|
return result && !beckGroundObject;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool ItemWorld::isBeckGroundObject() {
|
|
|
|
return beckGroundObject;
|
|
|
|
}
|
|
|
|
|
2018-09-27 14:59:10 +03:00
|
|
|
ItemWorld::~ItemWorld()
|
|
|
|
{
|
|
|
|
|
|
|
|
}
|