aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDmitry Iskrich2016-08-01 23:59:40 +0300
committerEugene Sandulenko2016-08-03 23:40:36 +0200
commitf0990e7221f256e819a080e3a6fada29415f6356 (patch)
tree5defedcb60e9666cf8d9c0020da4f2f8c42e5b8c
parent36fa951f6026ccb7ec25a29fffdd4130d4c84668 (diff)
downloadscummvm-rg350-f0990e7221f256e819a080e3a6fada29415f6356.tar.gz
scummvm-rg350-f0990e7221f256e819a080e3a6fada29415f6356.tar.bz2
scummvm-rg350-f0990e7221f256e819a080e3a6fada29415f6356.zip
DIRECTOR: Add extra fields for sprites
The presence of these fields depends on the type of sprite
-rw-r--r--engines/director/score.cpp27
-rw-r--r--engines/director/score.h20
2 files changed, 47 insertions, 0 deletions
diff --git a/engines/director/score.cpp b/engines/director/score.cpp
index 15b197cce7..becf03585b 100644
--- a/engines/director/score.cpp
+++ b/engines/director/score.cpp
@@ -1604,6 +1604,20 @@ Sprite::Sprite() {
_constraint = 0;
_moveable = 0;
_castId = 0;
+ _backColor = 0;
+ _foreColor = 0;
+ _left = 0;
+ _right = 0;
+ _top = 0;
+ _bottom = 0;
+ _visible = false;
+ _movieRate = 0;
+ _movieTime = 0;
+ _startTime = 0;
+ _stopTime = 0;
+ _volume = 0;
+ _stretch = 0;
+ _type = 0;
}
Sprite::Sprite(const Sprite &sprite) {
@@ -1616,6 +1630,19 @@ Sprite::Sprite(const Sprite &sprite) {
_height = sprite._height;
_startPoint.x = sprite._startPoint.x;
_startPoint.y = sprite._startPoint.y;
+ _backColor = sprite._backColor;
+ _foreColor = sprite._foreColor;
+ _left = sprite._left;
+ _right = sprite._right;
+ _top = sprite._top;
+ _bottom = sprite._bottom;
+ _visible = sprite._visible;
+ _movieRate = sprite._movieRate;
+ _movieTime = sprite._movieTime;
+ _stopTime = sprite._stopTime;
+ _volume = sprite._volume;
+ _stretch = sprite._stretch;
+ _type = sprite._type;
}
Sprite::~Sprite() {
diff --git a/engines/director/score.h b/engines/director/score.h
index 005e6f82b6..3477610602 100644
--- a/engines/director/score.h
+++ b/engines/director/score.h
@@ -291,6 +291,26 @@ public:
//As i know, constrainted != 0 only if sprite moveable
byte _constraint;
byte _moveable;
+ byte _backColor;
+ byte _foreColor;
+ uint16 _left;
+ uint16 _right;
+ uint16 _top;
+ uint16 _bottom;
+ byte _blend;
+ bool _visible;
+ byte _type;
+ //Using in digital movie sprites
+ byte _movieRate;
+ uint16 _movieTime;
+ uint16 _startTime;
+ uint16 _stopTime;
+ byte _volume;
+ byte _stretch;
+ //Using in shape sprites
+ byte _lineSize;
+ //Using in text sprites
+ Common::String _editableText;
};
class Frame {