The major contributors provided their consent:
DrMcCoy, Strangerke, sdelamarre, sev.
The goal is to allow the re-release of this code under
Switch, which is incompatible with pure GPL
This mechanism was used to accommodate games existing in several resolutions, while keeping the same script logic across versions.
Opcodes manipulating coordinates and lengths call the adjustCoords() function to double or halve their values depending on the adjustment needed.
Its usage has been confirmed only in a German version of Adibou1 for now, restrict the feature to this game.
Only cursors drawn from scripts must be copied in _cursorSprites, not the ones loaded from executable.
This simplifies a lot of globals from the Draw object, that were needed only in the cursor-from-exec case.
Note: other GOB games are not impacted even if shared code from draw_v2.cpp, inter_v1.cpp is modified (_cursorHotspotsX and _doCursorPalettes are non-null only in Adibou 2).
The DOS, Amiga and Atari version of Little Red come with a small
screen, accessible through the main menu, that lets children read and
listen to animal names in 5 languages: French, German, English,
Spanish and Italian.
Unfortunately, the German names are partially wrong. This is
especially tragic because this is a game for small children and
they're supposed to learn something here. So I deem fixing this a
very good idea.
Just to be sure, someone should probably look over the French,
Spanish and Italian words too.
All uses of the old target scale API actually wanted to disallow scaling of
the mouse cursor. This commit adapts our API to this and thus simplifies
backend implementations.
Some backends, most notable the Wii and Android, did some implementation of
the cursor target scale, which I didn't adapt yet. I added a TODO for the
porters there.
When the cursor name is "", then that cursor is drawn by the scripts
instead of loaded from cursor32.dll. That cursor does not have its own
palette then.
Fixes the cursors in the "paint" game in Adibou2.
Don't overwrite _destSpriteX after PRINTTEXT with a value that's only
appropriate for monospaced fonts; support for non-monospaced fonts
has been introduced with Woodruff.
This should fix bug #3295889.
Add
static const int kFrontSurface = 20;
static const int kBackSurface = 21;
static const int kAnimSurface = 22;
static const int kCursorSurface = 23;
static const int kCaptureSurface = 30;
to class Draw and substitute the raw numbers in other files with
those aliases, for readability.
svn-id: r51852