#include "floating_image.hpp"
FloatingImage::FloatingImage(const std::string& spritefile)
- : sprite(NULL), layer(LAYER_FOREGROUND1 + 1), visible(false),
- anchor(ANCHOR_MIDDLE)
+ : layer(LAYER_FOREGROUND1 + 1), visible(false), anchor(ANCHOR_MIDDLE)
{
- sprite = sprite_manager->create(spritefile);
+ sprite.reset(sprite_manager->create(spritefile));
}
FloatingImage::~FloatingImage()
{
- delete sprite;
}
void
context.push_transform();
context.set_translation(Vector(0, 0));
- Vector pos = get_anchor_pos(Rect(0, 0, SCREEN_WIDTH, SCREEN_HEIGHT),
+ Vector spos = pos + get_anchor_pos(Rect(0, 0, SCREEN_WIDTH, SCREEN_HEIGHT),
sprite->get_width(), sprite->get_height(), anchor);
- sprite->draw(context, pos, layer);
+ sprite->draw(context, spos, layer);
context.pop_transform();
}