Opened 16 years ago

Closed 16 years ago

#1346 closed defect (fixed)

MANIAC: Actors don't stop talking

Reported by: Kirben Owned by: SF/ender
Priority: normal Component: Engine: SCUMM
Keywords: Cc:
Game: Maniac Mansion

Description

Latest ScummVM cvs version.
English version of V1 Maniac Mansion
Compiled under mingw with GCC 3.2.3 and running under
Windows XP.

If an actor is talking while I do another task, then the
actor doesn't stop talking. ie if actor is talking and I
change rooms or open door

Try reading the cracked mirror and then open the door
while Dave is talking, you will notice he doesn't stop
talking.

Ticket imported from: #862263. Ticket imported from: bugs/1346.

Attachments (1)

maniac64.s02 (3.3 KB ) - added by Kirben 16 years ago.
Save game

Download all attachments as: .zip

Change History (6)

by Kirben, 16 years ago

Attachment: maniac64.s02 added

Save game

comment:1 by SF/leerqbasic, 16 years ago

I can confirm this bug, using the latest daily build for
WinXP or compiling ScummVM CVS myself using GCC 3.2.3
running Fedora Core 1. AFAIK this happens with all the actors.

comment:2 by Kirben, 16 years ago

The problem is due to VAR_TALK_ACTOR been set to 0. When
the door is open/closed, VAR_TALK_ACTOR is set to 0 before
the stopTalk call in CHARSET_1() is trigged.
Script output shows the game uses VAR 41 in its scripts so it
conflicts.

comment:3 by Kirben, 16 years ago

To be exact, var 41 is used for objects in script 2 of V1
maniac.

comment:4 by SF/ender, 16 years ago

Owner: set to SF/ender
Resolution: fixed
Status: newclosed

comment:5 by SF/ender, 16 years ago

Looking at the disassembly, it appears Maniac used a real
variable for this and never passed it to the script.

I've added a standalone variable for this in CVS. Seems to
have solved the problem, so closing.

Note: See TracTickets for help on using tickets.