SFXResource was always creating a new file for each sound resource. Sometimes this would happen 3 times since the asset was creating a resource, then the profile, then the object that was using it.
Now if the sfxResource exists and we call openStream it returns the sfxFileStream linked to that file instead of just creating a new one.
* GroundWork
-Reverted SFXPlaylist since it is going to be made from an asset now instead.
-Added extra options to soundAssets description.
-SFXPlaylist may need an onAdd function
* Update sfxController.cpp
* SFXPlaylist data
-Added sfxPlaylist init persist fields for the slots to sound asset
-Added logic to fil sfxPlaylist if more than 1 slot is filled
* Update SoundAsset.cpp
to stop git ci complaining, assetImporter........
* Update SoundAsset.h
* sfxPlaylist
-Fix: incomplete type error
-Added onAdd and onRemove to playlist
-SoundAsset getProfile define now returns playlist if the asset is a playlist.
* Update SoundAsset.h
-updated asset array to return playlist or profile depending on what the asset is
* SFXPlaylist working
-SFXPlaylist works
AudioChannelDefault gets its volume set to 0 for some reason and was throwing off making sfxPlaylist inaudible.
Still an exception when closing if using a playlist trips on line 355 of sfxSound
* Update sfxSound.h
* setSoundFile index null fix
* Update SoundAsset.h
* Update SoundAsset.h
* netstream safety in case of a null asset assignment
* Update sfxController.cpp
added safeties around a null playlist trying to play.
* Update with Az's asset err code changes
---------
Co-authored-by: AzaezelX <quillus@hotmail.com>
utilize specialty case soundarray macros.
slim duplicate entries in vehicle already hand;ed by rigidshape.
create a gamebasedata::onnewdatablock which calls onremove and onadd for the db for those classes like wheeledvehicle that expect mounting logic to occur
Cleanup print functions cos mac hates them. All these functions did was print what was capable on openal anyway end user doesn't really get any benefit from this. Will save these for the refactor.
-Device capabilities left until a device is actually selected and is loading
-ALDEVICEINFO possibly no longer needed.
-aldlist possibly no longer required as well.
Fixed modulePath not setting in some cases for project importer
Fixed not assigning drop and splash textures in precipitation
Fixed stringtable insert for sfxProfile
Processed core, tools and default modules to utilize assets
Converted all console types that were string based, such as TypeImageFilename to utilize const char*/the string table, which avoids a lot of type swapping shenanigans and avoids string corruption
Removed unneeded MainEditor mockup module
Removed some unused/duplicate image assets from the tools