@@ -271,15 +271,6 @@ cc.Audio = cc.Class.extend({
271
271
} ;
272
272
} ,
273
273
274
- _recklessPlay : function ( offset ) {
275
- if ( ! this . _buffer ) return ;
276
- var audio = this . _context [ "createBufferSource" ] ( ) ;
277
- audio . buffer = this . _buffer ;
278
- audio [ "connect" ] ( this . _volume ) ;
279
- audio . loop = this . loop ;
280
- audio . start ( 0 , offset || 0 ) ;
281
- } ,
282
-
283
274
_playOfAudio : function ( ) {
284
275
var audio = this . _element ;
285
276
if ( audio ) {
@@ -673,7 +664,7 @@ cc.Audio = cc.Class.extend({
673
664
} ,
674
665
675
666
_audioPool : { } ,
676
- _maxAudioInstance : SWA ? 20 : 5 ,
667
+ _maxAudioInstance : 5 ,
677
668
_effectVolume : 1 ,
678
669
/**
679
670
* Play sound effect.
@@ -689,14 +680,7 @@ cc.Audio = cc.Class.extend({
689
680
if ( ! SWB ) {
690
681
//Must be forced to shut down
691
682
//Because playing multichannel audio will be stuck in chrome 28 (android)
692
- return ;
693
- } else if ( SWA ) {
694
- var audio = loader . cache [ url ] ;
695
- if ( ! audio ) {
696
- cc . loader . load ( url ) ;
697
- audio = loader . cache [ url ] ;
698
- }
699
- return audio . _recklessPlay ( ) ;
683
+ return null ;
700
684
}
701
685
702
686
var effectList = this . _audioPool [ url ] ;
@@ -713,9 +697,10 @@ cc.Audio = cc.Class.extend({
713
697
}
714
698
715
699
if ( effectList [ i ] ) {
716
- effectList [ i ] . setVolume ( this . _effectVolume ) ;
717
- effectList [ i ] . play ( 0 , loop ) ;
718
- } else if ( i > this . _maxAudioInstance ) {
700
+ audio = effectList [ i ] ;
701
+ audio . setVolume ( this . _effectVolume ) ;
702
+ audio . play ( 0 , loop ) ;
703
+ } else if ( SWA && i > this . _maxAudioInstance ) {
719
704
cc . log ( "Error: %s greater than %d" , url , this . _maxAudioInstance ) ;
720
705
} else {
721
706
var audio = loader . cache [ url ] ;
@@ -728,7 +713,6 @@ cc.Audio = cc.Class.extend({
728
713
audio . play ( ) ;
729
714
effectList . push ( audio ) ;
730
715
}
731
- console . log ( effectList . length )
732
716
733
717
return audio ;
734
718
} ,
@@ -763,7 +747,9 @@ cc.Audio = cc.Class.extend({
763
747
* cc.audioEngine.pauseEffect(audioID);
764
748
*/
765
749
pauseEffect : function ( audio ) {
766
- audio . pause ( ) ;
750
+ if ( audio ) {
751
+ audio . pause ( ) ;
752
+ }
767
753
} ,
768
754
769
755
/**
@@ -792,7 +778,8 @@ cc.Audio = cc.Class.extend({
792
778
* cc.audioEngine.resumeEffect(audioID);
793
779
*/
794
780
resumeEffect : function ( audio ) {
795
- audio . resume ( ) ;
781
+ if ( audio )
782
+ audio . resume ( ) ;
796
783
} ,
797
784
798
785
/**
@@ -819,7 +806,8 @@ cc.Audio = cc.Class.extend({
819
806
* cc.audioEngine.stopEffect(audioID);
820
807
*/
821
808
stopEffect : function ( audio ) {
822
- audio . stop ( ) ;
809
+ if ( audio )
810
+ audio . stop ( ) ;
823
811
} ,
824
812
825
813
/**
0 commit comments