aboutsummaryrefslogtreecommitdiff
path: root/engines/m4/mads_views.cpp
diff options
context:
space:
mode:
authorPaul Gilbert2010-05-16 01:32:46 +0000
committerPaul Gilbert2010-05-16 01:32:46 +0000
commit43e61ec60f804b2540d1188801ba44cf37727782 (patch)
tree0f75a9ac6ebacefebb127c5367075ace412ce711 /engines/m4/mads_views.cpp
parent5e4868fb008712d6504f0c1dab51b3566998b55f (diff)
downloadscummvm-rg350-43e61ec60f804b2540d1188801ba44cf37727782.tar.gz
scummvm-rg350-43e61ec60f804b2540d1188801ba44cf37727782.tar.bz2
scummvm-rg350-43e61ec60f804b2540d1188801ba44cf37727782.zip
Bugfixes for animation depth logic
svn-id: r49045
Diffstat (limited to 'engines/m4/mads_views.cpp')
-rw-r--r--engines/m4/mads_views.cpp13
1 files changed, 9 insertions, 4 deletions
diff --git a/engines/m4/mads_views.cpp b/engines/m4/mads_views.cpp
index a99976338b..04e8afd21a 100644
--- a/engines/m4/mads_views.cpp
+++ b/engines/m4/mads_views.cpp
@@ -258,7 +258,7 @@ void MadsKernelMessageList::clear() {
_talkFont = _vm->_font->getFont(FONT_CONVERSATION_MADS);
}
-int MadsKernelMessageList::add(const Common::Point &pt, uint fontColour, uint8 flags, uint8 v2, uint32 timeout, char *msg) {
+int MadsKernelMessageList::add(const Common::Point &pt, uint fontColour, uint8 flags, uint8 v2, uint32 timeout, const char *msg) {
// Find a free slot
uint idx = 0;
while ((idx < _entries.size()) && ((_entries[idx].flags & KMSG_ACTIVE) != 0))
@@ -291,6 +291,11 @@ int MadsKernelMessageList::add(const Common::Point &pt, uint fontColour, uint8 f
return idx;
}
+int MadsKernelMessageList::addQuote(int quoteId, int v2, uint32 timeout) {
+ const char *quoteStr = _madsVm->globals()->getQuote(quoteId);
+ return add(Common::Point(0, 0), 0x1110, KMSG_2 | KMSG_20, v2, timeout, quoteStr);
+}
+
void MadsKernelMessageList::unk1(int msgIndex, int v1, int v2) {
if (msgIndex < 0)
return;
@@ -322,8 +327,8 @@ void MadsKernelMessageList::remove(int msgIndex) {
if (rec.flags & KMSG_ACTIVE) {
if (rec.flags & KMSG_8) {
- *(rec.msg + rec.msgOffset) = rec.asciiChar;
- *(rec.msg + rec.msgOffset + 1) = rec.asciiChar2;
+ //*(rec.msg + rec.msgOffset) = rec.asciiChar;
+ //*(rec.msg + rec.msgOffset + 1) = rec.asciiChar2;
}
if (rec.textDisplayIndex >= 0)
@@ -497,7 +502,7 @@ bool MadsSequenceList::addSubEntry(int index, SequenceSubEntryMode mode, int fra
}
int MadsSequenceList::add(int spriteListIndex, int v0, int frameIndex, char field_24, int timeoutTicks, int extraTicks, int numTicks,
- int height, int width, char field_12, char scale, char depth, int frameInc, SpriteAnimType animType, int numSprites,
+ int height, int width, char field_12, char scale, uint8 depth, int frameInc, SpriteAnimType animType, int numSprites,
int frameStart) {
// Find a free slot