59 lines
No EOL
1,004 B
C++
Executable file
59 lines
No EOL
1,004 B
C++
Executable file
#include "headers/spriteobject.hpp"
|
|
|
|
namespace asloengine
|
|
{
|
|
|
|
SpriteObject::SpriteObject(std::string _name)
|
|
: GameObject(_name) {}
|
|
|
|
SpriteObject::SpriteObject(std::string _name, sf::Texture& _texture)
|
|
: GameObject(_name)
|
|
{
|
|
|
|
load_texture(_texture);
|
|
|
|
}
|
|
|
|
SpriteObject::~SpriteObject() {}
|
|
|
|
void SpriteObject::load_texture(sf::Texture& _texture)
|
|
{
|
|
|
|
sprite = sf::Sprite(_texture);
|
|
|
|
on_main_property_update();
|
|
|
|
}
|
|
|
|
void SpriteObject::set_color(sf::Color& _color)
|
|
{
|
|
|
|
sprite.setColor(_color);
|
|
|
|
}
|
|
|
|
sf::Color SpriteObject::get_color() const
|
|
{
|
|
|
|
return sprite.getColor();
|
|
|
|
}
|
|
|
|
void SpriteObject::draw()
|
|
{
|
|
|
|
render_window->draw(sprite);
|
|
|
|
}
|
|
|
|
void SpriteObject::on_main_property_update()
|
|
{
|
|
|
|
sprite.setScale(scale);
|
|
sprite.setPosition(position);
|
|
sprite.setOrigin(origin * sprite.getLocalBounds());
|
|
sprite.setRotation(rotation);
|
|
|
|
}
|
|
|
|
} |