Commit Graph
23 Commits
Author SHA1 Message Date
Eugene Sandulenko abea37c9bb ALL: Update ScummVM project license to GPLv3+ 2021-12-26 18:48:43 +01:00
Orgad Shaneh a386075217 AGS: Use nullptr
Using clang-tidy modernize-use-nullptr
2021-11-14 15:51:59 +02:00
Thierry Crozat 7f886d51e1 AGS: Add warning about playing overlapping sounds in ags_wave
This is currently not implemented, and is not trivial to implement
with the current way we implemented the plugin.

Playing overlapping sound is for example used when moving the cursor
over the buttons in the options or quit dialogs in Strangeland.
2021-08-21 19:17:44 +01:00
Thierry Crozat 0b307e46a4 AGS: Fix music not looping in Strangeland 2021-08-21 19:17:44 +01:00
Thierry Crozat d9cf6e626a AGS: Fix music and sfx being stopped when changing room in Strangeland
The original is unloading sounds that had already stopped, but is not
stopping the ones still playing.
2021-08-21 19:17:44 +01:00
Thierry Crozat 4e70c7e687 AGS: Fix playing the same sound again and again in ags_wave
In Strangeland, it seems to start the same sound again and again
(multiple times per second, the sound itself is 45s long). In
ScummVM we were stopping and restarting the sound each time. It
seams the original was only starting the sound if it was not
already playing.

This fixes noise (as we played again and again the first few ms
of the same sound) when starting Strangeland. And this means we
can now hear the music!
2021-08-21 19:17:44 +01:00
Paul Gilbert 13f605e18d AGS: Implement music playback in AGSWaves, SFX simplification
I was havbing a bunch of troubles trying to get the SFX loading
to work like the original, particularly when to free audio streams.
In the end, I decided to load sound effects from scratch each time
they're needed.
2021-07-24 17:32:11 -07:00
Paul Gilbert c2dc7c9e86 AGS: Fixes to playing sound effects in AGSWaves 2021-07-23 20:08:21 -07:00
Le Philousophe f9ece38aec AGS: Fix build when Vorbis is not available 2021-07-21 12:15:18 +02:00
Le Philousophe b477db94b3 AGS: Fix int/int32 build failures 2021-07-21 12:14:52 +02:00
D G Turner 0e8d0bc76f AGS: Fix GCC Warnings in AGS Waves Plugin Code 2021-07-21 05:36:40 +01:00
Paul Gilbert f9bc18c58a AGS: Fix loading sound effects in AGSWaves 2021-07-20 21:17:41 -07:00
Paul Gilbert 3c616e3edc AGS: Fix bitmap access in AGSWaves 2021-07-20 21:17:41 -07:00
Paul Gilbert aadd100b9c AGS: Implementing AGSWaves sound methods 2021-07-20 20:25:54 -07:00
Paul Gilbert f5afbc964d AGS: Implemented AGSWaves weather methods 2021-07-20 20:25:54 -07:00
Paul Gilbert 74be1d8fd7 AGS: Further fleshing out AGSWaves gfx methods 2021-07-20 20:25:53 -07:00
Paul Gilbert 930be67a9f AGS: Adding AGSWaves draw methods 2021-07-20 20:25:53 -07:00
Le Philousophe 780d10756c AGS: Fix int32/int types and don't use int pointers as size may change 2021-07-19 12:52:05 +02:00
Paul Gilbert ae1814553f AGS: Implement PluginMethod class as proxy for calling script methods 2021-07-18 21:47:45 -07:00
Paul Gilbert d716cfa580 AGS: Beginnings of AGSWaves implementation 2021-07-18 18:44:10 -07:00
Paul Gilbert 8caed23e8b AGS: Refactoring the plugins for new instance scheme 2021-07-18 17:07:02 -07:00
Paul Gilbert e543a32ec0 AGS: In progress converting plugin classes to be instance based
Previously the plugin system was obviously built around function
pointers, since a loaded plugin DLL would expose them statically.
This meant that the plugin classes I implemented also had to use
static methods, and all the variables had to be static as well.

This has been getting more and more annoying. So this commit is
an in-progress refactoring of AGS to allow for plugins to be
properly instance-based, and pointers to script methods will be
both a pointer to the plugin as well as the method name.
2021-07-18 17:07:01 -07:00
Paul Gilbert b4056b39b0 AGS: Skeleton AGSWave plugin 2021-07-11 14:06:26 -07:00