mirror of
https://github.com/codeninjasllc/codecombat.git
synced 2025-03-28 22:00:25 -04:00
Use playSound across the code
This commit is contained in:
parent
25c693eed4
commit
bd4063ed3a
11 changed files with 27 additions and 27 deletions
|
@ -76,7 +76,7 @@ module.exports = class MyMatchesTabView extends CocoView
|
|||
state = 'tie' if match.metrics.rank is opponent.metrics.rank
|
||||
fresh = match.date > (new Date(new Date() - 20 * 1000)).toISOString()
|
||||
if fresh
|
||||
Backbone.Mediator.publish 'audio-player:play-sound', trigger: 'chat_received'
|
||||
@playSound 'chat_received'
|
||||
{
|
||||
state: state
|
||||
opponentName: @nameMap[opponent.userID]
|
||||
|
@ -105,7 +105,7 @@ module.exports = class MyMatchesTabView extends CocoView
|
|||
team.scoreHistory = scoreHistory
|
||||
|
||||
if not team.isRanking and @previouslyRankingTeams[team.id]
|
||||
Backbone.Mediator.publish 'audio-player:play-sound', trigger: 'cast-end'
|
||||
@playSound 'cast-end'
|
||||
@previouslyRankingTeams[team.id] = team.isRanking
|
||||
|
||||
ctx
|
||||
|
|
|
@ -54,7 +54,7 @@ module.exports = class LevelChatView extends CocoView
|
|||
@playNoise() if e.message.authorID isnt me.id
|
||||
|
||||
playNoise: ->
|
||||
Backbone.Mediator.publish 'audio-player:play-sound', trigger: 'chat_received'
|
||||
@playSound 'chat_received'
|
||||
|
||||
messageObjectToJQuery: (message) ->
|
||||
td = $('<td></td>')
|
||||
|
|
|
@ -97,7 +97,7 @@ module.exports = class LevelGoalsView extends CocoView
|
|||
@lastSizeTweenTime = new Date()
|
||||
@updatePlacement()
|
||||
if @soundToPlayWhenPlaybackEnded
|
||||
Backbone.Mediator.publish 'audio-player:play-sound', trigger: @soundToPlayWhenPlaybackEnded, volume: 1
|
||||
@playSound @soundToPlayWhenPlaybackEnded
|
||||
|
||||
updateHeight: ->
|
||||
return if @$el.hasClass('brighter') or @$el.hasClass('secret')
|
||||
|
@ -122,7 +122,7 @@ module.exports = class LevelGoalsView extends CocoView
|
|||
|
||||
playToggleSound: (sound) =>
|
||||
return if @destroyed
|
||||
Backbone.Mediator.publish 'audio-player:play-sound', trigger: sound, volume: 1
|
||||
@playSound sound
|
||||
@soundTimeout = null
|
||||
|
||||
onSetLetterbox: (e) ->
|
||||
|
|
|
@ -71,7 +71,7 @@ module.exports = class LevelLoadingView extends CocoView
|
|||
@startUnveiling()
|
||||
@unveil()
|
||||
else
|
||||
Backbone.Mediator.publish 'audio-player:play-sound', trigger: 'level_loaded', volume: 0.75 # old: loading_ready
|
||||
@playSound 'level_loaded', 0.75 # old: loading_ready
|
||||
@$el.find('.progress').hide()
|
||||
@$el.find('.start-level-button').show()
|
||||
|
||||
|
@ -97,7 +97,7 @@ module.exports = class LevelLoadingView extends CocoView
|
|||
loadingDetails.css 'top', -loadingDetails.outerHeight(true)
|
||||
@$el.find('.left-wing').css left: '-100%', backgroundPosition: 'right -400px top 0'
|
||||
@$el.find('.right-wing').css right: '-100%', backgroundPosition: 'left -400px top 0'
|
||||
Backbone.Mediator.publish 'audio-player:play-sound', trigger: 'loading-view-unveil', volume: 0.5
|
||||
@playSound 'loading-view-unveil', 0.5
|
||||
_.delay @onUnveilEnded, duration * 1000
|
||||
$('#level-footer-background').detach().appendTo('#page-container').slideDown(duration * 1000)
|
||||
|
||||
|
|
|
@ -108,7 +108,7 @@ module.exports = class LevelPlaybackView extends CocoView
|
|||
@realTime = true
|
||||
@togglePlaybackControls false
|
||||
Backbone.Mediator.publish 'playback:real-time-playback-started', {}
|
||||
Backbone.Mediator.publish 'audio-player:play-sound', trigger: 'real-time-playback-start', volume: 1
|
||||
@playSound 'real-time-playback-start'
|
||||
|
||||
onRealTimeMultiplayerCast: (e) ->
|
||||
@realTime = true
|
||||
|
@ -160,7 +160,7 @@ module.exports = class LevelPlaybackView extends CocoView
|
|||
ended = button.hasClass 'ended'
|
||||
changed = button.hasClass('playing') isnt @playing
|
||||
button.toggleClass('playing', @playing and not ended).toggleClass('paused', not @playing and not ended)
|
||||
Backbone.Mediator.publish 'audio-player:play-sound', trigger: (if @playing then 'playback-play' else 'playback-pause'), volume: 1
|
||||
@playSound (if @playing then 'playback-play' else 'playback-pause')
|
||||
return # don't stripe the bar
|
||||
bar = @$el.find '.scrubber .progress'
|
||||
bar.toggleClass('progress-striped', @playing and not ended).toggleClass('active', @playing and not ended)
|
||||
|
@ -266,7 +266,7 @@ module.exports = class LevelPlaybackView extends CocoView
|
|||
return unless @realTime
|
||||
@realTime = false
|
||||
@togglePlaybackControls true
|
||||
Backbone.Mediator.publish 'audio-player:play-sound', trigger: 'real-time-playback-end', volume: 1
|
||||
@playSound 'real-time-playback-end'
|
||||
|
||||
onStopRealTimePlayback: (e) ->
|
||||
Backbone.Mediator.publish 'level:set-letterbox', on: false
|
||||
|
@ -287,14 +287,14 @@ module.exports = class LevelPlaybackView extends CocoView
|
|||
if ratioChange = @getScrubRatio() - oldRatio
|
||||
sound = "playback-scrub-slide-#{if ratioChange > 0 then 'forward' else 'back'}-#{@slideCount % 3}"
|
||||
unless /back/.test sound # We don't have the back sounds in yet: http://discourse.codecombat.com/t/bug-some-mp3-lost/4830
|
||||
Backbone.Mediator.publish 'audio-player:play-sound', trigger: sound, volume: Math.min 1, Math.abs ratioChange * 50
|
||||
@playSound sound, (Math.min 1, Math.abs ratioChange * 50)
|
||||
|
||||
start: (event, ui) =>
|
||||
return if @shouldIgnore()
|
||||
@slideCount = 0
|
||||
@wasPlaying = @playing and not $('#play-button').hasClass('ended')
|
||||
Backbone.Mediator.publish 'level:set-playing', {playing: false}
|
||||
Backbone.Mediator.publish 'audio-player:play-sound', trigger: 'playback-scrub-start', volume: 0.5
|
||||
@playSound 'playback-scrub-start', 0.5
|
||||
|
||||
|
||||
stop: (event, ui) =>
|
||||
|
@ -307,7 +307,7 @@ module.exports = class LevelPlaybackView extends CocoView
|
|||
Backbone.Mediator.publish 'level:set-playing', {playing: false}
|
||||
@$el.find('.scrubber-handle').effect('bounce', {times: 2})
|
||||
else
|
||||
Backbone.Mediator.publish 'audio-player:play-sound', trigger: 'playback-scrub-end', volume: 0.5
|
||||
@playSound 'playback-scrub-end', 0.5
|
||||
|
||||
)
|
||||
|
||||
|
|
|
@ -57,7 +57,7 @@ module.exports = class HeroVictoryModal extends ModalView
|
|||
@previousLevel = me.level()
|
||||
else
|
||||
@readyToContinue = true
|
||||
Backbone.Mediator.publish 'audio-player:play-sound', trigger: 'victory'
|
||||
@playSound 'victory'
|
||||
if @level.get('type', true) is 'course' and nextLevel = @level.get('nextLevel')
|
||||
@nextLevel = new Level().setURL "/db/level/#{nextLevel.original}/version/#{nextLevel.majorVersion}"
|
||||
@nextLevel = @supermodel.loadModel(@nextLevel, 'level').model
|
||||
|
@ -220,7 +220,7 @@ module.exports = class HeroVictoryModal extends ModalView
|
|||
@updateXPBars 0
|
||||
@$el.find('#victory-header').delay(250).queue(->
|
||||
$(@).removeClass('out').dequeue()
|
||||
Backbone.Mediator.publish 'audio-player:play-sound', trigger: 'victory-title-appear' # TODO: actually add this
|
||||
@playSound 'victory-title-appear' # TODO: actually add this
|
||||
)
|
||||
complete = _.once(_.bind(@beginSequentialAnimations, @))
|
||||
@animatedPanels = $()
|
||||
|
@ -283,7 +283,7 @@ module.exports = class HeroVictoryModal extends ModalView
|
|||
@XPEl.text(totalXP)
|
||||
@updateXPBars(totalXP)
|
||||
xpTrigger = 'xp-' + (totalXP % 6) # 6 xp sounds
|
||||
Backbone.Mediator.publish 'audio-player:play-sound', trigger: xpTrigger, volume: 0.5 + ratio / 2
|
||||
@playSound xpTrigger, (0.5 + ratio / 2)
|
||||
@XPEl.addClass 'four-digits' if totalXP >= 1000 and @lastTotalXP < 1000
|
||||
@XPEl.addClass 'five-digits' if totalXP >= 10000 and @lastTotalXP < 10000
|
||||
@lastTotalXP = totalXP
|
||||
|
@ -294,14 +294,14 @@ module.exports = class HeroVictoryModal extends ModalView
|
|||
panel.textEl.text('+' + newGems)
|
||||
@gemEl.text(totalGems)
|
||||
gemTrigger = 'gem-' + (parseInt(panel.number * ratio) % 4) # 4 gem sounds
|
||||
Backbone.Mediator.publish 'audio-player:play-sound', trigger: gemTrigger, volume: 0.5 + ratio / 2
|
||||
@playSound gemTrigger, (0.5 + ratio / 2)
|
||||
@gemEl.addClass 'four-digits' if totalGems >= 1000 and @lastTotalGems < 1000
|
||||
@gemEl.addClass 'five-digits' if totalGems >= 10000 and @lastTotalGems < 10000
|
||||
@lastTotalGems = totalGems
|
||||
else if panel.item
|
||||
thangType = @thangTypes[panel.item]
|
||||
panel.textEl.text utils.i18n(thangType.attributes, 'name')
|
||||
Backbone.Mediator.publish 'audio-player:play-sound', trigger: 'item-unlocked', volume: 1 if 0.5 < ratio < 0.6
|
||||
@playSound 'item-unlocked' if 0.5 < ratio < 0.6
|
||||
else if panel.hero
|
||||
thangType = @thangTypes[panel.hero]
|
||||
panel.textEl.text(thangType.get('name'))
|
||||
|
|
|
@ -82,7 +82,7 @@ module.exports = class VictoryModal extends ModalView
|
|||
|
||||
afterInsert: ->
|
||||
super()
|
||||
Backbone.Mediator.publish 'audio-player:play-sound', trigger: 'victory'
|
||||
@playSound 'victory'
|
||||
gapi?.plusone?.go? @$el[0]
|
||||
FB?.XFBML?.parse? @$el[0]
|
||||
twttr?.widgets?.load?()
|
||||
|
|
|
@ -59,7 +59,7 @@ module.exports = class ProblemAlertView extends CocoView
|
|||
if @problem?
|
||||
@$el.addClass('alert').addClass("alert-#{@problem.aetherProblem.level}").hide().fadeIn('slow')
|
||||
@$el.addClass('no-hint') unless @problem.aetherProblem.hint
|
||||
Backbone.Mediator.publish 'audio-player:play-sound', trigger: 'error_appear', volume: 1.0
|
||||
@playSound 'error_appear'
|
||||
|
||||
onShowProblemAlert: (data) ->
|
||||
return unless $('#code-area').is(":visible")
|
||||
|
@ -80,7 +80,7 @@ module.exports = class ProblemAlertView extends CocoView
|
|||
return unless @problem?
|
||||
@$el.show() unless @$el.is(":visible")
|
||||
@$el.addClass 'jiggling'
|
||||
Backbone.Mediator.publish 'audio-player:play-sound', trigger: 'error_appear', volume: 1.0
|
||||
@playSound 'error_appear'
|
||||
pauseJiggle = =>
|
||||
@$el?.removeClass 'jiggling'
|
||||
_.delay pauseJiggle, 1000
|
||||
|
|
|
@ -83,7 +83,7 @@ module.exports = class SpellListTabEntryView extends SpellListEntryView
|
|||
content: docFormatter.formatPopover()
|
||||
container: @$el.parent()
|
||||
).on 'show.bs.popover', =>
|
||||
Backbone.Mediator.publish 'audio-player:play-sound', trigger: "spell-tab-entry-open", volume: 0.75
|
||||
@playSound 'spell-tab-entry-open', 0.75
|
||||
|
||||
onMouseEnterAvatar: (e) -> # Don't call super
|
||||
onMouseLeaveAvatar: (e) -> # Don't call super
|
||||
|
@ -94,7 +94,7 @@ module.exports = class SpellListTabEntryView extends SpellListEntryView
|
|||
onDropdownClick: (e) ->
|
||||
return unless @controlsEnabled
|
||||
Backbone.Mediator.publish 'tome:toggle-spell-list', {}
|
||||
Backbone.Mediator.publish 'audio-player:play-sound', trigger: 'spell-list-open', volume: 1
|
||||
@playSound 'spell-list-open'
|
||||
|
||||
onCodeReload: (e) ->
|
||||
#return unless @controlsEnabled
|
||||
|
|
|
@ -51,7 +51,7 @@ module.exports = class SpellPaletteEntryView extends CocoView
|
|||
).on 'shown.bs.popover', =>
|
||||
Backbone.Mediator.publish 'tome:palette-hovered', thang: @thang, prop: @doc.name, entry: @
|
||||
soundIndex = Math.floor(Math.random() * 4)
|
||||
Backbone.Mediator.publish 'audio-player:play-sound', trigger: "spell-palette-entry-open-#{soundIndex}", volume: 0.75
|
||||
@playSound 'spell-palette-entry-open-#{soundIndex}', 0.75
|
||||
popover = @$el.data('bs.popover')
|
||||
popover?.$tip?.i18n()
|
||||
codeLanguage = @options.language
|
||||
|
@ -95,7 +95,7 @@ module.exports = class SpellPaletteEntryView extends CocoView
|
|||
@$el.add('.spell-palette-popover.popover').removeClass 'pinned'
|
||||
$('.spell-palette-popover.popover .close').remove()
|
||||
@$el.popover 'hide'
|
||||
Backbone.Mediator.publish 'audio-player:play-sound', trigger: 'spell-palette-entry-unpin', volume: 1
|
||||
@playSound 'spell-palette-entry-unpin'
|
||||
else
|
||||
@popoverPinned = true
|
||||
@$el.popover 'show'
|
||||
|
@ -103,7 +103,7 @@ module.exports = class SpellPaletteEntryView extends CocoView
|
|||
x = $('<button type="button" data-dismiss="modal" aria-hidden="true" class="close">×</button>')
|
||||
$('.spell-palette-popover.popover').append x
|
||||
x.on 'click', @onClick
|
||||
Backbone.Mediator.publish 'audio-player:play-sound', trigger: 'spell-palette-entry-pin', volume: 1
|
||||
@playSound 'spell-palette-entry-pin'
|
||||
Backbone.Mediator.publish 'tome:palette-pin-toggled', entry: @, pinned: @popoverPinned
|
||||
|
||||
onClick: (e) =>
|
||||
|
|
|
@ -103,7 +103,7 @@ module.exports = class PollModal extends ModalView
|
|||
if Math.random() < randomGems / 40
|
||||
gemTrigger = 'gem-' + (gemNoisesPlayed % 4) # 4 gem sounds
|
||||
++gemNoisesPlayed
|
||||
Backbone.Mediator.publish 'audio-player:play-sound', trigger: gemTrigger, volume: 0.475 + i / 2000
|
||||
@playSound gemTrigger, (0.475 + i / 2000)
|
||||
@$randomNumber.delay 25
|
||||
@$randomGems.delay(1100).queue ->
|
||||
utils.replaceText $(@), commentStart + randomGems
|
||||
|
|
Loading…
Add table
Reference in a new issue