Changing updateStats to use mass assignment of changes.

This commit is contained in:
Andrew Steele 2013-01-18 12:12:40 -05:00
parent 841b26b390
commit be643e5ce4

View file

@ -95,23 +95,25 @@ taskDeltaFormula = (currentValue, direction) ->
updateStats = (stats) ->
# if user is dead, dont do anything
return if user.get('stats.lvl') == 0
update = {}
if stats.hp?
# game over
if stats.hp <= 0
user.set 'stats.lvl', 0 # this signifies dead
user.set 'stats.hp', 0
update.lvl = 0 # this signifies dead
update.hp = 0
return
else
user.set 'stats.hp', stats.hp
update.hp = stats.hp
if stats.exp?
# level up & carry-over exp
tnl = user.get '_tnl'
if stats.exp >= tnl
stats.exp -= tnl
user.set 'stats.lvl', user.get('stats.lvl') + 1
user.set 'stats.hp', 50
update.lvl = user.get('stats.lvl') + 1
update.hp = 50
if !user.get('items.itemsEnabled') and stats.exp >=15
user.set 'items.itemsEnabled', true
$('ul.items').popover
@ -125,11 +127,13 @@ updateStats = (stats) ->
</div>"
$('ul.items').popover 'show'
user.set 'stats.exp', stats.exp
update.exp = stats.exp
if stats.money?
money = 0.0 if (!money? or money<0)
user.set 'stats.money', stats.money
update.money = stats.money
user.set 'stats', update
# {taskId} task you want to score
# {direction} 'up' or 'down'