Opened 20 years ago
Closed 19 years ago
#954 closed defect (fixed)
COMI: Text should not always have a shadow
|Reported by:||eriktorbjorn||Owned by:||fingolfin|
|Cc:||Game:||Monkey Island 3|
Maybe this should be three separate reports...
In CMI, text is (almost) always drawn with a drop shadow. This is wrong. For instance, the map which shows how to find Elaine (go to room 38 with the debugger to see it) should just be plain black text, and on the native options screen (F1) the text should not have a shadow, neither when it's black nor red.
I don't know what turns the shadow on or off though. From what I can see, the script for the map doesn't do anything special. It's just a bunch of blocks like
[000A] (97) blastText_baseop() [000C] (97) blastText_charset(3)  (97) blastText_color(0) [001A] (97) blastText_center() [001C] (97) blastText_XY(280,localvar0)  (97) blastText_msg("/PU_M033/With all eyes open, follow the path")
A quick-and-dirty solution would be to not draw a shadow when the text itself is black, which should at least make all text readable. But it isn't enough to make the red text draw correctly.
Another text drawing issue (sort of) is in the banjo duel when playing in easy mode. There's a mouse-over text for each of the strings on Guybrush's banjo, just like the original, but there should definitely not be a voice-over.
Maybe it's enough to just disable voice-overs for blast texts? They certainly make no sense there anyway.
I'm attaching a savegame at the barbers, because there's a slight text drawing issue there as well. When you slap him (to start the duel) his first reply isn't completely erased. I haven't checked why, but I've seen similar things before. It may be my imagination, but I have a vague feeling that it only happens when the message is drawn close to the edge of the screen.
Ticket imported from: #766749. Ticket imported from: bugs/954.
Change History (13)
by , 20 years ago
comment:1 by , 20 years ago
|Summary:||CMI: Text drawing issues → COMI: Text drawing issues|
comment:2 by , 20 years ago
Here's a screenshot of the text glitch:
comment:3 by , 20 years ago
Well as long as we have no clue what determines whether to use shadow or not, I don't see how we could fix this :-/
comment:4 by , 20 years ago
|Priority:||normal → low|
comment:5 by , 20 years ago
Maybe it is somehow affected/controlled by the setBannerColors() opcode we currently ignore?
comment:6 by , 19 years ago
Regarding the bug described in the last paragraph:
Bug #901443 seems to be another example of dialog subtitles drawn at the very edge of the screen that get stuck.
comment:7 by , 19 years ago
The part in the barber shop (text not being properly erased/drawn etc.) is fixed in CVS. This was reported in at least two other reports as well.
Please always file one separate report for each issue you are reporting. That makes it possible for us to properly track issues. If you file three different issues in a single report, it makes handling it a bit painful for us :-/.
Regarding the banjo duel issue: does it still occur with latest CVS (grab a daily build from our website to test) ? If yes, can you please attach a savegame with which I can reproduce the issue?
comment:8 by , 19 years ago
I only get the subtitles for the banjo strings now, not the voice-overs, so that one has been fixed now. (I meant to try it some time ago when I saw a commit message that looked like it could be about this, but I never did so I don't know when it was fixed.)
comment:9 by , 19 years ago
|Summary:||COMI: Text drawing issues → COMI: Text should not always have a shadow|
comment:10 by , 19 years ago
Great to hear!
So the only thing which is left is the issue of when to (not) draw text shadows.... hmmm... could it be the charset? The example that was pasted above uses charset 3. Indeed, all the shadowless text in the F1 menu, and in room 38, are using charset 3, while everything else seems to use charset 1.... hmm!
comment:11 by , 19 years ago
|Status:||new → closed|
comment:12 by , 19 years ago
Fixed the last part of the bug by not drawing a drop shadow for text rendered with charset 3.
Savegame at the barbers, before the duel