Commit Graph
137148 Commits
Author SHA1 Message Date
Eugene Sandulenko 96e3f04798 I18N: Update translation (Polish)
Currently translated at 62.9% (1033 of 1641 strings)
2021-05-17 17:34:48 +00:00
Lothar Serra Mari 78fb535626 I18N: Update translation (German)
Currently translated at 100.0% (1641 of 1641 strings)
2021-05-17 17:34:44 +00:00
Eugene Sandulenko 6ec74054e1 I18N: Update translation (Ukrainian)
Currently translated at 100.0% (1641 of 1641 strings)
2021-05-17 17:24:11 +00:00
Eugene Sandulenko 67fc6a64cd I18N: Update translation (Russian)
Currently translated at 100.0% (1641 of 1641 strings)
2021-05-17 17:24:11 +00:00
Lothar Serra Mari c7f19a3d75 I18N: Update translation (German)
Currently translated at 100.0% (1641 of 1641 strings)
2021-05-17 17:01:45 +00:00
ScummVM-Translations c2b212c996 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/
2021-05-17 16:52:15 +00:00
Eugene Sandulenko 43f5b0d700 NEWS: Mention recent Loom improvements 2021-05-17 18:51:37 +02:00
ScummVM-Translations b786b562e0 I18N: Update translations templates 2021-05-17 16:44:40 +00:00
Torbjörn Andersson f8c4fe63e3 SCUMM: Hack Mac Loom note names to never be light gray
Note names can be drawn in three different colors: Dark gray for notes
you don't know, light gray for notes you know, and white for notes
you're using.

Or at least, that's how the DOS version does it. But there, notes
automatically go back to light gray once the draft is done. In the Mac
version, that doesn't seem to happen. And judging by how it behaves when
running it in a Mac emulator, known notes are always white.
2021-05-17 18:44:29 +02:00
Torbjörn Andersson c0c072f4c4 SCUMM: Add hack against Mac Loom distaff glitch
Here is what I think happens: When text is removed, the text surface is
cleared in its entirety. This means that the next time the screen is
updated, it may redraw the low-resolution background. Since this has no
information about the high-resolution text, any such text is lost.

The distaff notes and note names are drawn in with the high-resolution
font. When using the distaff, only the note name is redrawn, not the
note itself. The way screen updates are handled, a larger area than just
the note name gets redrawn, and then part of the note may be cleared
away.

To get around this, when a note name is drawn on the distaff the text
surface is also updated with the note itself. (There is no need to
redraw the note, since we can assume it's already on screen, and we
don't want to bother with getting the color right.)

The only time the printChar() function prints note names should be on
the distaff. The Practice Mode box is handled by drawChar() instead.
2021-05-17 18:44:29 +02:00
Torbjörn Andersson cdfe9b5b4c SCUMM: Add practice mode box for Mac Loom
Unlike the PC version, the practice mode box appears to be hard-coded in
the Mac version. The script that draws the box in the PC version just
sets variables in the Mac version. This implementation is based on
screenshots.

To keep things a bit saner, I've split out the Mac-specific drawing to
its own file.
2021-05-17 18:44:29 +02:00
Torbjörn Andersson 620d885eac SCUMM: Clarify comment about shadowed text in Mac Loom 2021-05-17 18:44:29 +02:00
Torbjörn Andersson 9051349f31 SCUMM: Always draw notes and note names with a shadow in Mac Loom
But apparently the shadow for notes is a bit different from what I draw.
I have to figure that one out later.
2021-05-17 18:44:29 +02:00
Torbjörn Andersson 3ef517d2a1 SCUMM: Fix some memory leaks
I forgot to free the streams after asking the Mac resource manager for a
resource.
2021-05-17 18:44:29 +02:00
Torbjörn Andersson 93cbb988a6 SCUMM: Some fixes that I'm not sure exactly what they do
I don't know what these fixes do exactly, but judging by the old code
they should be there.
2021-05-17 18:44:29 +02:00
Torbjörn Andersson ec6f0b1cf3 SCUMM: Some fixes for removing text
Drawing boxes and restoring verb backgrounds now also clears the text
surface in Macintosh Loom.
2021-05-17 18:44:29 +02:00
Torbjörn Andersson 5c0c64bc5a SCUMM: Fixed black screen after loading savegame.
I misunderstood the purpose of _textSurface. Now text is drawn to the
Mac screen, and a text mask is drawn to the _textSurface. I hope that's
better.

Still no luck with the non-disappearing text at the start of the game
though.
2021-05-17 18:44:29 +02:00
Torbjörn Andersson 6980ddb337 SCUMM: Add hard-coded Macintosh palette for Loom
I think this is correct. It's based on Basilisk II.
2021-05-17 18:44:29 +02:00
Torbjörn Andersson 85ba3876e4 SCUMM: Fix Mac text rendering.
The font renderer now remembers if the previous character ended on an
odd X coordinate, and compensates for that when calculating the next
character's position.

Maybe there's a more elegant way to do it, but it will do for now. The
rendering appears identical to the original, at least for the test case
I'm using.
2021-05-17 18:44:29 +02:00
Torbjörn Andersson 27420f78d4 SCUMM: Simplified Mac font rendering
Instead of trying to keep track of the real Mac screen coordinates in
the _charset data type, use the original 320x200 coordinates and only
scale up at the time of rendering.

Either way, the output is not pixel perfect, and this is much less error
prone.

Now if only text removal worked correctly...
2021-05-17 18:44:29 +02:00
Torbjörn Andersson 5b70ddd802 SCUMM: Fix text color and shadow
Text positioning is still all over the place, though.
2021-05-17 18:44:29 +02:00
Torbjörn Andersson fbefa65da9 SCUMM: Mark screen as dirty in the Mac font renderer
The difficulty buttons are now drawn almost correctly, even if little
else is. (The text position appears to be slightly wrong.)
2021-05-17 18:44:29 +02:00
Torbjörn Andersson 70a36d6b71 SCUMM: Use high-resolution cursor for Mac Loom 2021-05-17 18:44:29 +02:00
Torbjörn Andersson 819cfb8383 SCUMM: Initial work on Mac Loom font renderer
The main purpose of this set of changes is to refactor the code to make
it easier to pass the name of the Macintosh resource file to other parts
of the engine (it used to be hard-coded in the music players), and to
scale-up the graphics by 2.

The actual font rendering is almost completely broken.
2021-05-17 18:44:29 +02:00
ScummVM-Translations a8d0c0315d 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/
2021-05-17 14:19:54 +00:00
Eugene Sandulenko 22e949035b ASYLUM: Comment out unused variables 2021-05-17 16:19:35 +02:00
ScummVM-Translations 6938b3995d I18N: Update translations templates 2021-05-17 14:07:55 +00:00
Eugene Sandulenko df1109a22f ASYLUM: Added POTFILES 2021-05-17 16:07:37 +02:00
ScummVM-Translations a908532b7c 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/
2021-05-17 13:48:56 +00:00
alxpnv ba2ccee701 ASYLUM: fix Quick Load/Quick Save 2021-05-17 15:37:58 +02:00
alxpnv b7130bab21 ASYLUM: fix savegame overwriting
Bug reported by digitall
2021-05-17 15:37:58 +02:00
alxpnv a2d2495588 ASYLUM: add Keymapper support 2021-05-17 15:37:58 +02:00
alxpnv c81c046450 ASYLUM: clean up destructors 2021-05-17 15:37:58 +02:00
alxpnv ca1d780730 ASYLUM: clean up metaengine.cpp 2021-05-17 15:37:57 +02:00
alxpnv cf550f5ce2 ASYLUM: convert AsylumEngine::_gameFlags to uint32 2021-05-17 15:37:57 +02:00
alxpnv 179627fab4 ASYLUM: add some missing updateScreen() calls
Suggested by sev-
2021-05-17 15:37:57 +02:00
alxpnv 0d71da53a6 ASYLUM: remove a useless ifdef
Spotted by sev-
2021-05-17 15:37:57 +02:00
alxpnv aac8cee532 ASYLUM: optimizations to the board puzzles
Suggested by sev-
2021-05-17 15:37:57 +02:00
alxpnv cf0049c23b ASYLUM: (Pipes puzzle) use the engine-level random source 2021-05-17 15:37:56 +02:00
alxpnv 77a35a5c75 ASYLUM: get rid of global constructors 2021-05-17 15:37:56 +02:00
alxpnv ec5b6935f8 ASYLUM: change return type of PuzzleBoard::updateScreen() to void 2021-05-17 15:37:56 +02:00
alxpnv 139d15347f ASYLUM: remove an unused puzzle (Puzzle 11) 2021-05-17 15:37:56 +02:00
alxpnv bf7755aa29 ASYLUM: fix integer overflow in Screen::graphicsSelectionSort() 2021-05-17 15:37:56 +02:00
alxpnv 408a85436a ASYLUM: (Hive Machine puzzle) get rid of the polygons previously used for hit testing
Requested by sev-
2021-05-17 15:37:55 +02:00
alxpnv c524688f77 ASYLUM: simplify inventory voice system
Suggested by sev-
2021-05-17 15:37:55 +02:00
alxpnv c78293e4ce ASYLUM: simplify computation of inventory ring points 2021-05-17 15:37:55 +02:00
D G Turner b4a0418525 ASYLUM: Fix Uninitialized Variable Accesses Identified by Valgrind 2021-05-17 15:37:55 +02:00
alxpnv 93f08cc43d ASYLUM: fixes to the detection tables
Suggested by sev-
2021-05-17 15:37:55 +02:00
alxpnv ac43968c47 ASYLUM: formatting 2021-05-17 15:37:55 +02:00
alxpnv 48e164b2d7 ASYLUM: clean up includes 2021-05-17 15:37:54 +02:00