aboutsummaryrefslogtreecommitdiff
path: root/engines/fullpipe/gfx.h
diff options
context:
space:
mode:
Diffstat (limited to 'engines/fullpipe/gfx.h')
-rw-r--r--engines/fullpipe/gfx.h15
1 files changed, 13 insertions, 2 deletions
diff --git a/engines/fullpipe/gfx.h b/engines/fullpipe/gfx.h
index 1f7284a6eb..d640decc80 100644
--- a/engines/fullpipe/gfx.h
+++ b/engines/fullpipe/gfx.h
@@ -88,13 +88,14 @@ class Picture : public MemoryObject {
virtual ~Picture();
void freePicture();
+ void freePixelData();
virtual bool load(MfcArchive &file);
void setAOIDs();
void init();
void getDibInfo();
Bitmap *getPixelData();
- void draw(int x, int y, int style, int angle);
+ virtual void draw(int x, int y, int style, int angle);
void drawRotated(int x, int y, int angle);
byte getAlpha() { return (byte)_alpha; }
@@ -115,7 +116,10 @@ class Picture : public MemoryObject {
class BigPicture : public Picture {
public:
BigPicture() {}
+ virtual ~BigPicture() {}
+
virtual bool load(MfcArchive &file);
+ virtual void draw(int x, int y, int style, int angle);
};
class GameObject : public CObject {
@@ -155,9 +159,13 @@ class PictureObject : public GameObject {
public:
PictureObject();
+
PictureObject(PictureObject *src);
+ virtual ~PictureObject();
+
+ virtual bool load(MfcArchive &file, bool bigPicture);
+ virtual bool load(MfcArchive &file) { assert(0); return false; } // Disable base class
- bool load(MfcArchive &file, bool bigPicture);
Common::Point *getDimensions(Common::Point *p);
void draw();
void drawAt(int x, int y);
@@ -165,6 +173,7 @@ class PictureObject : public GameObject {
bool setPicAniInfo(PicAniInfo *picAniInfo);
bool isPointInside(int x, int y);
bool isPixelHitAtPos(int x, int y);
+ void setOXY2();
};
class Background : public CObject {
@@ -182,6 +191,8 @@ class Background : public CObject {
public:
Background();
+ virtual ~Background();
+
virtual bool load(MfcArchive &file);
void addPictureObject(PictureObject *pct);