This commit is contained in:
Nick Winter 2014-04-14 14:49:38 -07:00
parent 239b130d9c
commit e908ae2fb4
4 changed files with 16 additions and 2 deletions
app
locale
templates/play/level/modal
views/play/level

View file

@ -291,6 +291,9 @@
time_current: "Now:"
time_total: "Max:"
time_goto: "Go to:"
infinite_loop_try_again: "Try Again"
infinite_loop_reset_level: "Reset Level"
infinite_loop_comment_out: "Comment Out My Code"
admin:
av_title: "Admin Views"

View file

@ -8,5 +8,6 @@ block modal-body-content
p(data-i18n="play_level.infinite_loop_explanation") The initial code to build the world never finished running. It's probably either really slow or has an infinite loop. Or there might be a bug. You can either try running this code again or reset the code to the default state. If that doesn't fix it, please let us know.
block modal-footer-content
a(href='#', data-dismiss="modal", aria-hidden="true", data-i18n="play_level.infinite_loop_wait").btn#restart-level-infinite-loop-retry-button Try Again
a(href='#', data-dismiss="modal", aria-hidden="true", data-i18n="play_level.infinite_loop_reload").btn.btn-primary#restart-level-infinite-loop-confirm-button Reset Level
a(href='#', data-dismiss="modal", aria-hidden="true", data-i18n="play_level.infinite_loop_try_again").btn#restart-level-infinite-loop-retry-button Try Again
a(href='#', data-dismiss="modal", aria-hidden="true", data-i18n="play_level.infinite_loop_reset_level").btn.btn-danger#restart-level-infinite-loop-confirm-button Reset Level
a(href='#', data-dismiss="modal", aria-hidden="true", data-i18n="play_level.infinite_loop_comment_out").btn.btn-primary#restart-level-infinite-loop-comment-button Comment Out My Code

View file

@ -8,3 +8,4 @@ module.exports = class InfiniteLoopModal extends View
events:
'click #restart-level-infinite-loop-retry-button': -> Backbone.Mediator.publish 'tome:cast-spell'
'click #restart-level-infinite-loop-confirm-button': -> Backbone.Mediator.publish 'restart-level'
'click #restart-level-infinite-loop-comment-button': -> Backbone.Mediator.publish 'tome:comment-my-code'

View file

@ -51,6 +51,7 @@ module.exports = class TomeView extends View
'tome:change-language': 'updateLanguageForAllSpells'
'surface:sprite-selected': 'onSpriteSelected'
'god:new-world-created': 'onNewWorld'
'tome:comment-my-code': 'onCommentMyCode'
events:
'click #spell-view': 'onSpellViewClick'
@ -78,6 +79,14 @@ module.exports = class TomeView extends View
@thangList.adjustThangs @spells, thangs
@spellList.adjustSpells @spells
onCommentMyCode: (e) ->
for spellKey, spell of @spells when spell.canWrite()
console.log "Commenting out", spellKey
commentedSource = 'return; // Commented out to stop infinite loop.\n' + spell.getSource()
spell.view.updateACEText commentedSource
spell.view.recompile false
@cast()
createWorker: ->
return
# In progress