Ivan Savenko
ed066cb7ba
Fixed possible multithreading races in sound/music callbacks
2023-08-08 00:27:03 +03:00
Ivan Savenko
9eac3eaafa
Merged "music" resource type into "sound", enables ogg's use as sounds
2023-05-15 22:22:54 +03:00
Ivan Savenko
71ddaeea6e
Fix crash on missing music file
2023-04-08 19:47:16 +03:00
Ivan Savenko
9062d67f80
Fixed volume of ambient sounds
2023-03-28 18:56:44 +03:00
Konstantin
7a04c28815
vcmi: remove pickupSounds set
...
It is unused now, resource pickups handled similar like necromancy
2023-03-11 21:41:57 +03:00
Ivan Savenko
5f396af14c
Remove excessive logging
2023-03-07 00:06:58 +02:00
Ivan Savenko
b61cae5b37
Fixed minor issues discovered during testing
2023-03-05 18:02:59 +02:00
Ivan Savenko
b57a07b10f
Restored ambient sounds functionality
2023-03-05 18:02:59 +02:00
Ivan Savenko
108a42e4ba
Reorganized includes for new layout. New class - IImageLoader
2023-02-01 20:42:06 +02:00
Ivan Savenko
fc0f5a9fb3
Reduced SDL includes
2023-01-20 16:11:43 +02:00
Ivan Savenko
21c053ba87
Fix assertion failure on shutdown
2023-01-20 15:15:57 +02:00
Ivan Savenko
05ac217b0f
Merge with vcmi/develop
2023-01-17 23:02:25 +02:00
Ivan Savenko
246281e62a
Merged vcmi/beta with vcmi/develop
2023-01-15 17:46:42 +02:00
Ivan Savenko
4f3ea0d1d9
Renamed Terrain.h/cpp -> TerrainHandler.h/cpp
2023-01-10 00:01:35 +02:00
Ivan Savenko
f51b3bca57
use JsonKey or NameTranslated instead of ambiguos Name
2023-01-10 00:01:35 +02:00
Ivan Savenko
7c7ae26e67
Map/Road/River identifiers are now private members
2023-01-10 00:01:35 +02:00
Ivan Savenko
64885bdf6b
Better names for terrain parameters. Support for new movement sounds.
2023-01-10 00:01:35 +02:00
Ivan Savenko
e1799379dd
Terrain/Road/River handler are now in compileable state
2023-01-10 00:01:35 +02:00
Ivan Savenko
1468f6aded
Converted terrainTypeHandler into proper handler class
2023-01-10 00:01:35 +02:00
Ivan Savenko
8526eba6fa
Added checks to music player to detect potential freezes
2023-01-09 13:05:15 +02:00
Ivan Savenko
b275d9de72
merge beta branch into develop
2022-12-29 22:08:53 +02:00
Ivan Savenko
61ed408f61
Fix typo
2022-12-29 21:49:20 +02:00
Ivan Savenko
588b635d1c
Workaround for a potential deadlock in MusicHandler
2022-12-29 21:49:20 +02:00
Ivan Savenko
facf77b3ae
vstd::unique -> std::unique
2022-12-07 23:36:20 +02:00
Ivan Savenko
e6afd8621c
Minor improvements & fixes to music player
...
- music will be selected correctly after rapid leaving and reentering
town screen
- music sets are now store as single std::map instead of unnecessary
"map of maps"
- fixed computation of resume time for restarted/looped music tracks
- updated & clarified some comments
- converted C functions for SDL_Mixer callbacks into lambdas
- formatting fixes
2022-11-21 16:20:20 +02:00
Ivan Savenko
61eca7e3be
Hotfix: erase stored music position once it has been used
...
Fixes infinite loop on attempts to resume music track from position
larger than music duration
2022-11-20 23:42:50 +02:00
Ivan Savenko
2324148187
Fix compilation using older SDL library
2022-11-13 14:59:28 +02:00
Ivan Savenko
38b8fc0af8
Formatting: space -> tabs
2022-11-13 14:24:15 +02:00
Ivan Savenko
4af9bc2461
Music: remember playback position of music tracks
...
Town & terrain themes will now resume from previously stopped position
instead of playing from start, as it was in original game.
Fixes #965
2022-11-13 14:05:51 +02:00
Tomasz Zieliński
11dd71515a
comment
2022-09-26 09:18:01 +02:00
Tomasz Zieliński
2bd30556a3
Store TerrainType by havlue and handle by reference
2022-09-26 09:17:55 +02:00
Tomasz Zieliński
4ea57ea7fc
A variety of suggested style tweaks
2022-09-25 09:33:56 +02:00
Tomasz Zieliński
11e1bb44a2
Load sounds for new terrains later
2022-09-21 13:43:00 +02:00
Tomasz Zieliński
494b0f0226
First version that compiles
2022-09-21 11:34:23 +02:00
Tomasz Zieliński
b20f649521
stash
2022-09-19 16:13:58 +02:00
Nordsoft91
aaa07e4d2e
New terrain support - part 1 ( #755 )
...
Initial support of new terrains
2022-09-11 11:31:26 +03:00
Andrey Filipenkov
f2187f6767
fix infinite recursion when using SDL_mixer v2.6
...
Mix_HaltChannel -> soundFinishedCallback -> Mix_FreeChunk -> soundFinishedCallback -> ...
2022-08-03 12:08:41 +03:00
AlexVinS
ecaa9f5d0b
Entities redesign and a few ERM features
...
* Made most Handlers derived from CHandlerBase and moved service API there.
* Declared existing Entity APIs.
* Added basic script context caching
* Started Lua script module
* Started Lua spell effect API
* Started script state persistence
* Started battle info callback binding
* CommitPackage removed
* Extracted spells::Caster to own header; Expanded Spell API.
* implemented !!MC:S, !!FU:E, !!FU:P, !!MA, !!VR:H, !!VR:C
* !!BU:C, !!BU:E, !!BU:G, !!BU:M implemented
* Allow use of "MC:S@varName@" to declare normal variable (technically v-variable with string key)
* Re-enabled VERM macros.
* !?GM0 added
* !?TM implemented
* Added !!MF:N
* Started !?OB, !!BM, !!HE, !!OW, !!UN
* Added basic support of w-variables
* Added support for ERM indirect variables
* Made !?FU regular trigger
* !!re (ERA loop receiver) implemented
* Fixed ERM receivers with zero args.
2021-02-14 19:05:43 +03:00
John Bolton
c61bae4060
Fixed RETURN_IF_BATTLE(). Undid disabled warnings. Fixed indentation.
2020-10-05 16:28:28 -07:00
John Bolton
a05ae78e67
Fixed lots of warnings.
...
Disabled the following (for MSVC only) that couldn't (or shouldn't) be fixed.
4003: not enough actual parameters for macro 'identifier'
4250: 'class1' : inherits 'class2::member' via dominance
4251: 'type' : class 'type1' needs to have dll-interface to be used by clients of class 'type2'
4275: non dll-interface class 'type1' used as base for dll-interface class 'type2'
2020-10-04 02:20:18 -07:00
Ewilhan
1afbdf7027
CSoundHandler: fix "unmutable" game ( #588 )
...
After a sound fade, now uses current volume instead of setting it to 100.
Fixes #3050 .
2019-05-07 06:30:44 +03:00
Dydzio
f7262730b1
Defer SDL mixer free on 1st handler release ( #578 )
2019-04-21 22:09:14 +03:00
Michał Janiszewski
53d75684ee
Prevent shadowing of global variable in function argument
2018-10-29 16:34:03 +01:00
Arseniy Shestakov
da117e9255
Code style: remove void from constructors without arguments
2018-01-13 11:51:47 +03:00
Arseniy Shestakov
d3b3389a37
Implement configurable object sounds: ambient, visit and removal
...
* If there more than one sound for visit or removal random is played
* At moment only the first ambient sound will be used
2018-01-02 18:16:35 +01:00
Arseniy Shestakov
d96a3aa5b7
CAudioBase: move mutex to base class since CSoundHandler need it
2018-01-02 09:49:04 +01:00
Arseniy Shestakov
f15cadc87b
Implement configurable object sounds: ambient, visit and removal
...
* If there more than one sound for visit or removal random is played
* At moment only the first ambient sound will be used
2018-01-02 09:49:03 +01:00
AlexVinS
e8a7078bb1
Quick fix for #389 .
...
* modded music support should be redone separately
2017-11-16 17:47:52 +03:00
godric3
76eed8682c
Allow mods to add music played during battles and ai turn
2017-11-11 21:16:11 +01:00
AlexVinS
64d9dadd64
Logging cleanup.
2017-08-11 15:47:50 +03:00