Commit Graph
402 Commits
Author SHA1 Message Date
Eugene Sandulenko 7fa7f68308 SLUDGE: Fixes to ManagedSurface switch. Courtesy of ccawley2011 2023-10-24 19:48:24 +02:00
polyesterswing b292e202ce SLUDGE: Replace TransparentSurfaces with ManagedSurfaces 2023-10-24 18:31:31 +02:00
Kaloyan Chehlarski 23e58fc250 SLUDGE: Fix another crash when drawing text
This is a more complete fix for the crash that happens
when attempting to draw a sprite with a dimension of
size 0 (e.g. the space character in Out of Order's font). This
fix targets the other two functions that can draw text,
pasteSpriteToBackDrop() and burnSpriteToBackDrop().
2023-10-22 00:25:56 +03:00
Kaloyan Chehlarski 0622b3c341 SLUDGE: Fix crash when drawing text
The space character in Out of Order has a height of 0,
which caused a divide by zero error further down the chain
in the blitting code.  Instead of attempting to draw,
fontSprite() now simply skips them.
2023-10-21 20:36:01 +03:00
Eugene Sandulenko e1870d6efc SLUDGE: Improved execution logs 2023-10-02 00:13:55 +02:00
Wyatt Radkiewicz 41a942c5ce ALL: Renamed TS_ARGB to MS_ARGB 2023-08-13 00:22:10 +02:00
Sebastian Krzyszkowiak 4b15de35f7 SLUDGE: movie: Allocate substream on heap
MKVDecoder takes ownership of the passed stream, it can't be allocated
on the stack. This fixes a crash in MKVDecoder destructor.
2023-07-22 12:51:21 +02:00
iced coke 195e54f929 SLUDGE: Add versions and platform to v 1.0 outoforder detection 2023-05-14 22:48:07 +02:00
iced coke 6a8d3452ab SLUDGE: Add game to detection table. 2023-05-14 22:48:07 +02:00
Eugene Sandulenko 934487e231 SLUDGE: Small improvements to debug messages and cleanup 2023-03-29 23:56:36 +02:00
iced coke 681f8f2e40 SLUDGE: Implement .ogg sounds playback 2023-03-29 23:52:46 +02:00
Eugene Sandulenko d71f363b20 SLUDGE: Probe MOD files before attempt to play 2023-03-25 01:55:23 +01:00
Harishankar Kumar 68bae81aff SLUDGE: Add support for impulse tracker mod files in sound 2023-03-24 23:59:53 +01:00
Donovan Watteau be32da39cd SLUDGE: Fix "an" typo 2023-03-16 14:47:28 +01:00
hax0kartik 234e1cac49 SLUDGE: Skip movie incase scummvm isn't built with libvpx as a dependancy 2023-03-05 21:29:03 +01:00
hax0kartik 5351c8b33d SLUDGE: Convert unnecessary warnings to debugs 2023-03-05 21:29:03 +01:00
hax0kartik a121c1034a SLUDGE: Close resources properly in stopMovie() 2023-03-05 21:29:03 +01:00
hax0kartik 434d82a9bb SLUDGE: Only scale if required 2023-03-05 21:29:03 +01:00
hax0kartik 492002291a SLUDGE: Remove old imported code 2023-03-05 21:29:03 +01:00
hax0kartik 50fac579fe SLUDGE: Add decoder.start() to actually start playing audio 2023-03-05 21:29:03 +01:00
hax0kartik 0485b06f0b SLUDGE: Change movie playing status to none once its done playing 2023-03-05 21:29:03 +01:00
Eugene Sandulenko 2cd44e2a79 SLUDGE: Rename constants and flag movie playing 2023-03-05 21:29:03 +01:00
Eugene Sandulenko 2f7d4acacd SLUDGE: Initial code of the movie player loop 2023-03-05 21:29:03 +01:00
Eugene Sandulenko 91c0463145 SLUDGE: Close resources for now 2023-03-05 21:29:03 +01:00
Eugene Sandulenko 32055ab0b2 SLUDGE: Plugged in movie player 2023-03-05 21:29:03 +01:00
Walter Agazzi 0dd79669a3 SLUDGE: Proper detection for two entries
The Interview / Life Flashes By
2023-03-04 22:47:51 +01:00
Sebastian Krzyszkowiak 44e2abaed7 SLUDGE: Use burnSurface in burnSpriteToBackDrop
Otherwise the only difference between it and pasteSpriteToBackDrop
is the different color used for blending.

burnString is supposed to transform brightness into alpha. This is
pre-rendered already at load time in burnSurface, so use that.

While at that, remove useLightTexture TODOs from above-mentioned
functions. The only thing the original interpreter does with
useLightTexture in those places is to make sure it's disabled.
2023-01-19 00:07:45 +01:00
Sebastian Krzyszkowiak 800d48f9da SLUDGE: Fix channel mapping in setBurnColor 2023-01-17 13:37:44 +02:00
Sebastian Krzyszkowiak 40fc49256d SLUDGE: Make sure initial backdrop gets its alpha channel stored
OpenSLUDGE draws the first backdrop image with alpha channel
intact. Afterwards, next images are blended with previous backdrop
contents.

So far ScummVM always did the later part, but never the former,
which caused parallax to not work as it relies on alpha channel
being propagated into backdrop (which gets initiallly filled
with opaque black, so it had no chance to ever be transparent).

Fix that by clearing the area the first backdrop image is about
to get blitted into with full transparency.
2023-01-16 17:57:04 +01:00
Sebastian Krzyszkowiak 21c78ccdc2 SLUDGE: Fix transitionFader
Instead of manipulating alpha with BLEND_MULTIPLY, simply blend
in normal mode with translucent black. This fixes transitions with
low brightness levels (close to 0), which previously would
effectively act as if the level was set to 255.
2023-01-15 14:24:38 +02:00
Sebastian Krzyszkowiak 7d951fd9d2 SLUDGE: Use unescaped value when calling openUrl in launch
newText is an escaped filename, which escapes characters like
: and /, which are essential for URLs. Use unescaped version
like original OpenSLUDGE does, as otherwise URLs get mangled
and become unusable.
2023-01-13 23:56:46 +01:00
Sebastian Krzyszkowiak 8f1d5a0c4c SLUDGE: Fix camera getting reset after loading saved game
loadHSI calls reserveBackdrop, which resets camera values.
Apply camera position and zoom in loadBackdrop after calling
loadHSI, so the stored camera state gets preserved.
2023-01-13 23:56:09 +01:00
Sebastian Krzyszkowiak 3301d890db SLUDGE: Save/restore region's direction as signed integer
The engine is using -1 as an undefined direction, so keep it that
way after save & restore cycle. Otherwise persons will spin around
for a while trying to rotate themselves to 65535 degrees when
aligning to a region with undefined direction.
2023-01-13 00:40:07 +02:00
Vladimir Serbinenko 275379c3d2 ENGINES: Change getFileProperties to receive MD5Properties as argument 2022-12-28 12:56:22 +01:00
Le Philousophe 95d5bafb57 SLUDGE: Don't use unsafe sprintf and vsprintf 2022-10-23 22:46:19 +02:00
Eugene Sandulenko cb6966f652 SLUDGE: Add more files to detection entries for addressing graylisted names 2022-09-17 16:53:48 +02:00
treloret 5d0cd767c1 SLUDGE: Added missing entries to 3 sludge games 2022-08-11 22:23:44 +03:00
Cameron Cawley f3b094e53f ENGINES: Change the MetaEngineDetection interface to match MetaEngine 2022-07-23 23:31:58 +02:00
Henrik "Henke37" Andersson 11ebced7de SLUDGE: Fix detection of nsc 2022-07-16 21:00:06 +03:00
Henrik "Henke37" Andersson 6155dbde7f SLUDGE: Reimplement builtin launch for webpages 2022-07-15 22:37:44 +02:00
Eugene Sandulenko abea37c9bb ALL: Update ScummVM project license to GPLv3+ 2021-12-26 18:48:43 +01:00
Alexandre Detiste 6044504762 JANITORIAL: typos
some in the variable names, some in the comments;
no change for the strings that interract with original games assets
2021-10-31 20:46:31 +01:00
Kai Knoblich 3101573007 SLUDGE: Fix build with Clang >= 11.0.0
Clang 11 and newer check the types of return values more strictly and
generate an error if there is a discrepancy.

However the "bool loadGame()" function, returns the value "NULL", if
loading of a savegame was unsucessful, whereas Clang expects a return
value of type "bool".

Remedy the issue by using "false" as return value instead of "NULL".
2021-09-10 19:38:12 +03:00
Cameron Cawley 644e7354f5 CREDITS: Update credits 2021-08-22 22:25:33 +03:00
Filippos Karapetis 0a3e3d8372 SLUDGE: Remove superfluous C string conversions 2021-08-10 13:04:09 +03:00
Cameron Cawley e187a37d95 SLUDGE: Avoid direct use of remove() 2021-08-10 13:04:09 +03:00
Paul Gilbert 005561d305 COMMON: Increase Stream pos, seek, size from int32 to int64 2021-07-08 18:24:28 -07:00
Paul Gilbert baccbedf50 GRAPHICS: Changed surface classes sizes from uint16 to int16 2021-07-04 18:24:27 -07:00
Eugene Sandulenko 35eedf421a SLUDGE: Avoid usage of remove() 2021-06-26 22:00:14 +02:00
sluicebox 8e1d90f8e4 ALL: Remove clearAllDebugChannels() from Engine dtors 2021-06-14 12:42:38 -05:00