You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

71 lines
1.3 KiB
C++

#include "classicsprite.h"
ClassicSprite::ClassicSprite(ClassicSprite::Init&& init) :
_reset_color(init.color),
_shape(init.shape),
_trail(init.trail)
{
_shape->setColor(init.color);
_trail->setColor(init.color);
}
void ClassicSprite::reset()
{
_shape->setPosition(kku::Point{0, 0});
_trail->setPosition(kku::Point{0, 0});
_shape->setColor(_reset_color);
_trail->setColor(_reset_color);
}
void ClassicSprite::setPosition(const kku::Point& position)
{
_shape->setPosition(position);
}
void ClassicSprite::setTrailPosition(const kku::Point &position)
{
_trail->setPosition(position);
}
kku::Point ClassicSprite::getPosition() const
{
return _shape->getPosition();
}
kku::Point ClassicSprite::getTrailPosition() const
{
return _trail->getPosition();
}
void ClassicSprite::setColor(const kku::Color& color)
{
_shape->setColor(color);
}
void ClassicSprite::setTrailColor(const kku::Color& color)
{
_trail->setColor(color);
}
kku::Color ClassicSprite::getColor() const
{
return _shape->getColor();
}
kku::Color ClassicSprite::getTrailColor() const
{
return _trail->getColor();
}
void ClassicSprite::display() const
{
_shape->display();
_trail->display();
}
std::shared_ptr<const kku::Rectangle> ClassicSprite::getRectangle() const
{
return _shape;
}