mirror of
https://github.com/codeninjasllc/codecombat.git
synced 2025-03-24 19:59:53 -04:00
Fixed bug with team assignments and spell permissions.
This commit is contained in:
parent
d0f1510623
commit
1fb68ae717
3 changed files with 10 additions and 17 deletions
|
@ -112,7 +112,7 @@ module.exports = class LevelLoader extends CocoClass
|
||||||
tempSession = new LevelSession _id: @session.id
|
tempSession = new LevelSession _id: @session.id
|
||||||
tempSession.save(patch, {patch: true})
|
tempSession.save(patch, {patch: true})
|
||||||
@sessionDenormalized = true
|
@sessionDenormalized = true
|
||||||
|
|
||||||
# World init
|
# World init
|
||||||
|
|
||||||
initWorld: ->
|
initWorld: ->
|
||||||
|
@ -120,18 +120,17 @@ module.exports = class LevelLoader extends CocoClass
|
||||||
@world = new World @level.get('name')
|
@world = new World @level.get('name')
|
||||||
serializedLevel = @level.serialize(@supermodel)
|
serializedLevel = @level.serialize(@supermodel)
|
||||||
@world.loadFromLevel serializedLevel, false
|
@world.loadFromLevel serializedLevel, false
|
||||||
# @setTeam @world.teamForPlayer 1 # We don't know which player we are; this will go away--temp TODO
|
|
||||||
@buildSpriteSheets()
|
@buildSpriteSheets()
|
||||||
|
|
||||||
buildSpriteSheets: ->
|
buildSpriteSheets: ->
|
||||||
thangTypes = {}
|
thangTypes = {}
|
||||||
thangTypes[tt.get('name')] = tt for tt in @supermodel.getModels(ThangType)
|
thangTypes[tt.get('name')] = tt for tt in @supermodel.getModels(ThangType)
|
||||||
|
|
||||||
colorConfigs = @world.getTeamColors()
|
colorConfigs = @world.getTeamColors()
|
||||||
|
|
||||||
thangsProduced = {}
|
thangsProduced = {}
|
||||||
baseOptions = {resolutionFactor: 4, async: true}
|
baseOptions = {resolutionFactor: 4, async: true}
|
||||||
|
|
||||||
for thang in @world.thangs
|
for thang in @world.thangs
|
||||||
continue unless thang.spriteName
|
continue unless thang.spriteName
|
||||||
thangType = thangTypes[thang.spriteName]
|
thangType = thangTypes[thang.spriteName]
|
||||||
|
@ -139,7 +138,7 @@ module.exports = class LevelLoader extends CocoClass
|
||||||
options.async = true
|
options.async = true
|
||||||
thangsProduced[thang.spriteName] = true
|
thangsProduced[thang.spriteName] = true
|
||||||
@buildSpriteSheet(thangType, options)
|
@buildSpriteSheet(thangType, options)
|
||||||
|
|
||||||
for thangName, thangType of thangTypes
|
for thangName, thangType of thangTypes
|
||||||
continue if thangsProduced[thangName]
|
continue if thangsProduced[thangName]
|
||||||
thangType.spriteOptions = {resolutionFactor: 4, async: true}
|
thangType.spriteOptions = {resolutionFactor: 4, async: true}
|
||||||
|
@ -155,7 +154,7 @@ module.exports = class LevelLoader extends CocoClass
|
||||||
thangType.on 'build-complete', =>
|
thangType.on 'build-complete', =>
|
||||||
@spriteSheetsBuilt += 1
|
@spriteSheetsBuilt += 1
|
||||||
@notifyProgress()
|
@notifyProgress()
|
||||||
|
|
||||||
# Initial Sound Loading
|
# Initial Sound Loading
|
||||||
|
|
||||||
loadAudio: ->
|
loadAudio: ->
|
||||||
|
|
|
@ -78,13 +78,13 @@ module.exports = class PlayLevelView extends View
|
||||||
msg = $.i18n.t('play_level.level_load_error', defaultValue: "Level could not be loaded.")
|
msg = $.i18n.t('play_level.level_load_error', defaultValue: "Level could not be loaded.")
|
||||||
@$el.html('<div class="alert">' + msg + '</div>')
|
@$el.html('<div class="alert">' + msg + '</div>')
|
||||||
@saveScreenshot = _.throttle @saveScreenshot, 30000
|
@saveScreenshot = _.throttle @saveScreenshot, 30000
|
||||||
|
|
||||||
@load() unless @isEditorPreview
|
@load() unless @isEditorPreview
|
||||||
|
|
||||||
setLevel: (@level, @supermodel) ->
|
setLevel: (@level, @supermodel) ->
|
||||||
@god?.level = @level.serialize @supermodel
|
@god?.level = @level.serialize @supermodel
|
||||||
@load()
|
@load()
|
||||||
|
|
||||||
load: ->
|
load: ->
|
||||||
@levelLoader = new LevelLoader(@levelID, @supermodel, @sessionID)
|
@levelLoader = new LevelLoader(@levelID, @supermodel, @sessionID)
|
||||||
@levelLoader.once 'ready-to-init-world', @onReadyToInitWorld
|
@levelLoader.once 'ready-to-init-world', @onReadyToInitWorld
|
||||||
|
@ -106,7 +106,7 @@ module.exports = class PlayLevelView extends View
|
||||||
@level = @levelLoader.level
|
@level = @levelLoader.level
|
||||||
@world = @levelLoader.world
|
@world = @levelLoader.world
|
||||||
@loadingScreen.destroy()
|
@loadingScreen.destroy()
|
||||||
# @initWorld()
|
@setTeam @world.teamForPlayer 1 # We don't know which player we are; this will go away--temp TODO
|
||||||
@initSurface()
|
@initSurface()
|
||||||
@initGod()
|
@initGod()
|
||||||
@initGoalManager()
|
@initGoalManager()
|
||||||
|
@ -291,12 +291,6 @@ module.exports = class PlayLevelView extends View
|
||||||
return if p.length
|
return if p.length
|
||||||
@$el.append($('<img src="/images/level/pointer.png" id="pointer">'))
|
@$el.append($('<img src="/images/level/pointer.png" id="pointer">'))
|
||||||
|
|
||||||
initWorld: ->
|
|
||||||
@world ?= new World @level.get('name')
|
|
||||||
serializedLevel = @level.serialize(@supermodel)
|
|
||||||
@world.loadFromLevel serializedLevel, false
|
|
||||||
@setTeam @world.teamForPlayer 1 # We don't know which player we are; this will go away--temp TODO
|
|
||||||
|
|
||||||
initSurface: ->
|
initSurface: ->
|
||||||
surfaceCanvas = $('canvas#surface', @$el)
|
surfaceCanvas = $('canvas#surface', @$el)
|
||||||
@surface = new Surface(@world, surfaceCanvas, thangTypes: @supermodel.getModels(ThangType), playJingle: not @isEditorPreview)
|
@surface = new Surface(@world, surfaceCanvas, thangTypes: @supermodel.getModels(ThangType), playJingle: not @isEditorPreview)
|
||||||
|
|
|
@ -32,7 +32,7 @@
|
||||||
"firepad": "~0.1.2",
|
"firepad": "~0.1.2",
|
||||||
"marked": "~0.3.0",
|
"marked": "~0.3.0",
|
||||||
"moment": "~2.5.0",
|
"moment": "~2.5.0",
|
||||||
"aether": "~0.0.1",
|
"aether": "~0.0.5",
|
||||||
"underscore.string": "~2.3.3",
|
"underscore.string": "~2.3.3",
|
||||||
"firebase": "~1.0.2"
|
"firebase": "~1.0.2"
|
||||||
},
|
},
|
||||||
|
|
Loading…
Add table
Reference in a new issue