Age | Commit message (Collapse) | Author |
|
|
|
This is a complete rewrite of the AdLib players for ADL and MDY/TBR
files in the Gob engine.
Major changes
1) The AdLib base class is now completely separated from all file
format code and can theoretically be used by any OPL2-based
format (within reason)
2) The new code is far better documented and more readable
3) The MDY player now actually works. The MDY/TBR format is
in reality the MUS/SND format created by AdLib as a simpler
alternative to the ROL format
4) Since the MAME emulator is quite buggy and leads to noticable
wrong percussion in the Gobliins 2 title music, the new AdLib
player will try to create a DOSBox OPL. If it's not compiled in,
or if the user configured opl_driver to "mame", it will print
out appropriate warnings.
|
|
Formerly the GMM, AGI and SCI duplicated the logic for USE_SAVEGAME_TIMESTAMP.
Now I added a method to SaveLoadChooser instead, which takes care of this. This
might not be the best placement of such a functionality, thus I added a TODO
which talks about moving it to a better place.
|
|
This reduces the code duplication in all client code, which formerly duplicated
the querying of the plugin, game id etc. and now simply calls the newly added
method runModalWithCurrentTarget() on a SaveLoadChooser object.
|
|
|
|
This is actually always called when a dialog closes, thus manual closing is
not required. It furthermore is actually *bad* to call this from outside the
dialog's code, since it will remove the top dialog from the dialog stack and
thus mess up the GUI in case multiple dialogs are opened.
|
|
We already pass the title and process button name to the constructor of
SaveLoadChooser and then do not offer any way of changing it, thus changing
the edit mode of the chooser is kind of pointless and was never actually used.
Instead we pass the mode on SaveLoadChooser construction now.
|
|
Regression from 3968f3194893d88d1a8d73eef535b801e5415765
|
|
Thanks to LePhilousophe for his feedback and observations on this
|
|
|
|
Fixes the incorrect flood fill in the Rada Drums screen in GK1
|
|
ALL: Replace cursorTargetScale in OSystem API with a simple "do not scale" logic.
|
|
|
|
|
|
|
|
|
|
Fixes several wrong colors in SQ6
|
|
Regression from 906f0248317e1a4167190a666fe308a09334bfac.
Fixes bug #3533069.
|
|
Geisha's Penetration minigame should be complete now.
This also means that Geisha is now basically complete.
The only thing missing is the MDYPlayer, but since the
music is only played once during the title screen, and it
has a PCM-based fallback (which is currently played), this
is low priority.
|
|
Since shooting does not yet work, we're just getting mauled by them...
|
|
This is a leftover from before the move of the coroutine code.
|
|
This is used in LSL6 hires and SQ6. This initial implementation is hackish
and only works in SQ6 (nothing is shown in LSL6)
|
|
|
|
|
|
Still no bullets, though :P
|
|
You can actually move diagonally now
|
|
Scoreboard transitions now play
|
|
This is a workaround for how Lost in Time behaves in combination
with changes I made to the DataIO code for running Urban Runner
on low-memory devices.
Urban Runner's intro are far to big to have them copied into
memory for these devices, so I made the DataIO code return a
SafeSeekableSubReadStream into the opened archive stream instead.
Unfortunately, Lost in Time might not close a video file when it
closes the data file which it was originally in, especially when
loading a saved game. Since the video player needs to be able to
gaplessly continue a video and there does not, by itself, close
the video if not requested by the scripts, this leads to reading
out of an already closed stream in certain cases.
So, to worka round this issues, the video player tries to reopen
each currently opened video after a data archive was closed, to
make sure that that video is still available. If not, the video
is closed.
|
|
|
|
The German strings have been changed from the original, to fix the
horribly broken German.
Someone should probably check the Italian and Spanish strings too.
|
|
|
|
|
|
|
|
Shots don't result in bullets yet, though
|
|
|
|
It was using textId 0, which is not the subtitle we want anyway. So
instead of using the wrong subtitle, it is probably better to not display
a subtitle at all. A test case for this is with the demo when using
non-english language as several subtitles are missing toward the end.
|
|
|
|
The lite version contains the full game and we will not support it due to potential piracy.
|
|
|
|
|
|
|
|
This fixes bug #3531635 - "DREAMWEB: doors don't play "open" sound when
opening".
In addition, the resultant code is simpler and should better match the
original behaviour and a basic playtest has not shown any regressions.
|
|
|
|
A remnant of when we were still doing dithering color LUT
creation at startup
|
|
|
|
|
|
logic.
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.
|
|
|
|
|
|
Still hidden for now.
|