Commit graph

176 commits

Author SHA1 Message Date
Pavle Goloskokovic
94e834fa96 Updating all sounds on sound manager update 2017-11-26 16:59:12 +01:00
Pavle Goloskokovic
ceeef0368c Added a todo to fix race condition 2017-11-26 16:41:46 +01:00
Pavle Goloskokovic
2995b7eaf6 Added short logic explanation for onended event handler 2017-11-26 16:37:03 +01:00
Pavle Goloskokovic
e13b829ab1 Removed redundant check in onended handler and reverted setting source to null before calling stop() on it since it does not invoke onended event handler immediately 2017-11-26 16:35:13 +01:00
Pavle Goloskokovic
007a565700 Just checking for null sound reference isn't enough since because calling play() on already playing sound is not covered by that condition 2017-11-26 16:31:06 +01:00
Pavle Goloskokovic
aab5150016 Setting source to null before calling stop on it to determine if onended event was fired when sound ended or when it was stopped by user 2017-11-26 16:28:54 +01:00
Pavle Goloskokovic
04eb680d52 Checking if source is null before stopping sound on ended handler because it is called also when stop() method is called on it 2017-11-26 16:27:39 +01:00
Pavle Goloskokovic
1808fab27e Calling stop method when sound ends 2017-11-26 16:24:49 +01:00
Pavle Goloskokovic
53dbf050d4 Marked a few methods as private 2017-11-26 16:19:56 +01:00
Pavle Goloskokovic
762c6cb147 Updated a TODO 2017-11-23 13:55:27 +01:00
Pavle Goloskokovic
266ebc4925 Taking into account marker start time on resuming sound 2017-11-23 13:55:08 +01:00
Pavle Goloskokovic
d369d46e35 Taking into account marker start time if marker is currently played 2017-11-23 13:53:57 +01:00
Pavle Goloskokovic
0ded9af3a9 Resetting current marker if no marker name is provided to play method 2017-11-23 13:52:03 +01:00
Pavle Goloskokovic
5f55931d22 Completed a TODO by setting BaseSound update method to NOOP 2017-11-23 13:19:22 +01:00
Pavle Goloskokovic
a2ceff63f1 Returning marker/null instead of boolean in removeMarker 2017-11-23 13:14:41 +01:00
Pavle Goloskokovic
b3337b6c51 Added validation for non existing marker in removeMarker method 2017-11-23 13:13:25 +01:00
Pavle Goloskokovic
c48f51de35 Setting marker to null on removeMarker call 2017-11-23 13:12:21 +01:00
Pavle Goloskokovic
9d8afee78f Added validation for non existing marker to updateMarker method 2017-11-23 12:56:32 +01:00
Pavle Goloskokovic
0e97a18553 Added validation for invalid marker name to updateMarker method 2017-11-23 12:56:06 +01:00
Pavle Goloskokovic
42735ee09f Added validation for when no marker is provided to updateMarker method 2017-11-23 12:55:22 +01:00
Pavle Goloskokovic
17d39f7bab Merging provided marker with existing marker in updateMarker method 2017-11-23 12:54:47 +01:00
Pavle Goloskokovic
8a4e439b55 Updated logging for addMarker method of BaseSound class 2017-11-23 12:52:19 +01:00
Pavle Goloskokovic
6c38853a6f Added update marker method to BaseSound class 2017-11-23 12:41:41 +01:00
Pavle Goloskokovic
76a32e20c6 Fixed return values for addMarker method 2017-11-23 12:37:10 +01:00
Pavle Goloskokovic
1e213e6d86 Added validation for existing marker 2017-11-23 12:35:55 +01:00
Pavle Goloskokovic
de5689b129 Added validation for marker name 2017-11-23 12:34:43 +01:00
Pavle Goloskokovic
2bcffe6f2f Merging provided marker with object with default values 2017-11-23 12:33:56 +01:00
Pavle Goloskokovic
40b4dc2e6e Adding validation and error handling if no marker is passed 2017-11-23 12:31:34 +01:00
Pavle Goloskokovic
084d309efb Adding market to markers array in addMarker method 2017-11-23 12:30:24 +01:00
Pavle Goloskokovic
c1b0bc4ee7 Added a TODO for scheduled playback 2017-11-22 18:07:08 +01:00
Pavle Goloskokovic
068fc6d1c9 Renamed 'marker' param of play method to 'markerName' to avoid any confusion for WebAudioSound 2017-11-22 18:06:21 +01:00
Pavle Goloskokovic
d367dc1a85 Renamed 'marker' param of play method to 'markerName' to avoid any confusion for BaseSound 2017-11-22 18:05:18 +01:00
Pavle Goloskokovic
8e912ab877 Updated currentMarker property to hold reference to marker object instead it's name 2017-11-22 18:03:44 +01:00
Pavle Goloskokovic
55e5041ef8 Setting correct duration value when calling play on BaseSound class 2017-11-22 18:00:53 +01:00
Pavle Goloskokovic
de0aefba7e Added default value for config in WebAudioSound constructor 2017-11-22 17:58:05 +01:00
Pavle Goloskokovic
9a143694d1 Using duration property instead of config duration setting in WebAudioSound 2017-11-22 17:56:55 +01:00
Pavle Goloskokovic
92abe3f678 Remove completed TODO 2017-11-22 17:54:38 +01:00
Pavle Goloskokovic
ffe4e49512 Setting duration and totalDuration properties in WebAudioSound constructor 2017-11-22 17:54:00 +01:00
Pavle Goloskokovic
90d2e8cf03 Removed setting duration setting in config for WebAudioSound 2017-11-22 17:51:10 +01:00
Pavle Goloskokovic
1296dd737d Added totalDuration property to BaseSound class 2017-11-22 17:48:10 +01:00
Pavle Goloskokovic
f932e315d6 Added duration property to BaseSound class 2017-11-22 17:47:18 +01:00
Pavle Goloskokovic
7442ab5bc8 Removed duration setting from sound config 2017-11-22 17:45:57 +01:00
Pavle Goloskokovic
cd43f0095c fixed deprecation issues with AudioParam for WebAudioSoundManager 2017-11-21 19:47:43 +01:00
Pavle Goloskokovic
1f32f04036 fixed deprecation issues with AudioParam for WebAudioSound 2017-11-21 19:47:27 +01:00
Pavle Goloskokovic
658e8c0ee6 implemented onBlur and onFocus methods for WebAudioSoundManager 2017-11-21 18:09:30 +01:00
Pavle Goloskokovic
ab9a9c951f bound onBlur and onFocus methods to corresponding game events 2017-11-21 18:06:18 +01:00
Pavle Goloskokovic
dd824c4a79 added onBlur and onFocus methods to BaseSoundManager 2017-11-21 18:04:54 +01:00
Pavle Goloskokovic
f00421f112 changed muteOnPause flag to be pauseOnBlur for BaseSoundManager 2017-11-21 18:02:24 +01:00
Pavle Goloskokovic
526df860d9 added method for unlocking audio context on mobile devices 2017-11-21 15:43:10 +01:00
Pavle Goloskokovic
cafa91005f updated description for detune setting and added a check to see if it's available, webkit implementation does not support it 2017-11-20 14:54:33 +01:00
Pavle Goloskokovic
82083897aa updated source stopping logic for WebAudioSound class 2017-11-17 18:38:23 +01:00
Pavle Goloskokovic
6897d6567b updated checks in playback control methods for BaseSound class 2017-11-17 18:37:49 +01:00
Pavle Goloskokovic
6577a232a1 adding flag to WebAudioSoundManager indicating if Web Audio implementation is webkit or standards based 2017-11-17 17:30:29 +01:00
Pavle Goloskokovic
9098b806b2 added checks to playback control methods for WebAudioSound 2017-11-17 17:17:06 +01:00
Pavle Goloskokovic
40c4b9f6e5 added checks to playback control methods for BaseSound class 2017-11-17 17:16:06 +01:00
Pavle Goloskokovic
720d2a9665 moved source buffer stopping and removing to separate method for reuse 2017-11-17 17:07:04 +01:00
Pavle Goloskokovic
a6fcb4cf53 added a couple of TODOs 2017-11-17 17:02:11 +01:00
Pavle Goloskokovic
478656df98 moved source buffer creation and starting to separate method for reuse 2017-11-17 17:01:12 +01:00
Pavle Goloskokovic
e6f17744b6 handling source buffer on method calls for WebAudioSound 2017-11-17 16:16:01 +01:00
Pavle Goloskokovic
7b90fc7f90 updating pausedTime value on method calls for WebAudioSound 2017-11-17 15:42:22 +01:00
Pavle Goloskokovic
f7f5bebd72 added pausedTime field to WebAudioSound class 2017-11-17 15:33:42 +01:00
Pavle Goloskokovic
f1a15571ff setting startTime to context current time on play for WebAudioSound 2017-11-17 15:29:49 +01:00
Pavle Goloskokovic
7f0930eec0 stopping source buffer if sound is already playing on play for WebAudioSound 2017-11-17 15:28:27 +01:00
Pavle Goloskokovic
ead02ec186 added super calls to pause and resume methods for WebAudioSound 2017-11-17 15:23:52 +01:00
Pavle Goloskokovic
d1fcc39fd3 setting playback flags to correct values on resume call for BaseSound 2017-11-17 15:18:51 +01:00
Pavle Goloskokovic
1d7d488e68 setting playback flags to correct values on pause call for BaseSound 2017-11-17 15:16:25 +01:00
Pavle Goloskokovic
c5436c7fcc setting playback flags to correct values on play call for BaseSound 2017-11-17 15:14:57 +01:00
Pavle Goloskokovic
a9692ce2dd stopping source and resetting fields on stop call for WebAudioSound 2017-11-17 15:05:17 +01:00
Pavle Goloskokovic
38a8ce378d resetting flags on stop call for BaseSound 2017-11-17 15:03:59 +01:00
Pavle Goloskokovic
0d1fb8a15e added startTime field to WebAudioSound class 2017-11-17 14:57:57 +01:00
Pavle Goloskokovic
7a4939d435 added isPaused field to BaseSound class 2017-11-17 14:51:23 +01:00
Pavle Goloskokovic
0eca17520c updated references in sound folder index.js 2017-11-17 14:18:22 +01:00
Pavle Goloskokovic
3828540ba4 moved web audio implementations into separate folder 2017-11-17 14:17:59 +01:00
Pavle Goloskokovic
f318aa7450 defined detune property on WebAudioSound prototype 2017-11-16 17:25:06 +01:00
Pavle Goloskokovic
e456ee716b defined detune property on WebAudioSoundManager prototype 2017-11-16 17:24:20 +01:00
Pavle Goloskokovic
7d7d8a7c75 added _rate field to actually hold that value to WebAudioSoundManager 2017-11-16 17:23:26 +01:00
Pavle Goloskokovic
52cbffcf2e added detune field to BaseSoundManager 2017-11-16 17:21:49 +01:00
Pavle Goloskokovic
8ede77ddce setting detune value when applying config 2017-11-16 17:21:00 +01:00
Pavle Goloskokovic
3a8c665fd6 added detune field for BaseSound class 2017-11-16 16:41:48 +01:00
Pavle Goloskokovic
a4b7eb0fe5 added duration description 2017-11-16 16:30:31 +01:00
Pavle Goloskokovic
dd17f6083f moved sounds array declaration above other properties 2017-11-16 16:04:07 +01:00
Pavle Goloskokovic
372983a7e4 defined rate property on WebAudioSoundManager prototype
and _rate field to actually hold that value
2017-11-16 15:44:56 +01:00
Pavle Goloskokovic
716a1d4652 updated field descriptions for BaseSoundManager class 2017-11-16 15:23:35 +01:00
Pavle Goloskokovic
e38adfed79 updated description for rate property for BaseSound class
setting rate value when applying config
2017-11-16 15:23:04 +01:00
Pavle Goloskokovic
15367e813d defined rate property on WebAudioSound prototype 2017-11-16 15:21:57 +01:00
Pavle Goloskokovic
e7177c5731 handling the case when only config object is passed to the play method 2017-11-16 14:54:08 +01:00
Pavle Goloskokovic
5796cd4bc8 moved setting current config reference before setting default values in BaseSound class 2017-11-16 14:29:28 +01:00
Pavle Goloskokovic
77880d1352 added missing methods to WebAudioSound class 2017-11-16 14:23:04 +01:00
Pavle Goloskokovic
872d93b788 moved validation ad marker logic from WebAudioSound class play method to BaseSound class play method 2017-11-16 14:19:04 +01:00
Pavle Goloskokovic
25bd3816c7 added applyConfig method to BaseSound class and calling it inside of WebAudioSound class play method 2017-11-16 13:32:35 +01:00
Pavle Goloskokovic
928487f7b1 setting current config value in property setters for WebAudioSound class 2017-11-16 13:09:43 +01:00
Pavle Goloskokovic
165ce9011b updated logic for using correct config when playing sound for WebAudioSound class 2017-11-15 18:12:11 +01:00
Pavle Goloskokovic
05d131236c reversed the order of mute and volume logic to make code more consistent for WebAudioSoundManager class 2017-11-15 17:49:23 +01:00
Pavle Goloskokovic
18aa1653eb reversed the order of mute and volume logic to make code more consistent for WebAudioSound class 2017-11-15 17:37:22 +01:00
Pavle Goloskokovic
0363116383 updated BaseSound fields docs
updated sound config initialization
2017-11-15 17:26:20 +01:00
Pavle Goloskokovic
f11dcf3979 added source field for WebAudioSound class 2017-11-15 16:55:13 +01:00
Pavle Goloskokovic
2d91fe2d14 defined mute property on WebAudioSound prototype 2017-11-15 16:14:04 +01:00
Pavle Goloskokovic
049dd4aada properly connect nodes for WebAudioSound class 2017-11-15 16:03:40 +01:00
Pavle Goloskokovic
9381ab0305 added muteNode field for WebAudioSound class 2017-11-15 16:02:11 +01:00
Pavle Goloskokovic
18ca26e50b defined volume property on WebAudioSound prototype
connected properly WebAudioSound nodes
2017-11-15 15:58:38 +01:00