|
1 | 1 | /*!
|
2 |
| - * howler.js v2.1.2 |
| 2 | + * howler.js v2.1.3 |
3 | 3 | * howlerjs.com
|
4 | 4 | *
|
5 | 5 | * (c) 2013-2019, James Simpson of GoldFire Studios
|
|
796 | 796 | var timeout = (duration * 1000) / Math.abs(sound._rate);
|
797 | 797 | var start = self._sprite[sprite][0] / 1000;
|
798 | 798 | var stop = (self._sprite[sprite][0] + self._sprite[sprite][1]) / 1000;
|
799 |
| - var loop = !!(sound._loop || self._sprite[sprite][2]); |
800 | 799 | sound._sprite = sprite;
|
801 | 800 |
|
802 | 801 | // Mark the sound as ended instantly so that this async playback
|
|
809 | 808 | sound._seek = seek;
|
810 | 809 | sound._start = start;
|
811 | 810 | sound._stop = stop;
|
812 |
| - sound._loop = loop; |
| 811 | + sound._loop = !!(sound._loop || self._sprite[sprite][2]); |
813 | 812 | };
|
814 | 813 |
|
815 | 814 | // End the sound instantly if seek is at the end.
|
|
1251 | 1250 | },
|
1252 | 1251 |
|
1253 | 1252 | /**
|
1254 |
| - * Fade a currently playing sound between two volumes (if no id is passsed, all sounds will fade). |
| 1253 | + * Fade a currently playing sound between two volumes (if no id is passed, all sounds will fade). |
1255 | 1254 | * @param {Number} from The value to fade from (0.0 to 1.0).
|
1256 | 1255 | * @param {Number} to The volume to fade to (0.0 to 1.0).
|
1257 | 1256 | * @param {Number} len Time in milliseconds to fade.
|
|
2202 | 2201 | self._node.gain.setValueAtTime(volume, Howler.ctx.currentTime);
|
2203 | 2202 | self._node.paused = true;
|
2204 | 2203 | self._node.connect(Howler.masterGain);
|
2205 |
| - } else { |
| 2204 | + } else if (!Howler.noAudio) { |
2206 | 2205 | // Get an unlocked Audio object from the pool.
|
2207 | 2206 | self._node = Howler._obtainHtml5Audio();
|
2208 | 2207 |
|
|
2459 | 2458 | // Create and expose the master GainNode when using Web Audio (useful for plugins or advanced usage).
|
2460 | 2459 | if (Howler.usingWebAudio) {
|
2461 | 2460 | Howler.masterGain = (typeof Howler.ctx.createGain === 'undefined') ? Howler.ctx.createGainNode() : Howler.ctx.createGain();
|
2462 |
| - Howler.masterGain.gain.setValueAtTime(Howler._muted ? 0 : 1, Howler.ctx.currentTime); |
| 2461 | + Howler.masterGain.gain.setValueAtTime(Howler._muted ? 0 : Howler._volume, Howler.ctx.currentTime); |
2463 | 2462 | Howler.masterGain.connect(Howler.ctx.destination);
|
2464 | 2463 | }
|
2465 | 2464 |
|
|
2501 | 2500 | /*!
|
2502 | 2501 | * Spatial Plugin - Adds support for stereo and 3D audio where Web Audio is supported.
|
2503 | 2502 | *
|
2504 |
| - * howler.js v2.1.2 |
| 2503 | + * howler.js v2.1.3 |
2505 | 2504 | * howlerjs.com
|
2506 | 2505 | *
|
2507 | 2506 | * (c) 2013-2019, James Simpson of GoldFire Studios
|
|
2617 | 2616 | self.ctx.listener.forwardX.setTargetAtTime(x, Howler.ctx.currentTime, 0.1);
|
2618 | 2617 | self.ctx.listener.forwardY.setTargetAtTime(y, Howler.ctx.currentTime, 0.1);
|
2619 | 2618 | self.ctx.listener.forwardZ.setTargetAtTime(z, Howler.ctx.currentTime, 0.1);
|
2620 |
| - self.ctx.listener.upX.setTargetAtTime(x, Howler.ctx.currentTime, 0.1); |
2621 |
| - self.ctx.listener.upY.setTargetAtTime(y, Howler.ctx.currentTime, 0.1); |
2622 |
| - self.ctx.listener.upZ.setTargetAtTime(z, Howler.ctx.currentTime, 0.1); |
| 2619 | + self.ctx.listener.upX.setTargetAtTime(xUp, Howler.ctx.currentTime, 0.1); |
| 2620 | + self.ctx.listener.upY.setTargetAtTime(yUp, Howler.ctx.currentTime, 0.1); |
| 2621 | + self.ctx.listener.upZ.setTargetAtTime(zUp, Howler.ctx.currentTime, 0.1); |
2623 | 2622 | } else {
|
2624 | 2623 | self.ctx.listener.setOrientation(x, y, z, xUp, yUp, zUp);
|
2625 | 2624 | }
|
|
0 commit comments