mirror of
https://github.com/codeninjasllc/codecombat.git
synced 2025-03-24 19:59:53 -04:00
Fixed headless client and transpile script
Really need to reactor the worker worlds to one script.
This commit is contained in:
parent
b5d52dac17
commit
eba3f36f0b
2 changed files with 15 additions and 14 deletions
|
@ -137,19 +137,17 @@ work = () ->
|
||||||
|
|
||||||
|
|
||||||
self.onWorldError = onWorldError = (error) ->
|
self.onWorldError = onWorldError = (error) ->
|
||||||
self.postMessage type: "end-load-frames"
|
if error.isUserCodeProblem
|
||||||
if error instanceof Aether.problems.UserCodeProblem
|
errorKey = error.userInfo.key
|
||||||
#console.log "Aether userCodeProblem occured."
|
if not errorKey or not self.postedErrors[errorKey]
|
||||||
unless self.postedErrors[error.key]
|
|
||||||
problem = error.serialize()
|
|
||||||
self.postMessage
|
self.postMessage
|
||||||
type: "user-code-problem"
|
type: "user-code-problem"
|
||||||
problem: problem
|
problem: error
|
||||||
|
self.postedErrors[errorKey] = error
|
||||||
self.postedErrors[error.key] = problem
|
|
||||||
else
|
else
|
||||||
console.log "Non-UserCodeError:", error.toString() + "\n" + error.stack or error.stackTrace
|
console.log "Non-UserCodeError:", error.toString() + "\n" + error.stack or error.stackTrace
|
||||||
self.cleanUp()
|
self.cleanUp()
|
||||||
|
return true
|
||||||
|
|
||||||
self.onWorldLoadProgress = onWorldLoadProgress = (progress) ->
|
self.onWorldLoadProgress = onWorldLoadProgress = (progress) ->
|
||||||
#console.log "Worker onWorldLoadProgress"
|
#console.log "Worker onWorldLoadProgress"
|
||||||
|
|
|
@ -13,19 +13,23 @@ Aether.addGlobal 'Vector', require '../app/lib/world/vector'
|
||||||
Aether.addGlobal '_', _
|
Aether.addGlobal '_', _
|
||||||
|
|
||||||
transpileLevelSession = (sessionID, cb) ->
|
transpileLevelSession = (sessionID, cb) ->
|
||||||
query = LevelSession.findOne("_id": sessionID).select("submittedCode").lean()
|
query = LevelSession.findOne("_id": sessionID).select("submittedCode submittedCodeLanguage").lean()
|
||||||
query.exec (err, session) ->
|
query.exec (err, session) ->
|
||||||
if err then return cb err
|
if err then return cb err
|
||||||
submittedCode = session.submittedCode
|
submittedCode = session.submittedCode
|
||||||
|
unless session.submittedCodeLanguage
|
||||||
|
throw "SUBMITTED CODE LANGUAGE DOESN'T EXIST"
|
||||||
|
else
|
||||||
|
console.log "Transpiling code for session #{session._id} in language #{session.submittedCodeLanguage}"
|
||||||
transpiledCode = {}
|
transpiledCode = {}
|
||||||
console.log "Updating session #{sessionID}"
|
#console.log "Updating session #{sessionID}"
|
||||||
for thang, spells of submittedCode
|
for thang, spells of submittedCode
|
||||||
transpiledCode[thang] = {}
|
transpiledCode[thang] = {}
|
||||||
for spellID, spell of spells
|
for spellID, spell of spells
|
||||||
|
|
||||||
aetherOptions =
|
aetherOptions =
|
||||||
problems: {}
|
problems: {}
|
||||||
language: "javascript"
|
language: session.submittedCodeLanguage
|
||||||
functionName: spellID
|
functionName: spellID
|
||||||
functionParameters: []
|
functionParameters: []
|
||||||
yieldConditionally: spellID is "plan"
|
yieldConditionally: spellID is "plan"
|
||||||
|
@ -41,7 +45,6 @@ transpileLevelSession = (sessionID, cb) ->
|
||||||
"_id": sessionID
|
"_id": sessionID
|
||||||
update =
|
update =
|
||||||
"transpiledCode": transpiledCode
|
"transpiledCode": transpiledCode
|
||||||
"submittedCodeLanguage": "javascript"
|
|
||||||
query = LevelSession.update(conditions,update)
|
query = LevelSession.update(conditions,update)
|
||||||
|
|
||||||
query.exec (err, numUpdated) -> cb err
|
query.exec (err, numUpdated) -> cb err
|
||||||
|
|
Loading…
Add table
Reference in a new issue