Pavle Goloskokovic
1dc28e1119
Added forEachActiveSound method that calls BaseSoundManager forEachActiveSound method
2018-01-20 20:32:30 +01:00
Pavle Goloskokovic
ce5de6e06a
Added destroy method that calls BaseSoundManager destroy method
2018-01-20 20:32:15 +01:00
Pavle Goloskokovic
8ee02f8f29
Added update method that does nothing
2018-01-20 20:31:53 +01:00
Pavle Goloskokovic
e9c1ba289e
Added stopAll method that does nothing
2018-01-20 20:25:27 +01:00
Pavle Goloskokovic
05d37e00c7
Added resumeAll method that does nothing
2018-01-20 20:25:03 +01:00
Pavle Goloskokovic
534a7a34cd
Added pauseAll method that does nothing
2018-01-20 20:24:46 +01:00
Pavle Goloskokovic
50fefeef2e
Added removeByKey method that calls BaseSoundManager removeByKey method
2018-01-20 20:24:10 +01:00
Pavle Goloskokovic
2b0765f46a
Added remove method that calls BaseSoundManager remove method
2018-01-20 20:23:33 +01:00
Pavle Goloskokovic
5ba2c0338a
Added playAudioSprite method which only returns false
2018-01-20 20:13:14 +01:00
Pavle Goloskokovic
4a4a849c6f
Added play method which only returns false
2018-01-20 20:12:36 +01:00
Pavle Goloskokovic
cd00b5db79
Added addAudioSprite method which instantiates and returns NoAudioSound as audio sprite sound object with empty spritemap
2018-01-20 20:11:48 +01:00
Pavle Goloskokovic
7511c038b7
Added add method which instantiates and returns NoAudioSound object
2018-01-20 20:10:16 +01:00
Pavle Goloskokovic
f1aea49a9c
Initializing unlocked property to false
2018-01-20 20:01:55 +01:00
Pavle Goloskokovic
a1fa271d7c
Initializing locked property to false
2018-01-20 20:01:44 +01:00
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
Pavle Goloskokovic
1912dd98df
Using EventEmitter emit method to dispatch loop event
2018-01-14 17:19:57 +01:00
Pavle Goloskokovic
8ba0c3d39e
Using EventEmitter emit method to dispatch ended event
2018-01-14 17:19:37 +01:00
Pavle Goloskokovic
14e7cb4b75
Using EventEmitter emit method to dispatch stop event
2018-01-14 17:18:53 +01:00
Pavle Goloskokovic
ac04061478
Using EventEmitter emit method to dispatch resume event
2018-01-14 17:18:39 +01:00
Pavle Goloskokovic
be03100765
Using EventEmitter emit method to dispatch pause event
2018-01-14 17:18:26 +01:00
Pavle Goloskokovic
d5ffad06aa
Using EventEmitter emit method to dispatch play event
2018-01-14 17:18:02 +01:00
Pavle Goloskokovic
cbb055f15c
Using EventEmitter emit method to dispatch volume update event
2018-01-14 16:54:11 +01:00
Pavle Goloskokovic
209b0caed3
Using EventEmitter emit method to dispatch mute update event
2018-01-14 16:53:48 +01:00
Pavle Goloskokovic
45eed34095
Passing reference to sound object when emitting volume event
2018-01-14 16:48:55 +01:00
Pavle Goloskokovic
452f9a13ab
Passing reference to sound object when emitting mute event
2018-01-14 16:48:25 +01:00
Pavle Goloskokovic
8cfe7bce4e
Added a todo to document events
2018-01-14 16:38:01 +01:00
Pavle Goloskokovic
39c35f15f9
Passing reference to sound manager when emitting detune event
2018-01-14 16:37:37 +01:00
Pavle Goloskokovic
f2049195c1
Pasing reference to sound manager when emitting rate event
2018-01-14 16:37:12 +01:00
Pavle Goloskokovic
c715a8a031
Pasing reference to sound manager when emitting stopall event
2018-01-14 16:36:56 +01:00
Pavle Goloskokovic
6cb35024de
Pasing reference to sound manager when emitting resumeall event
2018-01-14 16:36:44 +01:00
Pavle Goloskokovic
8c9ba8ce2c
Pasing reference to sound manager when emitting pauseall event
2018-01-14 16:36:29 +01:00
Pavle Goloskokovic
a76a721969
Using EventEmitter emit method to dispatch detune update event
2018-01-14 16:13:09 +01:00
Pavle Goloskokovic
7b2ed7f5a9
Using EventEmitter emit method to dispatch rate update event
2018-01-14 16:12:48 +01:00
Pavle Goloskokovic
4be42c3edc
Merge remote-tracking branch 'origin/master'
...
# Conflicts:
# src/sound/BaseSound.js
# src/sound/webaudio/WebAudioSound.js
2018-01-14 15:50:55 +01:00
Pavle Goloskokovic
8b67797252
Simplified delay calculation logic on focus loose
2018-01-14 15:45:32 +01:00
Pavle Goloskokovic
b0ec0edbbc
Calling sound's onFocus method instead of resume when sounds resume on game focus gain
2018-01-14 15:38:11 +01:00
Pavle Goloskokovic
ff885e2ead
Added onFocus method to be used when sound resumes when game gains focus
2018-01-14 15:37:38 +01:00
Pavle Goloskokovic
381799b040
Calling sound's onBlur method instead of pause when sounds stop on game focus loss
2018-01-14 15:36:39 +01:00
Pavle Goloskokovic
5c5df3f582
Marking sound as paused on blur to avoid update logic being run on it
2018-01-14 15:35:21 +01:00
Pavle Goloskokovic
bf77380814
Added onBlur method to be used when sound pauses on loose of focus
...
Saving sound state and stopping it
2018-01-14 15:34:23 +01:00
Pavle Goloskokovic
a6ec0af472
Using loopEndOffset when checking if sound looped
2018-01-14 15:32:30 +01:00
Pavle Goloskokovic
042f778167
Defining loopEndOffset property for HTML5AudioSoundManager class
2018-01-14 15:31:24 +01:00
Pavle Goloskokovic
60693d6da8
Using audioPlayDelay when checking for delay end for delayed playback
2018-01-14 15:30:27 +01:00
Pavle Goloskokovic
7384d9abcb
Defining audioPlayDelay property for HTML5AudioSoundManager class
2018-01-14 15:29:27 +01:00
Pavle Goloskokovic
2d20759df9
Fixed ms to s conversion for delay value when setting start time for delayed playback
2018-01-14 15:28:16 +01:00
Pavle Goloskokovic
65538e3408
Properly setting currentTime variable value when detecting missed looping in update method
2018-01-14 15:24:55 +01:00
Pavle Goloskokovic
5b0cf55bfc
Properly setting currentTime variable value when detecting looping in update method
2018-01-14 15:24:06 +01:00
Pavle Goloskokovic
f832c35de4
Properly setting previousTime value when setting seek value
2018-01-14 15:22:49 +01:00
Pavle Goloskokovic
de08ac36d5
Properly setting previousTime value when handling delayed playback in update method
2018-01-14 15:22:18 +01:00
Pavle Goloskokovic
ab6c924ccf
Properly setting previousTime value when picking and playing audio tag
2018-01-14 15:21:06 +01:00
Pavle Goloskokovic
0efa048015
Taking into account marker start time when calculating seek
2018-01-12 18:23:07 +01:00
Richard Davey
f9a1e27334
Removed un-used event files and references.
2018-01-12 17:20:16 +00:00
Pavle Goloskokovic
f941cabe07
Completed a TODO to clean up html5 audio stuff when calling destroy
2018-01-12 18:16:27 +01:00
Pavle Goloskokovic
44acc440f4
When hijacking audio form other sounds, sorting them by progress rather than just seek, so that we favorize longer sounds to continue their playback
2018-01-12 18:15:52 +01:00
Richard Davey
c625b8735b
Updated to using Event Emitter for all key managers and game objects. Events are now dispatched directly using arguments instead of Event objects, all managers updated to emit directly.
2018-01-12 17:09:21 +00:00
Pavle Goloskokovic
9bb138f40d
Dispatching event when setting HTML5AudioSoundManager volume property
2018-01-12 17:26:16 +01:00
Pavle Goloskokovic
30027af69e
Dispatching event when setting HTML5AudioSoundManager mute property
2018-01-12 17:25:59 +01:00
Pavle Goloskokovic
8f3f88c24d
Checking for set audio property instead of isPlaying flag
2018-01-12 17:19:03 +01:00
Pavle Goloskokovic
919665dd96
Fixed scope issue
2018-01-12 17:11:12 +01:00
Pavle Goloskokovic
4038291373
Changed the order of defining startTime and previousTime properties
2018-01-12 16:12:15 +01:00
Pavle Goloskokovic
b2eef5b96e
Added a todo
2018-01-12 16:03:15 +01:00
Pavle Goloskokovic
2a76c6eff5
Updating previousTime property when setting seek value
2018-01-12 16:01:19 +01:00
Pavle Goloskokovic
1cdebc80c3
Updating previousTime when picking and playing audio for sound
2018-01-12 16:00:37 +01:00
Pavle Goloskokovic
1180d82c27
Updating previousTime when starting sound with delayed playback
2018-01-12 15:59:40 +01:00
Pavle Goloskokovic
398b337da9
Resetting previousTime property when stopping sound or hijacking audio from another sound
2018-01-12 15:58:43 +01:00
Pavle Goloskokovic
de9e5a0d1f
Updating currentTime to new audio currentTime value while handling looping before assigning that value to previousTime property
2018-01-12 15:57:55 +01:00
Pavle Goloskokovic
a51a0bd543
Setting previousTime property to currentTime value at the end of update method
...
Using condition when current time is less then previous time to indicate sound looping and dispatch an event
2018-01-12 15:39:58 +01:00
Pavle Goloskokovic
1ec66f644f
Added previousTime property to keep track of audio tag's playback position recorded on previous update method call
2018-01-12 15:32:30 +01:00
Pavle Goloskokovic
9ec4d9a829
Fixing sound position if sound loops and starts from the beginning between two update calls
2018-01-12 15:30:11 +01:00
Pavle Goloskokovic
735cf10a3f
Dispatching SOUND_ENDED event when sound ends, obviously :)
2018-01-12 15:28:06 +01:00
Pavle Goloskokovic
72955bfe30
Handling sound ending in update method
2018-01-12 15:27:25 +01:00
Pavle Goloskokovic
0d0df1900b
Added logic for handling looping in update method
2018-01-12 15:23:39 +01:00
Pavle Goloskokovic
81d794b4c6
Setting audio to correct state when starting it since it might be playing already when hijacked form another sound
2018-01-12 15:18:31 +01:00
Pavle Goloskokovic
e68ff2b18a
Saving current position of the sound and stopping and releasing audio tag when calling pause method
2018-01-11 18:55:42 +01:00
Pavle Goloskokovic
f6de613fd0
Added stopAndReleaseAudioTag method to stop sound playback and mark audio tag as unused and release it for other sounds to use
2018-01-11 18:53:54 +01:00
Pavle Goloskokovic
8578319171
requiring SoundEvent class
2018-01-11 18:51:02 +01:00
Pavle Goloskokovic
40b2bf79b7
Calling pickAndPlayAudioTag from resume method
2018-01-11 18:50:25 +01:00
Pavle Goloskokovic
9e7ccb1503
Added helpful flags comment
2018-01-11 18:49:44 +01:00
Pavle Goloskokovic
a6b4066468
Moved logic for setting up and playing audio tag so it can be reused
2018-01-11 18:45:34 +01:00
Pavle Goloskokovic
f9093a2d7e
Disabling setting seek property on a delayed sound
2018-01-11 18:41:43 +01:00
Pavle Goloskokovic
81e8542af7
Resetting startTime property of a hijacked sound
2018-01-11 18:40:36 +01:00
Pavle Goloskokovic
fb29afedae
Preventing resume calls on delayed sounds
2018-01-11 18:39:45 +01:00
Pavle Goloskokovic
c1b24c4adb
Preventing pause calls on delayed sounds
2018-01-11 18:39:19 +01:00
Pavle Goloskokovic
fb6b989035
Handling delayed playback in update method
2018-01-11 18:31:36 +01:00
Pavle Goloskokovic
3388fd018f
Setting startTime based on delay config when calling play method
2018-01-11 18:30:16 +01:00
Pavle Goloskokovic
d6256c47c5
Defined startTime property
2018-01-11 18:23:28 +01:00
Pavle Goloskokovic
82819ec782
Setting sound position, applying config and starting playback if delay is set to 0 when calling play method
2018-01-11 18:20:18 +01:00
Pavle Goloskokovic
11923621ad
Finding available audio tag when calling play method and resetting and returning false if it was not successful
2018-01-11 18:17:50 +01:00
Pavle Goloskokovic
af8666f611
Added reset method that calls super stop method in order to reset sounds state
...
Calling reset method and setting audio to null after hijacking audio tag from another sound
2018-01-11 18:15:42 +01:00
Pavle Goloskokovic
106e32499f
Sorting sounds to hijack audio from by loop and seek properties values
2018-01-11 18:12:52 +01:00
Pavle Goloskokovic
f377b4fa85
Finding another sound to hijack audio tag from if there are no free audio tags and override setting is set to true
2018-01-11 18:11:10 +01:00
Pavle Goloskokovic
fc19a05f0b
Returning false if override setting of sound manager is set to false
2018-01-11 18:05:12 +01:00
Pavle Goloskokovic
935ef78102
Added method for finding unused audio tag for playing sound
2018-01-11 18:04:17 +01:00
Pavle Goloskokovic
6730b3b314
Defined seek property for HTML5AudioSound class
2018-01-11 18:00:42 +01:00
Pavle Goloskokovic
d6b11e2fdb
Defined seek property's setter for HTML5AudioSound class
2018-01-11 17:59:36 +01:00
Pavle Goloskokovic
afb8075379
Defined seek property's setter for HTML5AudioSound class
2018-01-11 17:58:26 +01:00
Pavle Goloskokovic
110c6891dd
Defined volume property for HTML5AudioSound class
2018-01-11 17:57:04 +01:00
Pavle Goloskokovic
8f9eafd315
Defined mute property for HTML5AudioSound class
2018-01-11 17:55:05 +01:00
Pavle Goloskokovic
495a79d4bf
Implemented setRate method
2018-01-11 17:51:58 +01:00
Pavle Goloskokovic
91f9629ed2
Implemented setVolume method
2018-01-11 17:50:20 +01:00
Pavle Goloskokovic
162a063f03
Implemented setMute method
2018-01-11 17:49:40 +01:00
Pavle Goloskokovic
ede81f2a03
Added destroy method
2018-01-11 17:48:23 +01:00
Pavle Goloskokovic
0223019290
Added blank update method
2018-01-11 17:47:01 +01:00
Pavle Goloskokovic
d51156fe94
Added stop method implementation that calls super method and dispatches stop event
2018-01-11 17:45:02 +01:00
Pavle Goloskokovic
196258b8ac
Added resume method implementation that calls super method and dispatches resume event
2018-01-11 17:43:56 +01:00
Pavle Goloskokovic
5e8d0dcaee
Added pause method implementation that calls super method and dispatches pause event
2018-01-11 17:42:18 +01:00
Pavle Goloskokovic
d3c034e5cc
Added play method implementation that calls super method and dispatches play event
2018-01-11 17:40:59 +01:00
Pavle Goloskokovic
b452859b78
Assigning duration and totalDuration values to audio tag duration
2018-01-11 17:38:47 +01:00
Pavle Goloskokovic
1d925105bd
Audio property docs update
2018-01-11 17:37:28 +01:00
Pavle Goloskokovic
ad858d1475
Throwing an error if no sound with given key was loaded
2018-01-11 17:36:51 +01:00
Pavle Goloskokovic
cf83880fb0
Defined tags property that holds reference to audio tags array
2018-01-11 17:35:25 +01:00
Pavle Goloskokovic
b22116e1f8
Updated override property docs
2018-01-11 17:32:49 +01:00
Pavle Goloskokovic
2372fdd812
Completed a TODO to return HTML5AudioSoundManager instance when necessary
2018-01-11 17:29:57 +01:00
Pavle Goloskokovic
7c715f1ba0
Removed detune property since it is already implemented in BaseSound class
2018-01-11 17:28:52 +01:00
Pavle Goloskokovic
be713af155
Removed rate property since it is already implemented in BaseSound class
2018-01-11 17:28:25 +01:00
Pavle Goloskokovic
98700ffff2
Updating play method to return boolean indicating if play call was done successfully
2018-01-11 17:27:19 +01:00
Pavle Goloskokovic
15562a70e3
Updated override property docs
2018-01-11 17:25:55 +01:00
Pavle Goloskokovic
2903417798
Defining detune property on a BaseSound class since it's the shared behaviour between subclasses
2018-01-11 17:24:53 +01:00
Pavle Goloskokovic
15f2717e9b
Defining rate property on a BaseSound class since it's the shared behaviour between subclasses
2018-01-11 17:24:26 +01:00
Pavle Goloskokovic
c0c6e39ccd
Updating play method to return boolean indicating if play call was done successfully
2018-01-11 17:22:57 +01:00
Pavle Goloskokovic
e75871adec
Added override property to HTML5AudioSoundManager
2018-01-11 16:50:50 +01:00
Pavle Goloskokovic
9fc3aaa0da
Moved HTML5AudioSoundManager.js
2018-01-10 16:50:21 +01:00
Pavle Goloskokovic
081908fd7b
Moved HTML5AudioSound.js
2018-01-10 16:50:11 +01:00
Pavle Goloskokovic
d0d3a6473d
Merge remote-tracking branch 'origin/master'
2018-01-10 16:20:13 +01:00
Richard Davey
d8f1ba03e9
Moved repository location
2018-01-09 21:43:56 +00:00
Richard Davey
0d90f75b5f
Splitting the dev branch up into versions.
2016-11-22 01:36:56 +00:00
photonstorm
7b9c4114b2
Preparing for 2.6.2 release.
2016-08-22 12:31:02 +01:00
Richard Davey
33748ece87
Merge pull request #2697 from hilts-vaughan/fix-sound-loop
...
Sound: Fixes an issue where loopFull would not return the soundinstan…
2016-08-18 15:29:18 +01:00
Vaughan Hilts
067f3cca83
Sound: Fixes an issue where loopFull would not return the soundinstance that it looped from
2016-08-17 22:15:45 -04:00
Richard Davey
e955cf4222
Sound.play would throw the error "Uncaught DOMException: Failed to execute 'disconnect' on 'AudioNode': the given destination is not connected." in Chrome, if you tried to play an audio marker that didn't exist, while a valid marker was already playing.
2016-08-03 04:04:22 +01:00
Richard Davey
6f9bcae23e
Docs fixes #2629
2016-07-17 11:23:41 +01:00
photonstorm
521a6c9dbb
Sound.stop will check to see if gainNode
exists before trying to disconnect from it.
2016-07-08 12:27:12 +01:00
photonstorm
2310e5dc6f
Sound.volume was accidentally repeated twice in the source (thanks @LoneStranger #2569 )
2016-06-20 12:18:39 +01:00
Richard Davey
1b67850c82
Merge pull request #2529 from TheJasonReynolds/local_dev
...
Set isPlaying to true if no marker (.play is not called again)
2016-06-05 15:51:43 +01:00
John Rees
e75827d6ab
Signal description typo fix
2016-06-04 19:41:54 +01:00
Jason Reynolds
db0a41bedf
Set isPlaying to true if no marker (.play is not called again)
2016-06-03 17:08:07 -05:00
photonstorm
63a1336bd5
Sound.addMarker now has a default value for the duration
argument (1 second) to avoid the DOM Exception 11 error if you accidentally miss it out (thanks @mari8i #2508 )
2016-06-02 15:29:51 +01:00
photonstorm
d161a7f6bc
Sounds played using the Audio tag, set to loop, would get caught in an endless pause-play loop cycle (thanks @rroylance #2473 )
2016-05-17 16:43:11 +01:00
photonstorm
54683b7fb2
Sounds played using the Audio tag, that were paused and then resumed again (either directly in code, or via a game pause event) would not resume from the point at which they paused (thanks @rroylance #2473 )
2016-05-16 15:16:19 +01:00
photonstorm
58af40ca92
Added a bit more info to the SoundManager docs re: #2373
2016-04-07 01:07:19 +01:00
photonstorm
896b32a28c
SoundManager.muteOnPause is a new boolean that allows you to control if the Sound system gets muted automatically when a Phaser game pauses, such as when it loses focus. You may need to set this to false
if you wish to control the audio system from outside of your Phaser game, i.e. from DOM buttons or similar ( #2382 )
2016-04-06 02:09:22 +01:00
photonstorm
61bc4a8dca
Sound.play when using an AudioTag would ignore the muted state of the SoundManager and play regardless. It now checks the SoundManager.mute state on play, and sets the volume accorindingly (thanks @brianbunch #2139 )
2016-04-06 01:41:54 +01:00
photonstorm
988290631f
When setting a global volume for the SoundManager it would previously incorrectly calculate the volumes of AudioTag based Sound objects that were not played at volume 1. The new approach uses Sound.updateGlobalVolume which adjusts the Sound volume to be a percentage of the global volume. So if the global volume is 0.5 and the Sound volume is 0.5, the Sound will play with an actual volume of 0.25 (thanks @VitaZheltyakov #2325 )
2016-04-06 01:19:32 +01:00
Richard Davey
71056ccb69
Merge pull request #2371 from stoneman1/dev
...
Fixed video for future
2016-04-06 01:08:22 +01:00
photonstorm
f40cfbe2ae
2015 - 2016.
2016-04-04 22:16:16 +01:00
Stoneman1
4a29d5102d
Fixes issue #2325
2016-03-02 11:57:41 +02:00
Silvan Strübi
1b1c4ef0f5
AudioBufferSourceNode - same issue as on play:
...
I was able to reproduce this rare occurrence. It gets triggered by me in some cases when leaving focus and then resuming the sound. Same as we have had it only play, see => https://github.com/photonstorm/phaser/issues/2351
Cheers
2016-03-02 10:06:01 +09:00
photonstorm
08ce659447
Sound.position can no longer become negative, meaning calls to AudioContextNode.start with negative position offsets will no longer throw errors (thanks @Weedshaker #2351 )
2016-02-26 13:36:19 +00:00
photonstorm
15d952171c
SoundManager.destroy doesn't close the context if it's being stored in PhaserGlobal (thanks @brianbunch #2356 )
2016-02-26 13:31:45 +00:00
photonstorm
cc3a07bada
SoundManager.close now validates that context.close is a valid function before calling it (thanks @brianbunch #2355 )
2016-02-26 13:29:35 +00:00
Stoneman1
62f0a52544
Fixed issue with IE crashing on this.context.close() in SoundManager.js (There was no check if context exists)
2016-02-24 13:08:37 +02:00