aboutsummaryrefslogtreecommitdiff
path: root/engines/supernova/rooms.h
diff options
context:
space:
mode:
authorThierry Crozat2017-11-04 13:19:55 +0000
committerThierry Crozat2018-01-23 02:15:37 +0000
commit21899d8716475c08aa591c087b58c63bb00927ed (patch)
treedc7f669f2046a7f62fba05fa0e9e4e7ae7aa4818 /engines/supernova/rooms.h
parentf4b10b7a83aa9e7f5f6177c8f809402668719c11 (diff)
downloadscummvm-rg350-21899d8716475c08aa591c087b58c63bb00927ed.tar.gz
scummvm-rg350-21899d8716475c08aa591c087b58c63bb00927ed.tar.bz2
scummvm-rg350-21899d8716475c08aa591c087b58c63bb00927ed.zip
SUPERNOVA: Implement most dialog related functions
Diffstat (limited to 'engines/supernova/rooms.h')
-rw-r--r--engines/supernova/rooms.h17
1 files changed, 17 insertions, 0 deletions
diff --git a/engines/supernova/rooms.h b/engines/supernova/rooms.h
index e3b30f8826..47249f0bb6 100644
--- a/engines/supernova/rooms.h
+++ b/engines/supernova/rooms.h
@@ -61,6 +61,23 @@ public:
bool isSectionVisible(uint index) const {
return _shown[index] == kShownTrue;
}
+
+ void removeSentence(int sentence, int number) {
+ if (number > 0)
+ _shown[kMaxSection - number] |= (1 << sentence);
+ }
+
+ void addSentence(int sentence, int number) {
+ if (number > 0)
+ _shown[kMaxSection - number] &= ~(1 << sentence);
+ }
+
+ bool sentencedRemoved(int sentence, int number) {
+ if (number <= 0)
+ return false;
+ return (_shown[kMaxSection - number] & (1 << sentence));
+ }
+
Object *getObject(uint index) {
return &_objectState[index];
}