145658 Commits

Author SHA1 Message Date
Matthew Jimenez
b34e683d38 ULTIMA8: Cleanup checks for X & Y flat sort items 2023-09-30 13:45:21 -05:00
Matthew Jimenez
8ad443bfb7 ULTIMA8: Update sort item tests to use multiples of footpad calculations. 2023-09-30 13:45:21 -05:00
AndywinXp
abd2a3d630 SWORD1: Protect concurrent menu bar elements accesses
Still part of #14638. I have began measuring for slowdowns
caused by mutexes, on slow Virtual Machines, and luckily I
have found none for now...
2023-09-30 19:54:13 +02:00
Kaloyan Chehlarski
f3fe8f251f NANCY: Increment scene counts on scene exit
The counters for how many times a scene has been
visited now get incremented only when we exit it. This
makes sure the counter is not incremented when loading a
save, and makes sure dependencies that require the
sceneCount to be equal to 0 can actually execute
(e.g. nancy6 scene 2319)
2023-09-30 17:56:27 +03:00
Kaloyan Chehlarski
3db0bcbbde NANCY: Implement TwoDialPuzzle
Added support for the TwoDialPuzzle action record, which
is an incredibly simple puzzle with two dials that need to
be rotated in the correct position.
2023-09-30 17:56:27 +03:00
Kaloyan Chehlarski
6ab03d5733 NANCY: Fix sound delay in TurningPuzzle 2023-09-30 17:56:27 +03:00
Kaloyan Chehlarski
16bfcd08e4 NANCY: Fix nancy6 alarm clock sound
Fixed an issue where the alarm clock's buttons sounds
wouldn't play in nancy6, since they were using the same
channel as the sound that should play when the alarm has
been set. Also, the alarm setting sound now actually plays.
2023-09-30 17:56:27 +03:00
Kaloyan Chehlarski
d6bd820352 NANCY: Fix reading of nancy6 Raycast chunks 2023-09-30 17:56:27 +03:00
Kaloyan Chehlarski
e9d63bca07 NANCY: Fix PasswordPuzzle reading in nancy6 2023-09-30 17:56:27 +03:00
Ralph Caraveo
eeddc6fce2
SCI: Fix crash in Island of Dr. Brain microscope puzzle - bug 14546
When clicking "buy clue" in the microscope puzzle, the game could crash with a division by zero in
cartesian:buyClue, depending on the initialization of the puzzle itself. Because the initialization is
random and non-deterministic, this crash would only occur very rarely
2023-09-30 12:41:28 +03:00
ScummVM-Translations
ff8fdf8cd7 I18N: Update translation files
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Translation: ScummVM/scummvm
Translate-URL: https://translations.scummvm.org/projects/scummvm/scummvm/
2023-09-30 09:27:01 +00:00
sluicebox
e8c7f6f7e8 SCI32: Reuse DrawLists when rendering frames
When converting DrawList to use Common::Array in the previous commit,
I couldn't see a reason to not reuse them in frameOut() and avoid
the extra heap allocations on every frame.
2023-09-30 12:26:46 +03:00
sluicebox
b016bcdf70 SCI32: Fix DrawList overflow with a dynamic array
This is an engine limitation that also exists in SSCI,
but it can be exceeded under normal conditions.

Fixes crash at LSL7 pool entrance, bug #14632
2023-09-30 12:26:46 +03:00
ScummVM-Translations
ed8543ab69 I18N: Update translations templates 2023-09-30 07:11:17 +00:00
AndywinXp
258d61f63a SWORD1: Remove code altering live_list[]
What was I thinking when I added this?!
This code unconditionally enters sections, with the risk
of them being active throughout the whole game, without
ever being closed. I sure love hearing the Irish Pub fiddle
player from within the ending scene with the Neo-Templars. :-)
2023-09-30 09:11:03 +02:00
Matthew Jimenez
0d0555bd14 ULTIMA8: Add tolerance when comparing Z in sort item.
X & Y flats are often offset below the top of the floor they sit on but by less than the multiplier used when calculating the footpad
2023-09-29 23:02:03 -05:00
Matthew Jimenez
a899156273 ULTIMA8: Move SortItem methods from the header to a cpp file. 2023-09-29 20:47:27 -05:00
Matthew Jimenez
b21876bd9d ULTIMA8: Move sort item calculations to setBoxBounds 2023-09-29 18:11:42 -05:00
Matthew Jimenez
3bd21ab50c ULTIMA8: Add more sort item tests and fixes for flat items 2023-09-29 17:27:23 -05:00
Matthew Jimenez
7882f7d496 ULTIMA8: dump sort item info in box constructor format for easier unit test creation 2023-09-29 17:27:22 -05:00
Matthew Jimenez
fa491cb998 ULTIMA8: Update sort item test to use actual position instead of reduced values. 2023-09-29 17:27:22 -05:00
Eugene Sandulenko
74780e65b7
GRAPHICS: MACGUI: Made chunk chopping width-agnostic in MacText 2023-09-30 00:10:25 +02:00
D G Turner
7da2765d44 SCI: Fix Signed vs. Unsigned Comparison GCC Compiler Warning 2023-09-29 22:45:31 +01:00
elasota
667cb63823 DEVTOOLS: Add precompiled header support to MSBuild/MSVC. 2023-09-29 21:37:10 +01:00
Kaloyan Chehlarski
f22326d4a7 NANCY: Fix inventory box scrolling
Fixed an off-by-one error when calculating the inventory
box, which would result in some items getting their top
few pixels clipped when the inventory has grown
sufficiently full
2023-09-29 15:13:43 +03:00
Kaloyan Chehlarski
1ca8ee3799 NANCY: Do not handle hotspots when record is done
Fixed an edge case where a hotspot would still be evaluated,
even when its host ActionRecord is done.
2023-09-29 15:13:43 +03:00
Kaloyan Chehlarski
5f6cd52def DEVTOOLS: Clean up nancy2 data in create_nancy
Removed hexadecimal scene IDs, fixed some indentation.
2023-09-29 15:13:42 +03:00
Kaloyan Chehlarski
a07b8ee54f NANCY: Fix for records with multiple cursor dependencies
Fixed the Dependency processing code so the rare cases
where a single ActionRecord has multiple CursorType
dependencies works correctly (plays the right "can't" sound,
removes/re-adds held items as indended). This fixes the
keymaker's return slot in nancy5.
2023-09-29 15:13:42 +03:00
Kaloyan Chehlarski
4d72ce769f NANCY: Add nancy-5 specific item check
Added a check inside OverrideLockPuzzle specific to nancy5.
This checks whether the player is holding the rubber gloves,
and leaves them on if so. This is used during the electrified
gate sequence.
2023-09-29 15:13:42 +03:00
Kaloyan Chehlarski
7e16ae44ab NANCY: Correctly read Overlay hotspot flags
We're no longer skipping over what apparently was a flag
indicating whether a particular static Overlay frame has
a hotspot or not. This fixes the rubber gloves item in
nancy5, which can now be picked up.
2023-09-29 15:13:42 +03:00
Torbjörn Andersson
c8a6aba226 GRAPHICS: MACGUI: Fix signed/unsigned warnings 2023-09-29 06:44:31 +02:00
ScummVM-Translations
a629f597b9 I18N: Update translation files
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Translation: ScummVM/scummvm
Translate-URL: https://translations.scummvm.org/projects/scummvm/scummvm/
2023-09-29 04:03:38 +00:00
Ralph Caraveo
d71a00950e SCI: adds support for debugging/executing kernel calls 2023-09-28 21:03:25 -07:00
ScummVM-Translations
ce4294dae2 I18N: Update translations templates 2023-09-28 22:02:06 +00:00
AndywinXp
85f63350ba SWORD1: PSX: Implement (mostly) accurate text positioning
I say "mostly" because I still have off-by-one positioning inaccuracies,
and navigating the PSX disasm is very tiresome... I'm not even sure
we are rendering sprites in the correct position anymore... Argh!
2023-09-29 00:01:52 +02:00
Giovanni Cascione
0f6773217c LIBRETRO: add automatic setup of default soundfont file 2023-09-28 21:25:36 +02:00
Giovanni Cascione
74dd0af052 LIBRETRO: change path tests to LibRetroFilesystemNode 2023-09-28 21:25:21 +02:00
Giovanni Cascione
1c8092f592 LIBRETRO: force slashes in LibRetroFilesystemNode constructor 2023-09-28 21:25:04 +02:00
Giovanni Cascione
76ff21ba4e LIBRETRO: add backslash case for HOME expansion 2023-09-28 21:24:48 +02:00
Walter Agazzi
21d57c04d2 AGS: Engine: fixed GUIControl_SetVisible()
This fixes another fix from commit dcec61b
From upstream cc247845762e12e924e36e0922149d3b862bbcce
2023-09-28 19:14:33 +02:00
Eugene Sandulenko
457b09cb4e
GRAPHICS: MACGUI: Properly process pseudotransparency for MacText rendering
This fixes rendering in WAGE (8-bit texts) while keeping the Richtext images
intact.

The regression was introduced in 004eba9d250071a717d8640a5eba392b97001041
2023-09-28 19:06:15 +02:00
Eugene Sandulenko
601e4fa95f
GRAPHICS: MACGUI: Initial code for column width calculation in MacText 2023-09-28 18:49:27 +02:00
Eugene Sandulenko
7336aee63e
GRAPHICS: MACGUI: Properly calculate minimal line width 2023-09-28 18:49:27 +02:00
Eugene Sandulenko
aee4432ea3
GRAPHICS> MACGUI: Refactor line with calculation for MacText 2023-09-28 18:49:27 +02:00
Eugene Sandulenko
96e90ba36c
GRAPHICS: MACGUI: Calculate minimal line width 2023-09-28 18:49:23 +02:00
AndywinXp
c99265cf97 SWORD1: Optimize menu handling during palette fades
We are only updating the menu bars when the screen is not fading.
This optimization restores the same code speed as previous
codebase iterations without thread-safeness whenever a menu
is interacted with during a palette fade.
2023-09-28 11:02:04 +02:00
AndywinXp
d222359fde SWORD1: More thread-safeness measures as part of #14638
This commit deals with all the copyRectToScreen calls which, during
a palette fade, can collide with screen updates. These changes are
verified with a Thread Sanitizer enabled build.

I know that the latest commits have introduced lots of locks, and
I'm going to optimize the optimizable, but first I have to reach a
no-crash point :-)
2023-09-28 11:00:20 +02:00
AndywinXp
2b38cbc660 SWORD1: Ensure thread safeness when blitting cursor 2023-09-28 09:20:04 +02:00
AndywinXp
60a1010b10 SWORD1: Add more thread safeness measures to resource manager 2023-09-28 09:10:26 +02:00
ScummVM-Translations
2ce16ace14 I18N: Update translation files
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Translation: ScummVM/scummvm
Translate-URL: https://translations.scummvm.org/projects/scummvm/scummvm/
2023-09-28 02:34:15 +00:00