aboutsummaryrefslogtreecommitdiff
path: root/queen/talk.h
diff options
context:
space:
mode:
authorDavid Eriksson2003-10-07 12:20:31 +0000
committerDavid Eriksson2003-10-07 12:20:31 +0000
commitf99c8b81dbbdcab69ea40aa8acbf8db9198cbf2d (patch)
tree9005e53b86bd9fc3813d5e2f8e8207646cd428c7 /queen/talk.h
parent577fe4c5fb97d0d29669b67fbf49abd09a31dded (diff)
downloadscummvm-rg350-f99c8b81dbbdcab69ea40aa8acbf8db9198cbf2d.tar.gz
scummvm-rg350-f99c8b81dbbdcab69ea40aa8acbf8db9198cbf2d.tar.bz2
scummvm-rg350-f99c8b81dbbdcab69ea40aa8acbf8db9198cbf2d.zip
Improved Queen::Talk class
svn-id: r10667
Diffstat (limited to 'queen/talk.h')
-rw-r--r--queen/talk.h20
1 files changed, 15 insertions, 5 deletions
diff --git a/queen/talk.h b/queen/talk.h
index dfeea6b128..dde6528737 100644
--- a/queen/talk.h
+++ b/queen/talk.h
@@ -26,8 +26,9 @@
namespace Queen {
-class Resource;
+class Graphics;
class Logic;
+class Resource;
class Talk {
public:
@@ -36,6 +37,7 @@ class Talk {
static void run(
const char *filename,
char *cutawayFilename,
+ Graphics *graphics,
Logic *logic,
Resource *resource);
@@ -57,7 +59,11 @@ class Talk {
enum {
MAX_STRING_LENGTH = 255,
MAX_STRING_SIZE = (MAX_STRING_LENGTH + 1),
- TALK_SELECTED_COUNT = 86
+ MAX_TEXT_WIDTH = (320-18),
+ PUSHUP = 4,
+ TALK_SELECTED_COUNT = 86,
+ SENTENCE_BOB_1 = 62,
+ SENTENCE_BOB_2 = 63
};
//! TODO Move this to struct.h later!
@@ -73,8 +79,9 @@ class Talk {
int16 gameStateValue;
};
- Logic *_logic;
- Resource *_resource;
+ Graphics *_graphics;
+ Logic *_logic;
+ Resource *_resource;
//! Raw .dog file data (without 20 byte header)
byte *_fileData;
@@ -117,7 +124,7 @@ class Talk {
char _talkString[5][MAX_STRING_SIZE];
- Talk(Logic *logic, Resource *resource);
+ Talk(Graphics *graphics, Logic *logic, Resource *resource);
~Talk();
//! Perform talk in file and return a cutaway filename
@@ -144,6 +151,9 @@ class Talk {
//! Select what to say
int16 selectSentence();
+ static int splitOption(const char *str, char optionText[5][MAX_STRING_SIZE]);
+
+
};
} // End of namespace Queen