diff --git a/app/lib/GPlusHandler.coffee b/app/lib/GPlusHandler.coffee index e69c7db79..411b1e26b 100644 --- a/app/lib/GPlusHandler.coffee +++ b/app/lib/GPlusHandler.coffee @@ -91,7 +91,9 @@ module.exports = GPlusHandler = class GPlusHandler extends CocoClass @saveIfAllDone() saveIfAllDone: => + console.debug 'Save if all done. Person loaded:', @personLoaded, 'and email loaded:', @emailLoaded return unless @personLoaded and @emailLoaded + console.debug 'Email, gplusID:', me.get('email'), me.get('gplusID') return unless me.get('email') and me.get('gplusID') Backbone.Mediator.publish 'auth:logging-in-with-gplus', {} @@ -104,12 +106,16 @@ module.exports = GPlusHandler = class GPlusHandler extends CocoClass patch.email = me.get('email') wasAnonymous = me.get('anonymous') @trigger 'logging-into-codecombat' + console.debug('Logging into GPlus.') me.save(patch, { patch: true type: 'PUT' - error: backboneFailure, + error: -> + console.debug('Logging into GPlus fail.', arguments) + backboneFailure(arguments...) url: "/db/user?gplusID=#{gplusID}&gplusAccessToken=#{@accessToken.access_token}" success: (model) -> + console.debug('GPLus login success!') window.location.reload() if wasAnonymous and not model.get('anonymous') }) diff --git a/app/lib/surface/Lank.coffee b/app/lib/surface/Lank.coffee index 4418ffbea..16d76032d 100644 --- a/app/lib/surface/Lank.coffee +++ b/app/lib/surface/Lank.coffee @@ -491,6 +491,7 @@ module.exports = Lank = class Lank extends CocoClass bar = createProgressBar(healthColor) @options.floatingLayer.addCustomGraphic(key, bar, bar.bounds) + hadHealthBar = @healthBar @healthBar = new createjs.Sprite(@options.floatingLayer.spriteSheet) @healthBar.gotoAndStop(key) offset = @getOffset 'aboveHead' @@ -499,6 +500,8 @@ module.exports = Lank = class Lank extends CocoClass @options.floatingLayer.addChild @healthBar @updateHealthBar() @lastHealth = null + if not hadHealthBar + @listenTo @options.floatingLayer, 'new-spritesheet', @addHealthBar getActionProp: (prop, subProp, def=null) -> # Get a property or sub-property from an action, falling back to ThangType diff --git a/app/lib/surface/Surface.coffee b/app/lib/surface/Surface.coffee index 704f41b80..016fc81d6 100644 --- a/app/lib/surface/Surface.coffee +++ b/app/lib/surface/Surface.coffee @@ -258,7 +258,9 @@ module.exports = Surface = class Surface extends CocoClass createjs.Tween.removeTweens(@) @currentFrame = @scrubbingTo - @scrubbingTo = Math.min(Math.round(progress * (@world.frames.length - 1)), @world.frames.length - 1) + @scrubbingTo = Math.round(progress * (@world.frames.length - 1)) + @scrubbingTo = Math.max @scrubbingTo, 1 + @scrubbingTo = Math.min @scrubbingTo, @world.frames.length - 1 @scrubbingPlaybackSpeed = Math.sqrt(Math.abs(@scrubbingTo - @currentFrame) * @world.dt / (scrubDuration or 0.5)) if scrubDuration t = createjs.Tween @@ -402,7 +404,7 @@ module.exports = Surface = class Surface extends CocoClass @playing = (e ? {}).playing ? true @setPlayingCalled = true if @playing and @currentFrame >= (@world.totalFrames - 5) - @currentFrame = 0 + @currentFrame = 1 # Go back to the beginning (but not frame 0, that frame is weird) if @fastForwardingToFrame and not @playing @fastForwardingToFrame = null diff --git a/app/styles/play/level/level-dialogue-view.sass b/app/styles/play/level/level-dialogue-view.sass index 298245a73..f29d65f8a 100644 --- a/app/styles/play/level/level-dialogue-view.sass +++ b/app/styles/play/level/level-dialogue-view.sass @@ -55,7 +55,7 @@ line-height: 20px strong - color: #09B057 + color: #FFCCAA .hud-hint font-weight: normal diff --git a/app/styles/play/level/tome/spell.sass b/app/styles/play/level/tome/spell.sass index ed6a9c1a8..b3b0a82ec 100644 --- a/app/styles/play/level/tome/spell.sass +++ b/app/styles/play/level/tome/spell.sass @@ -99,7 +99,7 @@ @include gradient-striped() outline: 2px outset #0099ff @include box-shadow(1px 1px 4px black) - &.playback-ended .executing + &.playback-ended .executing, &.user-code-problem .executing background-color: rgba(50, 255, 80, 0.65) outline: 0 @include box-shadow(0 0 0px black) @@ -125,34 +125,29 @@ // TODO: Pulses too quickly during playback @include animation(pulseRedBackground 1s infinite) - &:not(.playback-ended) + &:not(.playback-ended):not(.user-code-problem) .executing:not(.ace_gutter-cell) background-size: 40px 40px @include animation(progress-bar-stripes 0.5s linear infinite) - .ace_gutter-cell.executing:not(.ace_error):not(.ace_warning):not(.ace_info):after - - // Experimenting with a larger executing-line-pointer - content: "\e072" - position: relative - top: -31px - left: -39px - display: inline-block - font-family: 'Glyphicons Halflings' - font-style: normal - font-weight: normal - line-height: 1 - color: white - text-shadow: 0 0 5px black, 0 0 5px black, 0 0 5px black - font-size: 39px - -webkit-font-smoothing: antialiased - -moz-osx-font-smoothing: grayscale - - - //display: block - //margin-left: 1px - //background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA2hpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYxIDY0LjE0MDk0OSwgMjAxMC8xMi8wNy0xMDo1NzowMSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDowMjgwMTE3NDA3MjA2ODExOEE2REU4Q0M1MTM1MkIxRiIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDpBQjVEQUNDMzQ4RUIxMUUxOEVGRUUyNzFENDM3RDVFMCIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDpBQjVEQUNDMjQ4RUIxMUUxOEVGRUUyNzFENDM3RDVFMCIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ1M1LjEgTWFjaW50b3NoIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6QTU1MjE3RDIzMTIwNjgxMThEQkI4NTlBMjQ1QTEwOTUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MDI4MDExNzQwNzIwNjgxMThBNkRFOENDNTEzNTJCMUYiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz7SazaGAAAAiElEQVR42mL8//8/AzUBEwOVweA3kAWboI2jCyhgDwBx4ZH9ey5Qy4UOQHweaHg/EAtQ08sFUIMDqBmGCkC8HmgoCCtQM1ICoK5toGYsg8KzHmjo+UGbDj8AcSMwORkSnQ7xgA3QtPmApISNBTyAGrSBGl6eAMSGxBhGyIVkZT3G0fKQYgAQYACL+C2ZM6PC7AAAAABJRU5ErkJggg==) - //background-position: 0px center + &:not(.user-code-problem) + .ace_gutter-cell.executing:not(.ace_error):not(.ace_warning):not(.ace_info):after + + // Experimenting with a larger executing-line-pointer + content: "\e072" + position: relative + top: -31px + left: -39px + display: inline-block + font-family: 'Glyphicons Halflings' + font-style: normal + font-weight: normal + line-height: 1 + color: white + text-shadow: 0 0 5px black, 0 0 5px black, 0 0 5px black + font-size: 39px + -webkit-font-smoothing: antialiased + -moz-osx-font-smoothing: grayscale .ace_gutter-cell.executed:not(.ace_error):not(.ace_warning):not(.ace_info) margin-left: 1px diff --git a/app/views/modal/AuthModal.coffee b/app/views/modal/AuthModal.coffee index 5ae45badc..aa4c25cad 100644 --- a/app/views/modal/AuthModal.coffee +++ b/app/views/modal/AuthModal.coffee @@ -126,8 +126,6 @@ module.exports = class AuthModal extends ModalView step.done = false for step in @gplusAuthSteps handler = application.gplusHandler - @renderGPlusAuthChecklist() - @listenToOnce handler, 'logged-in', -> @gplusAuthSteps[0].done = true @renderGPlusAuthChecklist() diff --git a/app/views/play/level/LevelPlaybackView.coffee b/app/views/play/level/LevelPlaybackView.coffee index af4ef02f2..5f60d900e 100644 --- a/app/views/play/level/LevelPlaybackView.coffee +++ b/app/views/play/level/LevelPlaybackView.coffee @@ -210,6 +210,7 @@ module.exports = class LevelPlaybackView extends CocoView onProgressHover: (e, offsetX) -> timeRatio = @$progressScrubber.width() / @totalTime offsetX ?= e.clientX - $(e.target).closest('#timeProgress').offset().left + offsetX = Math.max 0, offsetX @newTime = offsetX / timeRatio @updatePopupContent() @timePopup?.onHover e