X-Git-Url: http://git.localhorst.tv/?a=blobdiff_plain;f=src%2Fgraphics%2FAnimation.h;h=2696694a4f4235cc9454af5b2528ad1a80788567;hb=3ecf065f3bcef720e82bb137a2be734ed7e16746;hp=e26bca9c2cc889b9c39ef466442394dfa798d04c;hpb=0542849dfccfec1ce1477265fa0fee2401a8fb23;p=l2e.git diff --git a/src/graphics/Animation.h b/src/graphics/Animation.h index e26bca9..2696694 100644 --- a/src/graphics/Animation.h +++ b/src/graphics/Animation.h @@ -28,11 +28,15 @@ public: virtual ~Animation() { }; public: - const Sprite *GetSprite() const { return sprite; } int FrameTime() const { return frameTime; } bool Repeat() const { return repeat; } +public: + void SetSprite(const Sprite *s) { sprite = s; } + void SetFrameTime(int t) { frameTime = t; } + void SetRepeat(bool r) { repeat = r; } + public: virtual int NumFrames() const = 0; virtual int Col(int frame) const = 0; @@ -97,8 +101,7 @@ public: Draw(dest, position + offset); } void DrawCenter(SDL_Surface *dest, geometry::Vector position) const { - geometry::Vector offset(-sprite->Width() / 2, -sprite->Height() / 2); - Draw(dest, position + offset); + Draw(dest, position - (sprite->Size() / 2)); } void DrawCenterBottom(SDL_Surface *dest, geometry::Vector position) const { geometry::Vector offset(-sprite->Width() / 2, -sprite->Height());