@@ -88,7 +88,8 @@ cc.Loader = cc.Class.extend(/** @lends cc.Loader# */{
8888 return ;
8989 }
9090 var res = resources . concat ( [ ] ) ;
91- this . _resQueue . push ( new cc . ResData ( res , selector , target ) ) ;
91+ var data = new cc . ResData ( res , selector , target ) ;
92+ this . _resQueue . push ( data ) ;
9293
9394 if ( ! this . _running ) {
9495 this . _running = true ;
@@ -101,39 +102,14 @@ cc.Loader = cc.Class.extend(/** @lends cc.Loader# */{
101102 this . _isAsync = isAsync ;
102103 } ,
103104
104- registerWithType :function ( arrType , loader ) {
105- if ( arrType instanceof Array ) {
106- for ( var i = 0 ; i < arrType . length ; i ++ ) {
107- var type = arrType [ i ] ;
108- this . _regisiterLoader [ type ] = loader ;
109- }
110- }
111- else if ( typeof arrType == 'string' ) {
112- this . _regisiterLoader [ arrType ] = loader ;
113- }
114- else {
115- cc . log ( "cocos2d:unkown loader type:" + arrType ) ;
116- }
117- } ,
118-
119- /**
120- * Callback when a resource file load failed.
121- * @example
122- * //example
123- * cc.Loader.getInstance().onResLoaded();
124- */
125- onResLoadingErr : function ( name ) {
126- this . _curData . loadedNumber ++ ;
127- cc . log ( "cocos2d:Failed loading resource: " + name ) ;
128- } ,
129-
130105 /**
131106 * Callback when a resource file loaded.
132- * @example
133- * //example
134- * cc.Loader.getInstance().onResLoaded();
135107 */
136- onResLoaded : function ( ) {
108+ onResLoaded : function ( err ) {
109+ if ( err != null ) {
110+ cc . log ( "cocos2d:Failed loading resource: " + err ) ;
111+ }
112+
137113 this . _curData . loadedNumber ++ ;
138114 } ,
139115
@@ -216,9 +192,7 @@ cc.Loader = cc.Class.extend(/** @lends cc.Loader# */{
216192 }
217193
218194 var percent = this . getPercentage ( ) ;
219- console . log ( percent )
220195 if ( percent >= 100 ) {
221- console . log ( "complete" )
222196 this . _complete ( ) ;
223197 if ( this . _resQueue . length > 0 ) {
224198 this . _running = true ;
@@ -239,28 +213,27 @@ cc.Loader = cc.Class.extend(/** @lends cc.Loader# */{
239213
240214 var resInfo = this . _curData . resList . shift ( ) ,
241215 path = this . _getResPath ( resInfo ) ,
242- type = this . _getResType ( resInfo , path ) ,
243- cb = this . onResLoaded . bind ( this ) ;
216+ type = this . _getResType ( resInfo , path ) ;
244217
245218 switch ( type ) {
246219 case "IMAGE" :
247- sharedTextureCache . addImageAsync ( path , cb ) ;
220+ sharedTextureCache . addImageAsync ( path , this . onResLoaded , this ) ;
248221 break ;
249222 case "SOUND" :
250223 if ( ! sharedEngine ) throw "Can not find AudioEngine! Install it, please." ;
251- sharedEngine . preloadSound ( path , cb ) ;
224+ sharedEngine . preloadSound ( path , this . onResLoaded , this ) ;
252225 break ;
253226 case "XML" :
254- sharedParser . preloadPlist ( path , cb ) ;
227+ sharedParser . preloadPlist ( path , this . onResLoaded , this ) ;
255228 break ;
256229 case "BINARY" :
257- sharedFileUtils . preloadBinaryFileData ( path , cb ) ;
230+ sharedFileUtils . preloadBinaryFileData ( path , this . onResLoaded , this ) ;
258231 break ;
259232 case "TEXT" :
260- sharedFileUtils . preloadTextFileData ( path , cb ) ;
233+ sharedFileUtils . preloadTextFileData ( path , this . onResLoaded , this ) ;
261234 break ;
262235 case "FONT" :
263- this . _registerFaceFont ( resInfo , cb ) ;
236+ this . _registerFaceFont ( resInfo , this . onResLoaded , this ) ;
264237 break ;
265238 default :
266239 throw "cocos2d:unknown filename extension: " + type ;
@@ -293,15 +266,10 @@ cc.Loader = cc.Class.extend(/** @lends cc.Loader# */{
293266 } ,
294267
295268 _complete : function ( ) {
296- cc . doCallback ( this . _selector , this . _target ) ;
297-
298- this . _curData = null ;
299- if ( this . _resQueue . length > 0 ) {
300- this . _schedulePreload ( ) ;
301- }
269+ cc . doCallback ( this . _curData . selector , this . _curData . target ) ;
302270 } ,
303271
304- _registerFaceFont : function ( fontRes ) {
272+ _registerFaceFont : function ( fontRes , seletor , target ) {
305273 var srcArr = fontRes . src ;
306274 var fileUtils = cc . FileUtils . getInstance ( ) ;
307275 if ( srcArr && srcArr . length > 0 ) {
@@ -326,7 +294,7 @@ cc.Loader = cc.Class.extend(/** @lends cc.Loader# */{
326294 preloadDiv . style . top = "-100px" ;
327295 document . body . appendChild ( preloadDiv ) ;
328296 }
329- cc . Loader . getInstance ( ) . onResLoaded ( ) ;
297+ cc . doCallback ( seletor , target ) ;
330298 } ,
331299
332300 _unregisterFaceFont : function ( fontRes ) {
@@ -398,12 +366,6 @@ cc.Loader.purgeCachedData = function (resources) {
398366 }
399367} ;
400368
401- cc . Loader . register = function ( typeArr , loader ) {
402- if ( this . _instance ) {
403- this . _instance . registerWithType ( typeArr , loader ) ;
404- }
405- } ;
406-
407369/**
408370 * Returns a shared instance of the loader
409371 * @function
0 commit comments