Use playSound across the code

This commit is contained in:
Imperadeiro98 2015-09-09 22:36:05 +01:00
parent 25c693eed4
commit bd4063ed3a
11 changed files with 27 additions and 27 deletions

View file

@ -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

View file

@ -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>')

View file

@ -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) ->

View file

@ -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)

View file

@ -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
)

View file

@ -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'))

View file

@ -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?()

View file

@ -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

View file

@ -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

View file

@ -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) =>

View file

@ -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