Commit graph

407 commits

Author SHA1 Message Date
Pavle Goloskokovic
fdcc4898cc Initializing pauseOnBlur property to true 2018-01-20 20:01:26 +01:00
Pavle Goloskokovic
27b2936ce6 Initializing rate property to 0 2018-01-20 20:01:09 +01:00
Pavle Goloskokovic
526fe77106 Initializing rate property to 1 2018-01-20 20:00:55 +01:00
Pavle Goloskokovic
ee8ce19ef8 Initializing volume property to 1 2018-01-20 20:00:36 +01:00
Pavle Goloskokovic
1c6aa693e9 Initializing mute property to false 2018-01-20 20:00:21 +01:00
Pavle Goloskokovic
c5062a0c90 Initializing sounds property an empty array 2018-01-20 19:59:54 +01:00
Pavle Goloskokovic
e15a5a9c69 Initializing game property with provided attribute reference 2018-01-20 19:59:19 +01:00
Pavle Goloskokovic
4316c22785 Added NoAudioSoundManager class that extends EventEmitter 2018-01-20 19:57:00 +01:00
Pavle Goloskokovic
db5002fa87 Updated BaseSoundManager playAudioSprite method to return value from sound play method call 2018-01-20 19:53:09 +01:00
Pavle Goloskokovic
7a259da22c Updated BaseSoundManager play method to return value from sound play method call 2018-01-20 19:51:54 +01:00
Pavle Goloskokovic
ac7be301f1 Reverting previous commit since it did not fix the issue 2018-01-19 17:12:49 +01:00
Pavle Goloskokovic
999b7d96df skipping looping and ending logic if current time is 0 since some HTML5 Audio implementations set currentTime value to 0 when changing playback rate or performing any other operation on an audio tag object 2018-01-19 16:24:26 +01:00
Pavle Goloskokovic
f7b0dcf56a Inverted condition to prevent nesting 2018-01-19 12:19:02 +01:00
Pavle Goloskokovic
ff8c039cf7 Inverted condition to prevent nesting 2018-01-19 12:17:34 +01:00
Pavle Goloskokovic
8968044d8f Removed ready event 2018-01-18 14:15:15 +01:00
Pavle Goloskokovic
ca614166b1 Using playCatchPromise for delayed sound playback 2018-01-18 14:14:14 +01:00
Pavle Goloskokovic
3a7d06b48a Using playCatchPromise when starting sound playback 2018-01-18 14:13:57 +01:00
Pavle Goloskokovic
ef98de7258 Added playCatchPromise method to handle possible exceptions thrown form audio tag play method 2018-01-18 14:13:29 +01:00
Pavle Goloskokovic
c1cb3c3ab2 Removing touchmove event listener on successful unlock 2018-01-18 14:12:32 +01:00
Pavle Goloskokovic
336f5b9028 Skipping unlocking if touchmove event occurred before touchend event 2018-01-18 14:11:49 +01:00
Pavle Goloskokovic
b036eecd9f Added detectMove method as touchmove event listener 2018-01-18 14:10:51 +01:00
Pavle Goloskokovic
01c246ac0b Added variable and method for keeping track of touch move events 2018-01-18 14:10:03 +01:00
Pavle Goloskokovic
718dce88b8 Setting correct totalDuration property value for all sounds when audio gets unlocked 2018-01-18 14:08:49 +01:00
Pavle Goloskokovic
9400c7ea93 Setting correct duration property value for all sounds when audio gets unlocked 2018-01-18 14:08:33 +01:00
Pavle Goloskokovic
c296ef2eb3 Emitting ready event when sound manager gets unlocked 2018-01-18 14:07:35 +01:00
Pavle Goloskokovic
58d6ab9a56 Emitting ready event if sound manager is not locked 2018-01-18 14:06:29 +01:00
Pavle Goloskokovic
6be1406b8b Renamed locked action name property to prop 2018-01-17 19:16:21 +01:00
Pavle Goloskokovic
252b577ab4 Using manager.isLocked instead of removed checkTouchLocked method for loop property 2018-01-17 19:15:09 +01:00
Pavle Goloskokovic
25f22533fd Using manager.isLocked instead of removed checkTouchLocked method for seek property 2018-01-17 19:14:55 +01:00
Pavle Goloskokovic
216bde9577 Using manager.isLocked instead of removed checkTouchLocked method for detune property 2018-01-17 19:14:43 +01:00
Pavle Goloskokovic
99c9b786c8 Using manager.isLocked instead of removed checkTouchLocked method for rate property 2018-01-17 19:14:33 +01:00
Pavle Goloskokovic
94d7fb7d4f Using manager.isLocked instead of removed checkTouchLocked method for volume property 2018-01-17 19:14:18 +01:00
Pavle Goloskokovic
941b4f5ac8 Using manager.isLocked instead of removed checkTouchLocked method for mute property 2018-01-17 19:14:06 +01:00
Pavle Goloskokovic
4b6287c4cd Using manager.isLocked instead of removed checkTouchLocked method for stop method 2018-01-17 19:13:47 +01:00
Pavle Goloskokovic
5c0c89022e Using manager.isLocked instead of removed checkTouchLocked method for resume method 2018-01-17 19:13:36 +01:00
Pavle Goloskokovic
fb775d4063 Using manager.isLocked instead of removed checkTouchLocked method for pause method 2018-01-17 19:13:21 +01:00
Pavle Goloskokovic
ce6f3400e2 Using manager.isLocked instead of removed checkTouchLocked method for play method 2018-01-17 19:13:09 +01:00
Pavle Goloskokovic
cee22b158c Removed checkTouchLocked from HTML5AudioSound class 2018-01-17 19:11:50 +01:00
Pavle Goloskokovic
da56f97580 Removed touchLockedActionQueue from HTML5AudioSound class 2018-01-17 19:11:28 +01:00
Pavle Goloskokovic
913f388535 Added isLocked method to handle locked actions 2018-01-17 19:10:24 +01:00
Pavle Goloskokovic
b25af58495 Resetting lockedActionsQueue after performing all locked actions 2018-01-17 19:09:36 +01:00
Pavle Goloskokovic
88d26607ec Updated and simplified logic for performing locked actions 2018-01-17 19:07:52 +01:00
Pavle Goloskokovic
aacd7a972d Setting lockedActionsQueue value based on locked property value 2018-01-17 19:03:16 +01:00
Pavle Goloskokovic
19ec0fb735 Added lockedActionsQueue property to HTML5AudioSoundManager class for internal use 2018-01-17 19:02:10 +01:00
Pavle Goloskokovic
bcb11d5c4e Moved queued sound actions logic from update method to unlocked event handler 2018-01-17 18:24:03 +01:00
Pavle Goloskokovic
fb52e3d490 Setting unlocked property to true when audio tags are ready 2018-01-17 18:19:51 +01:00
Pavle Goloskokovic
5f035c80e2 Removed condition since it is already performed in base class constructor 2018-01-17 18:19:26 +01:00
Pavle Goloskokovic
d388c827e4 Added a TODO for setting correct duration value when available 2018-01-17 18:18:22 +01:00
Pavle Goloskokovic
fdbda3cffa Setting locked property to value set in subclass if available 2018-01-17 18:17:31 +01:00
Pavle Goloskokovic
0f6f0ab45e Setting locked property for HTML5AudioSoundManager class 2018-01-17 18:17:01 +01:00
Pavle Goloskokovic
ff4e9616f3 Removed touchUnlocked property form HTML5AudioSoundManager class 2018-01-17 18:16:14 +01:00
Pavle Goloskokovic
6b1b7a1342 Removed touchLocked property form HTML5AudioSoundManager class 2018-01-17 18:15:50 +01:00
Pavle Goloskokovic
c6c3f1da79 Setting unlocked property to true when audio context resumes 2018-01-17 18:14:28 +01:00
Pavle Goloskokovic
bf0c868bf3 Removed condition since it is already performed in base class constructor 2018-01-17 18:13:52 +01:00
Pavle Goloskokovic
a90760f8df Setting locked property for WebAudioSoundManager 2018-01-17 18:13:04 +01:00
Pavle Goloskokovic
8ec82c3a4d Setting locked property to false after unlocking 2018-01-17 18:12:03 +01:00
Pavle Goloskokovic
28b098348b Handling unlocking in update method 2018-01-17 18:11:27 +01:00
Pavle Goloskokovic
fbb1388f2d Added unlocked property to BaseSoundManager class for internal use 2018-01-17 18:10:40 +01:00
Pavle Goloskokovic
9ed999fada Calling unlocked method only if locked property is set to true 2018-01-17 18:09:33 +01:00
Pavle Goloskokovic
31cd229bf2 Added locked property to BaseSoundManager class 2018-01-17 18:09:00 +01:00
Pavle Goloskokovic
94cefc9621 Resetting sound's touchLockedActionQueue 2018-01-17 17:35:54 +01:00
Pavle Goloskokovic
04b9996ac7 Sorting actions to be performed in chronological order 2018-01-17 17:35:33 +01:00
Pavle Goloskokovic
d8e36615e7 Gathering all actions and performing them sequentially 2018-01-17 17:35:08 +01:00
Pavle Goloskokovic
dc3938e8ff Added update method to handle unlocking 2018-01-17 17:32:41 +01:00
Pavle Goloskokovic
5916d9f423 Setting last audio tag event listener to set touchUnlocked when it is ready for playback 2018-01-17 17:31:56 +01:00
Pavle Goloskokovic
644a28cb3c Pushing all tags in an array before loading them 2018-01-17 17:31:01 +01:00
Pavle Goloskokovic
38e59f6f4b Using touchLocked value as condition 2018-01-17 17:29:18 +01:00
Pavle Goloskokovic
f52cfee58a Added touchUnlocked property to HTML5AudioSoundManager class 2018-01-17 17:27:59 +01:00
Pavle Goloskokovic
b9b5489ab3 Added touchLocked property to HTML5AudioSoundManager class 2018-01-17 17:27:28 +01:00
Pavle Goloskokovic
84a20395e6 Using checkTouchLocked with loop property 2018-01-17 17:25:43 +01:00
Pavle Goloskokovic
33bc3d8d5c Using checkTouchLocked with seek property 2018-01-17 17:23:20 +01:00
Pavle Goloskokovic
874b3d5bc1 Defined detune property getter 2018-01-17 17:23:04 +01:00
Pavle Goloskokovic
3ff214da59 Defined rate property getter 2018-01-17 17:22:54 +01:00
Pavle Goloskokovic
eb5be4c75d Defined detune property setter to be able to use checkTouchLocked with it 2018-01-17 17:22:30 +01:00
Pavle Goloskokovic
865f8d06ad Defined rate property setter to be able to use checkTouchLocked with it 2018-01-17 17:22:03 +01:00
Pavle Goloskokovic
c2f7795a98 Using checkTouchLocked with volume property 2018-01-17 17:21:07 +01:00
Pavle Goloskokovic
a9a3c3c2a2 Using checkTouchLocked with mute property 2018-01-17 17:20:44 +01:00
Pavle Goloskokovic
22154ceace Using checkTouchLocked with stop method 2018-01-17 17:19:39 +01:00
Pavle Goloskokovic
796f3657ac Using checkTouchLocked with resume method 2018-01-17 17:19:25 +01:00
Pavle Goloskokovic
893882fe95 Using checkTouchLocked with pause method 2018-01-17 17:19:15 +01:00
Pavle Goloskokovic
300ac5b859 Using checkTouchLocked with play method 2018-01-17 17:19:04 +01:00
Pavle Goloskokovic
093f295389 Added touchLockedActionQueue property to HTML5AudioSound class 2018-01-17 17:06:55 +01:00
Pavle Goloskokovic
be7741ed89 Resetting already started sounds before unlocking 2018-01-17 14:13:44 +01:00
Pavle Goloskokovic
0b4a8b8b2d Removed touchstart event listeners since they don't work for unlocking audio 2018-01-17 14:13:13 +01:00
Pavle Goloskokovic
f510f71213 Implemented unlock method for HTML5AudioSoundManager class 2018-01-17 14:12:04 +01:00
Pavle Goloskokovic
4ca73ae362 Removing unlock call since it is now done in BaseSoundManager class 2018-01-17 14:10:54 +01:00
Pavle Goloskokovic
b33af6d2aa Calling unlock method in BaseSoundManager class constructor 2018-01-17 14:03:34 +01:00
Pavle Goloskokovic
377ab5a4e9 Defined unlock method on BaseSoundManager class as both implementations use it 2018-01-17 14:03:04 +01:00
Pavle Goloskokovic
e8e4a5633d Removed completed TODO 2018-01-14 17:39:29 +01:00
Pavle Goloskokovic
9a4811df32 Emitting loop event when sound loop setting value changes 2018-01-14 17:39:10 +01:00
Pavle Goloskokovic
8b676cf743 Renamed loop event to looped for emitting event when sound has looped 2018-01-14 17:38:59 +01:00
Pavle Goloskokovic
846aefd7c1 Emitting loop event when sound loop setting value changes 2018-01-14 17:38:33 +01:00
Pavle Goloskokovic
8f692b8fb9 Renamed loop event to looped for emitting event when sound has looped 2018-01-14 17:37:52 +01:00
Pavle Goloskokovic
1fe58bc1ef Refactored update method looping and ending logic a bit 2018-01-14 17:32:19 +01:00
Pavle Goloskokovic
2a70eb9c09 Removed completed TODO 2018-01-14 17:23:24 +01:00
Pavle Goloskokovic
ab02e843f3 Checking for loop between two update calls only if loop setting is set to true 2018-01-14 17:23:09 +01:00
Pavle Goloskokovic
4b9c94ebbe Added a TODO to change loop event to looped and emit loop event when loop value changes 2018-01-14 17:22:32 +01:00
Pavle Goloskokovic
919d2d658a Using EventEmitter emit method to dispatch seek update event 2018-01-14 17:21:24 +01:00
Pavle Goloskokovic
dd2bd9695d Using EventEmitter emit method to dispatch volume update event 2018-01-14 17:20:31 +01:00
Pavle Goloskokovic
913c93eca1 Using EventEmitter emit method to dispatch mute update event 2018-01-14 17:20:20 +01:00