aboutsummaryrefslogtreecommitdiff
path: root/engines/parallaction/parallaction.h
diff options
context:
space:
mode:
authorNicola Mettifogo2009-01-04 14:23:20 +0000
committerNicola Mettifogo2009-01-04 14:23:20 +0000
commitf2b495ba2d31fc6cdfd07130c9491dea026c07cb (patch)
tree64e20efe7bdaf26335cc6eb8163a3c1c984233d9 /engines/parallaction/parallaction.h
parent4273d0db92f37dcaefea280022e9d6b2effafeb9 (diff)
downloadscummvm-rg350-f2b495ba2d31fc6cdfd07130c9491dea026c07cb.tar.gz
scummvm-rg350-f2b495ba2d31fc6cdfd07130c9491dea026c07cb.tar.bz2
scummvm-rg350-f2b495ba2d31fc6cdfd07130c9491dea026c07cb.zip
Implemented counters in BRA. Only valid answer options are shown, and counter calculations in scripts are performed.
svn-id: r35723
Diffstat (limited to 'engines/parallaction/parallaction.h')
-rw-r--r--engines/parallaction/parallaction.h16
1 files changed, 14 insertions, 2 deletions
diff --git a/engines/parallaction/parallaction.h b/engines/parallaction/parallaction.h
index 291ab56eb2..f7c79e1a3c 100644
--- a/engines/parallaction/parallaction.h
+++ b/engines/parallaction/parallaction.h
@@ -362,6 +362,7 @@ public:
virtual void callFunction(uint index, void* parm) = 0;
virtual void runPendingZones() = 0;
virtual void cleanupGame() = 0;
+ virtual DialogueManager *createDialogueManager(ZonePtr z) = 0;
};
@@ -384,6 +385,8 @@ public:
virtual void runPendingZones();
virtual void cleanupGame();
+ virtual DialogueManager *createDialogueManager(ZonePtr z);
+
void switchBackground(const char* background, const char* mask);
private:
@@ -474,11 +477,18 @@ public:
virtual void runPendingZones();
virtual void cleanupGame();
+ virtual DialogueManager *createDialogueManager(ZonePtr z);
+
void setupSubtitles(char *s, char *s2, int y);
void clearSubtitles();
+ void testCounterCondition(const Common::String &name, int op, int value);
+
public:
- Table *_countersNames;
+ bool counterExists(const Common::String &name);
+ int getCounterValue(const Common::String &name);
+ void setCounterValue(const Common::String &name, int value);
+
const char **_audioCommandsNamesRes;
static const char *_partNames[];
int _part;
@@ -489,7 +499,6 @@ public:
int _subtitleY;
int _subtitle[2];
ZonePtr _activeZone2;
- int32 _counters[32];
uint32 _zoneFlags[NUM_LOCATIONS][NUM_ZONES];
@@ -497,6 +506,9 @@ private:
LocationParser_br *_locationParser;
ProgramParser_br *_programParser;
+ int32 _counters[32];
+ Table *_countersNames;
+
private:
void initResources();
void initFonts();