Opened 21 years ago

Closed 21 years ago

#1346 closed defect (fixed)

MANIAC: Actors don't stop talking

Reported by: Kirben Owned by: SF/ender
Priority: normal Component: Engine: SCUMM
Version: 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 21 years ago.
Save game

Download all attachments as: .zip

Change History (6)

by Kirben, 21 years ago

Attachment: maniac64.s02 added

Save game

comment:1 by SF/leerqbasic, 21 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, 21 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, 21 years ago

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

comment:4 by SF/ender, 21 years ago

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

comment:5 by SF/ender, 21 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.