aboutsummaryrefslogtreecommitdiff
path: root/engines/fullpipe/behavior.h
diff options
context:
space:
mode:
authorEugene Sandulenko2013-08-12 23:39:10 +0300
committerEugene Sandulenko2013-09-06 14:51:14 +0300
commit3cacf6486d09b2062f5cdb57d283977c7c71d2eb (patch)
treedfd825bfc654ef1550d24b7e193fdaa63d7c905d /engines/fullpipe/behavior.h
parent13059906c5f68bebb6344cf5617dc62243d146cf (diff)
downloadscummvm-rg350-3cacf6486d09b2062f5cdb57d283977c7c71d2eb.tar.gz
scummvm-rg350-3cacf6486d09b2062f5cdb57d283977c7c71d2eb.tar.bz2
scummvm-rg350-3cacf6486d09b2062f5cdb57d283977c7c71d2eb.zip
FULLPIPE: Implement BehaviorManager::updateBehaviors()
Diffstat (limited to 'engines/fullpipe/behavior.h')
-rw-r--r--engines/fullpipe/behavior.h34
1 files changed, 18 insertions, 16 deletions
diff --git a/engines/fullpipe/behavior.h b/engines/fullpipe/behavior.h
index ea618fdfd6..5029b3ee17 100644
--- a/engines/fullpipe/behavior.h
+++ b/engines/fullpipe/behavior.h
@@ -25,22 +25,10 @@
namespace Fullpipe {
-class BehaviorManager : public CObject {
- CObArray _behaviors;
- Scene *_scene;
- bool _isActive;
-
- public:
- BehaviorManager();
-
- void initBehavior(Scene *scene, CGameVar *var);
- void updateBehaviors();
-};
-
struct BehaviorEntryInfo {
- int _messageQueue;
+ MessageQueue *_messageQueue;
int _delay;
- int _percent;
+ uint _percent;
int _flags;
};
@@ -48,7 +36,7 @@ struct BehaviorEntry {
int _staticsId;
int _itemsCount;
int _flags;
- BehaviorEntryInfo *_items;
+ BehaviorEntryInfo **_items;
};
struct BehaviorInfo {
@@ -59,7 +47,21 @@ struct BehaviorInfo {
int _flags;
int _subIndex;
int _itemsCount;
- BehaviorEntryInfo *_items;
+ Common::Array<BehaviorEntry *> _bheItems;
+};
+
+class BehaviorManager : public CObject {
+ Common::Array<BehaviorInfo *> _behaviors;
+ Scene *_scene;
+ bool _isActive;
+
+ public:
+ BehaviorManager();
+
+ void initBehavior(Scene *scene, CGameVar *var);
+ void updateBehaviors();
+ void updateBehavior(BehaviorInfo *behaviorInfo, BehaviorEntry *entry);
+ void updateStaticAniBehavior(StaticANIObject *ani, unsigned int delay, BehaviorEntry *behaviorEntry);
};
} // End of namespace Fullpipe