]> git.localhorst.tv Git - l2e.git/blobdiff - src/graphics/Sprite.h
pass point as reference in graphics Draw functions
[l2e.git] / src / graphics / Sprite.h
index 4a99af421232e6638e71534944aa1d47ba23fdcd..6aa6c94d88f4ae78fd8977ae84bb9b61228dbba2 100644 (file)
@@ -25,12 +25,16 @@ public:
 public:
        int Width() const { return width; }
        int Height() const { return height; }
-       void Draw(SDL_Surface *dest, geometry::Point<int> position, int col = 0, int row = 0) const;
-       void DrawCenter(SDL_Surface *dest, geometry::Point<int> position, int col = 0, int row = 0) const {
+       void Draw(SDL_Surface *dest, const geometry::Point<int> &position, int col = 0, int row = 0) const;
+       void DrawTopRight(SDL_Surface *dest, const geometry::Point<int> &position, int col = 0, int row = 0) const {
+               geometry::Vector<int> offset(-Width(), 0);
+               Draw(dest, position + offset, col, row);
+       }
+       void DrawCenter(SDL_Surface *dest, const geometry::Point<int> &position, int col = 0, int row = 0) const {
                geometry::Vector<int> offset(-Width() / 2, -Height() / 2);
                Draw(dest, position + offset, col, row);
        }
-       void DrawCenterBottom(SDL_Surface *dest, geometry::Point<int> position, int col = 0, int row = 0) const {
+       void DrawCenterBottom(SDL_Surface *dest, const geometry::Point<int> &position, int col = 0, int row = 0) const {
                geometry::Vector<int> offset(-Width() / 2, -Height());
                Draw(dest, position + offset, col, row);
        }