aboutsummaryrefslogtreecommitdiff
path: root/engines/director/frame.h
diff options
context:
space:
mode:
authorstevenhoefel2017-01-12 09:45:23 +1100
committerstevenhoefel2017-01-12 09:45:23 +1100
commitc4cabdef0f61a6a170551733d32e909f7e6061c1 (patch)
tree3aa2c22d3bfd40896abbce37a60481e0e1b9cc91 /engines/director/frame.h
parent1f95f5c161d8123d4d674dae2917dc6b180ca6aa (diff)
downloadscummvm-rg350-c4cabdef0f61a6a170551733d32e909f7e6061c1.tar.gz
scummvm-rg350-c4cabdef0f61a6a170551733d32e909f7e6061c1.tar.bz2
scummvm-rg350-c4cabdef0f61a6a170551733d32e909f7e6061c1.zip
DIRECTOR: Hooks for both cast member and cast frame events.
Diffstat (limited to 'engines/director/frame.h')
-rw-r--r--engines/director/frame.h8
1 files changed, 7 insertions, 1 deletions
diff --git a/engines/director/frame.h b/engines/director/frame.h
index 29ae9dd596..b71afb795d 100644
--- a/engines/director/frame.h
+++ b/engines/director/frame.h
@@ -104,6 +104,11 @@ struct PaletteInfo {
uint16 cycleCount;
};
+struct FrameEntity {
+ uint16 spriteId;
+ Common::Rect rect;
+};
+
class Frame {
public:
@@ -131,6 +136,7 @@ private:
void drawMatteSprite(Graphics::ManagedSurface &target, const Graphics::Surface &sprite, Common::Rect &drawRect);
void drawGhostSprite(Graphics::ManagedSurface &target, const Graphics::Surface &sprite, Common::Rect &drawRect);
void drawReverseSprite(Graphics::ManagedSurface &target, const Graphics::Surface &sprite, Common::Rect &drawRect);
+ void addDrawRect(uint16 entityId, Common::Rect &rect);
public:
byte _channelData[kChannelDataSize];
@@ -150,7 +156,7 @@ public:
uint8 _skipFrameFlag;
uint8 _blend;
Common::Array<Sprite *> _sprites;
- Common::HashMap<uint16, Common::Rect> _drawRects;
+ Common::Array<FrameEntity *> _drawRects;
DirectorEngine *_vm;
};