X-Git-Url: http://git.localhorst.tv/?a=blobdiff_plain;f=src%2Fgraphics%2FSprite.h;h=942d98e51e5e7424d791d657aa7ab94d4371ace3;hb=0542849dfccfec1ce1477265fa0fee2401a8fb23;hp=4a99af421232e6638e71534944aa1d47ba23fdcd;hpb=c61de0e168aa0ff5d5f1e429302d1cb2160ac1e4;p=l2e.git diff --git a/src/graphics/Sprite.h b/src/graphics/Sprite.h index 4a99af4..942d98e 100644 --- a/src/graphics/Sprite.h +++ b/src/graphics/Sprite.h @@ -8,8 +8,6 @@ #ifndef GRAPHICS_SPRITE_H_ #define GRAPHICS_SPRITE_H_ -#include "../geometry/operators.h" -#include "../geometry/Point.h" #include "../geometry/Vector.h" #include @@ -25,12 +23,16 @@ public: public: int Width() const { return width; } int Height() const { return height; } - void Draw(SDL_Surface *dest, geometry::Point position, int col = 0, int row = 0) const; - void DrawCenter(SDL_Surface *dest, geometry::Point position, int col = 0, int row = 0) const { + void Draw(SDL_Surface *dest, const geometry::Vector &position, int col = 0, int row = 0) const; + void DrawTopRight(SDL_Surface *dest, const geometry::Vector &position, int col = 0, int row = 0) const { + geometry::Vector offset(-Width(), 0); + Draw(dest, position + offset, col, row); + } + void DrawCenter(SDL_Surface *dest, const geometry::Vector &position, int col = 0, int row = 0) const { geometry::Vector offset(-Width() / 2, -Height() / 2); Draw(dest, position + offset, col, row); } - void DrawCenterBottom(SDL_Surface *dest, geometry::Point position, int col = 0, int row = 0) const { + void DrawCenterBottom(SDL_Surface *dest, const geometry::Vector &position, int col = 0, int row = 0) const { geometry::Vector offset(-Width() / 2, -Height()); Draw(dest, position + offset, col, row); }