diff options
author | Denis Kasak | 2009-07-20 17:25:57 +0000 |
---|---|---|
committer | Denis Kasak | 2009-07-20 17:25:57 +0000 |
commit | a2a71cb8fbdbf1426d73c6f09f315abf04cfcbb9 (patch) | |
tree | 9775895526760b51efd16912422aacb122859368 /engines/draci/sprite.h | |
parent | 18301b6f78fd6d7eb77b5055129b71d2b8dce270 (diff) | |
download | scummvm-rg350-a2a71cb8fbdbf1426d73c6f09f315abf04cfcbb9.tar.gz scummvm-rg350-a2a71cb8fbdbf1426d73c6f09f315abf04cfcbb9.tar.bz2 scummvm-rg350-a2a71cb8fbdbf1426d73c6f09f315abf04cfcbb9.zip |
* Added scaling support
* Made the dragon scale when it is in different parts of the room
* Added getters for relative coordinates (Animation::getRelativeX() and Animation::getRelativeY())
* Commented Game::loop() and Sprite::draw*() methods in more detail
svn-id: r42627
Diffstat (limited to 'engines/draci/sprite.h')
-rw-r--r-- | engines/draci/sprite.h | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/engines/draci/sprite.h b/engines/draci/sprite.h index 38ee2736ea..88a2858671 100644 --- a/engines/draci/sprite.h +++ b/engines/draci/sprite.h @@ -38,11 +38,17 @@ friend class Text; public: virtual void draw(Surface *surface, bool markDirty = true) const = 0; + virtual void drawScaled(Surface *surface, double scaleX, double scaleY, + bool markDirty = true) const = 0; + virtual ~Drawable() {}; virtual uint16 getWidth() { return _width; } virtual uint16 getHeight() { return _height; } + virtual uint getScaledWidth(double scaleX) const = 0; + virtual uint getScaledHeight(double scaleY) const = 0; + virtual int getX() { return _x; } virtual int getY() { return _y; } @@ -53,6 +59,7 @@ public: int getDelay() { return _delay; } virtual Common::Rect getRect() const = 0; + virtual Common::Rect getScaledRect(double scaleX, double scaleY) const = 0; private: uint16 _width; //!< Width of the sprite @@ -89,11 +96,17 @@ public: ~Sprite(); void draw(Surface *surface, bool markDirty = true) const; + void drawScaled(Surface *surface, double scaleX, double scaleY, bool markDirty = true) const; void setMirrorOn(); void setMirrorOff(); virtual Common::Rect getRect() const; + Common::Rect getScaledRect(double scaleX, double scaleY) const; + + virtual uint getScaledWidth(double scaleX) const; + virtual uint getScaledHeight(double scaleY) const; + const byte *getBuffer() const { return _data; } private: |