Skip to content

DIRECTOR: Fixes for Derrat Sorcerum #6555

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 13 commits into from
Apr 19, 2025
Merged

Conversation

moralrecordings
Copy link
Contributor

No description provided.

@shelloverride
Copy link

This causes a regression in TKKG 1, Jennifer is missing.
When you want to create a new savegame, which is disguised as filling out a new member card, you can't get out of the menu anymore.
Before these changes you had a single field, no linebreaks and pressing return got you out of the screen and enabled the "continue" button.
Now you just get a new line and can add more text but the continue button stays disabled. Entering the game is now broken.

@sev-
Copy link
Member

sev- commented Apr 14, 2025

@shelloverride will you be able to bisect this to a specific commit?

@shelloverride
Copy link

I can for sure try later ,hopefully every commit compiles and works on its own.

Copy link
Member

@sev- sev- left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Made my round of review

@shelloverride
Copy link

@shelloverride will you be able to bisect this to a specific commit?

DIRECTOR: Fix collision detection for Channel::isMouseIn

if i didn't make a mistake in my first bisect analysis is the one that remains after the process.

@moralrecordings
Copy link
Contributor Author

Fixed the text entry widget in TKKG1. There's a bunch of broken animations still, but that's not a regression from this changeset.

When determining what sprite the mouse is hovering over,
this is a top-down search of all channels. For text widgets with
scrollbars, in real Director the scrollbar is like a hole
that bypasses the stage entirely. This is important when you have a
mouseUp handler attached to a text cast member with scroll bars,
and a mouseUp handler attached to the cast member directly behind it.
Clicking the scroll bar should not invoke either handler, but should
still invoke e.g. a mouseUp handler attached to the score frame.

Fixes interaction with the inventory list in Derrat Sorcerum.
If there is an Xtra in the Xtras folder and an XObject DLL in the root
path with the same name, the Xtra will have been preloaded and therefore
take precedence.

Fixes initial load scripts for Pothead.
Calling "go to frame N" in an input handler should not call the
associated exitFrame handler. This is checked with the skipAdvanceFrame
flag; however this can be cleared prematurely if an idle handler exists
and Score::update() runs multiple times.

Fixes mixing the True Sight potion in Derrat Sorcerum.
Director has an internal mapping of characters that are basically the
same, which it uses for the string equality checks. Useful if,
to pick a random example, you have one set of scripts which refer to
"Erwin's Catalyst" and another set which refer to "Erwin’s Catalyst".

Fixes using Erwin's Catalyst in Derrat Sorcerum.
Expanded the number of flags output by Datum::compareTo; equality isn't
a guarantee that a greater-than-or-equal or less-than-or-equal
comparison will also work.
Fixes glitch when clicking the inventory for the first time in Derrat
Sorcerum.
@shelloverride
Copy link

Fixed the text entry widget in TKKG1. There's a bunch of broken animations still, but that's not a regression from this changeset.

No the game was broken before, animations&gameplay, but that wasn't the reason for my comment.
I'll try this later to see if the situation is back to the old state.

@shelloverride
Copy link

Fixed for me when i build the branch this pr draws from on Linux.

@sev-
Copy link
Member

sev- commented Apr 19, 2025

Thank you!

@sev- sev- merged commit ee8d31f into scummvm:master Apr 19, 2025
8 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants