非同期処理をTimeLineでやっていたが、
オブジェクトが多くなってくるとやっぱりバグりだしたので、
EventEmitterとDeferredを使った発見のメモ
test.js
A = (width, height) ->
dfr = $.Deferred()
aa = new AA()
aa .init()
return dfr.promise()
B = (width, height) ->
dfr = $.Deferred()
bb = new BB()
bb .init()
return dfr.promise()
C = (width, height) ->
dfr = $.Deferred()
cc = new CC()
cc .init()
return dfr.promise()
promises = [
A(@w, @h)
B(@w, @h)
C(@w, @h)
]
$.when.apply(@, promises).done (args...) =>
a = args[0]
b = args[1]
c = args[2]
@DOC_ObjectPool_Body.addChild a.movieclip
@DOC_ObjectPool_Body.addChild b.movieclip
@DOC_ObjectPool_Body.addChild c.actionclip
Stage.addChild @DOC_ObjectPool_Body
dfr.resolve a, b, c