diff --git a/app/lib/LevelLoader.coffee b/app/lib/LevelLoader.coffee index f2322a247..2c0b98fff 100644 --- a/app/lib/LevelLoader.coffee +++ b/app/lib/LevelLoader.coffee @@ -164,6 +164,7 @@ module.exports = class LevelLoader extends CocoClass @supermodel.loadModel(model, resourceName) onSupermodelLoaded: -> + return if @destroyed console.log 'SuperModel for Level loaded in', new Date().getTime() - @t0, 'ms' @loadLevelSounds() @denormalizeSession() @@ -182,7 +183,7 @@ module.exports = class LevelLoader extends CocoClass spriteSheetResource.spriteSheetKeys = keys else spriteSheetResource.markLoaded() - + clearInterval @buildLoopInterval unless someLeft onBuildComplete: (e) -> diff --git a/app/lib/simulator/Simulator.coffee b/app/lib/simulator/Simulator.coffee index 5c6e4a0ad..b4ef3db3f 100644 --- a/app/lib/simulator/Simulator.coffee +++ b/app/lib/simulator/Simulator.coffee @@ -43,6 +43,7 @@ module.exports = class Simulator extends CocoClass @supermodel ?= new SuperModel() @supermodel.resetProgress() + @stopListening @supermodel, 'loaded-all' @levelLoader = new LevelLoader supermodel: @supermodel, levelID: @task.getLevelName(), sessionID: @task.getFirstSessionID(), headless: true if @supermodel.finished() @@ -95,7 +96,7 @@ module.exports = class Simulator extends CocoClass else @sendSingleGameBackToServer(taskResults) - @cleanupSimulation() + @cleanupAndSimulateAnotherTask() sendSingleGameBackToServer: (results) -> @trigger 'statusUpdate', 'Simulation completed, sending results back to server!' @@ -163,6 +164,7 @@ module.exports = class Simulator extends CocoClass @supermodel ?= new SuperModel() @supermodel.resetProgress() + @stopListening @supermodel, 'loaded-all' @levelLoader = new LevelLoader supermodel: @supermodel, levelID: levelID, sessionID: @task.getFirstSessionID(), headless: true if @supermodel.finished() @simulateGame() @@ -232,6 +234,7 @@ module.exports = class Simulator extends CocoClass processResults: (simulationResults) -> taskResults = @formTaskResultsObject simulationResults + console.error "*** Error: taskResults has no taskID ***\ntaskResults:", taskResults, "\ntask:", @task unless taskResults.taskID @sendResultsBackToServer taskResults sendResultsBackToServer: (results) ->