Fix cooldowns never expiring.

This commit is contained in:
Mayhem 2014-02-01 15:41:36 +01:00
parent 2082e46cc5
commit c5490f6aec

View File

@ -15,8 +15,7 @@ QR.cooldown =
QR.cooldown.start() QR.cooldown.start()
$.sync key, QR.cooldown.sync $.sync key, QR.cooldown.sync
start: -> start: ->
return unless Conf['Cooldown'] return if QR.cooldown.isCounting or !Object.keys(QR.cooldown.cooldowns).length
return if QR.cooldown.isCounting
QR.cooldown.isCounting = true QR.cooldown.isCounting = true
QR.cooldown.count() QR.cooldown.count()
sync: (cooldowns) -> sync: (cooldowns) ->
@ -65,6 +64,7 @@ QR.cooldown =
{types, cooldowns, upSpd, upSpdAccuracy} = QR.cooldown {types, cooldowns, upSpd, upSpdAccuracy} = QR.cooldown
for start, cooldown of cooldowns for start, cooldown of cooldowns
start = +start
if 'delay' of cooldown if 'delay' of cooldown
if cooldown.delay if cooldown.delay
seconds = Math.max seconds, cooldown.delay-- seconds = Math.max seconds, cooldown.delay--
@ -77,7 +77,9 @@ QR.cooldown =
# Only cooldowns relevant to this post can set the seconds variable: # Only cooldowns relevant to this post can set the seconds variable:
# reply cooldown with a reply, thread cooldown with a thread # reply cooldown with a reply, thread cooldown with a thread
elapsed = (now - start) // $.SECOND elapsed = (now - start) // $.SECOND
continue if elapsed < 0 # clock changed since then? if elapsed < 0 # clock changed since then?
QR.cooldown.unset start
continue
type = unless isReply type = unless isReply
'thread' 'thread'
else if hasFile else if hasFile