diff --git a/app/lib/LevelLoader.coffee b/app/lib/LevelLoader.coffee index 73c3f18ed..9609c1f8f 100644 --- a/app/lib/LevelLoader.coffee +++ b/app/lib/LevelLoader.coffee @@ -73,32 +73,33 @@ module.exports = class LevelLoader extends CocoClass else @level = @supermodel.loadModel(@level, 'level').model @listenToOnce @level, 'sync', @onLevelLoaded - + onLevelLoaded: -> @populateLevel() - + populateLevel: -> thangIDs = [] componentVersions = [] systemVersions = [] articleVersions = [] - + for thang in @level.get('thangs') or [] thangIDs.push thang.thangType for comp in thang.components or [] componentVersions.push _.pick(comp, ['original', 'majorVersion']) - + for system in @level.get('systems') or [] systemVersions.push _.pick(system, ['original', 'majorVersion']) if indieSprites = system?.config?.indieSprites for indieSprite in indieSprites thangIDs.push indieSprite.thangType - - for article in @level.get('documentation')?.generalArticles or [] - articleVersions.push _.pick(article, ['original', 'majorVersion']) + + unless @headless + for article in @level.get('documentation')?.generalArticles or [] + articleVersions.push _.pick(article, ['original', 'majorVersion']) objUniq = (array) -> _.uniq array, false, (arg) -> JSON.stringify(arg) - + for thangID in _.uniq thangIDs url = "/db/thang.type/#{thangID}/version" url += "?project=true" if @headless and not @editorMode @@ -117,14 +118,15 @@ module.exports = class LevelLoader extends CocoClass url = "/db/level/#{obj.original}/version/#{obj.majorVersion}" @maybeLoadURL url, Level, 'level' - wizard = ThangType.loadUniversalWizard() - @supermodel.loadModel wizard, 'thang' + unless @headless + wizard = ThangType.loadUniversalWizard() + @supermodel.loadModel wizard, 'thang' maybeLoadURL: (url, Model, resourceName) -> return if @supermodel.getModel(url) model = new Model().setURL url @supermodel.loadModel(model, resourceName) - + onSupermodelLoaded: -> @loadLevelSounds() @denormalizeSession() @@ -216,4 +218,4 @@ module.exports = class LevelLoader extends CocoClass # everything else sound wise is loaded as needed as worlds are generated - progress: -> @supermodel.progress \ No newline at end of file + progress: -> @supermodel.progress diff --git a/app/lib/simulator/Simulator.coffee b/app/lib/simulator/Simulator.coffee index f38fd23b2..e4bba1050 100644 --- a/app/lib/simulator/Simulator.coffee +++ b/app/lib/simulator/Simulator.coffee @@ -56,7 +56,7 @@ module.exports = class Simulator extends CocoClass @god = new God maxWorkerPoolSize: 1, maxAngels: 1 # Start loading worker. @levelLoader = new LevelLoader supermodel: @supermodel, levelID: levelID, sessionID: @task.getFirstSessionID(), headless: true - @listenToOnce(@levelLoader, 'loaded-all', @simulateGame) + @listenToOnce(@supermodel, 'loaded-all', @simulateGame) simulateGame: -> return if @destroyed