aboutsummaryrefslogtreecommitdiff
path: root/engines/draci/game.h
diff options
context:
space:
mode:
authorDenis Kasak2009-07-27 04:51:34 +0000
committerDenis Kasak2009-07-27 04:51:34 +0000
commit019b7f310b7b0443fda505341bdfcda5c0b755f8 (patch)
tree1336df7a2075e79d760b756540a70d7a75844181 /engines/draci/game.h
parent00980849699460f8e9919599a8d89dc3dd60bc2e (diff)
downloadscummvm-rg350-019b7f310b7b0443fda505341bdfcda5c0b755f8.tar.gz
scummvm-rg350-019b7f310b7b0443fda505341bdfcda5c0b755f8.tar.bz2
scummvm-rg350-019b7f310b7b0443fda505341bdfcda5c0b755f8.zip
* Added Game::getObjectWithAnimation() which finds the object that owns an animation with a certain ID
* Made GameObjects track their titles as Strings rather than byte * * Made the engine display the title of the object under the cursor (added a special animation ID for that, kTitleText) svn-id: r42839
Diffstat (limited to 'engines/draci/game.h')
-rw-r--r--engines/draci/game.h11
1 files changed, 9 insertions, 2 deletions
diff --git a/engines/draci/game.h b/engines/draci/game.h
index d8e0d137b7..fbc1d3283e 100644
--- a/engines/draci/game.h
+++ b/engines/draci/game.h
@@ -43,6 +43,10 @@ enum StructSizes {
personSize = sizeof(uint16) * 2 + sizeof(byte)
};
+enum {
+ kNotFound = -1
+};
+
class WalkingMap {
public:
@@ -82,7 +86,7 @@ private:
struct GameObject {
- GameObject() : _title(NULL) {}
+ GameObject() {}
uint _init, _look, _use, _canUse;
bool _imInit, _imLook, _imUse;
@@ -93,7 +97,7 @@ struct GameObject {
uint16 _absNum;
Common::Array<int> _anims;
GPL2Program _program;
- byte *_title;
+ Common::String _title;
int _location;
bool _visible;
};
@@ -196,6 +200,7 @@ public:
uint getNumObjects();
GameObject *getObject(uint objNum);
+ int getObjectWithAnimation(int animID);
int getVariable(int varNum);
void setVariable(int varNum, int value);
@@ -222,6 +227,8 @@ private:
Room _currentRoom;
LoopStatus _loopStatus;
+ int _objUnderCursor;
+
int _markedAnimationIndex; //!< Used by the Mark GPL command
};