migrate "multiplier" setup to "priority" setup, with ! !! !!! instead
of 1 2 3. multipliers are now 1x 1.5x 2x
This commit is contained in:
+16
-9
@@ -1,6 +1,13 @@
|
||||
|
||||
MODIFIER = .02
|
||||
|
||||
priorityValue = (priority='!') ->
|
||||
switch priority
|
||||
when '!' then 1
|
||||
when '!!' then 1.5
|
||||
when '!!!' then 2
|
||||
else 1
|
||||
|
||||
module.exports.tnl = (level) ->
|
||||
return (Math.pow(level,2)*10)+(level*10)+80
|
||||
|
||||
@@ -9,13 +16,13 @@ module.exports.tnl = (level) ->
|
||||
{value} task.value for exp gain
|
||||
{weaponStrength) weapon strength
|
||||
{level} current user level
|
||||
{multiplier} user-defined priority multiplier
|
||||
{priority} user-defined priority multiplier
|
||||
###
|
||||
module.exports.expModifier = (value, weaponStrength, level, multiplier=1) ->
|
||||
module.exports.expModifier = (value, weaponStrength, level, priority='!') ->
|
||||
levelModifier = (level-1) * MODIFIER
|
||||
weaponModifier = weaponStrength / 100
|
||||
strength = 1 + weaponModifier + levelModifier
|
||||
return value * strength * multiplier
|
||||
return value * strength * priorityValue(priority)
|
||||
|
||||
###
|
||||
Calculates HP modification based on level and armor defence
|
||||
@@ -23,20 +30,20 @@ module.exports.expModifier = (value, weaponStrength, level, multiplier=1) ->
|
||||
{armorDefense} defense from armor
|
||||
{helmDefense} defense from helm
|
||||
{level} current user level
|
||||
{multiplier} user-defined priority multiplier
|
||||
{priority} user-defined priority multiplier
|
||||
###
|
||||
module.exports.hpModifier = (value, armorDefense, helmDefense, shieldDefense, level, multiplier=1) ->
|
||||
module.exports.hpModifier = (value, armorDefense, helmDefense, shieldDefense, level, priority='!') ->
|
||||
levelModifier = (level-1) * MODIFIER
|
||||
armorModifier = (armorDefense + helmDefense + shieldDefense) / 100
|
||||
defense = 1 - levelModifier + armorModifier
|
||||
return value * defense * multiplier
|
||||
return value * defense * priorityValue(priority)
|
||||
|
||||
###
|
||||
Future use
|
||||
{multiplier} user-defined priority multiplier
|
||||
{priority} user-defined priority multiplier
|
||||
###
|
||||
module.exports.gpModifier = (value, modifier, multiplier=1) ->
|
||||
return value * modifier * multiplier
|
||||
module.exports.gpModifier = (value, modifier, priority='!') ->
|
||||
return value * modifier * priorityValue(priority)
|
||||
|
||||
###
|
||||
Calculates the next task.value based on direction
|
||||
|
||||
@@ -63,8 +63,8 @@ module.exports.app = (appExports, model) ->
|
||||
appExports.closeOnliesNotification = (e, el) ->
|
||||
user.set('flags.onliesNotification', 'hide')
|
||||
|
||||
appExports.closeMultiplierNotification = (e, el) ->
|
||||
user.set('flags.multiplierNotification', 'hide')
|
||||
appExports.closePriorityNotification = (e, el) ->
|
||||
user.set('flags.priorityNotification', 'hide')
|
||||
|
||||
appExports.customizeGender = (e, el) ->
|
||||
user.set 'preferences.gender', $(el).attr('data-value')
|
||||
|
||||
@@ -28,7 +28,7 @@ score = (model, taskId, direction, times, batch, cron) ->
|
||||
taskPath = "tasks.#{taskId}"
|
||||
taskObj = obj.tasks[taskId]
|
||||
{type, value} = taskObj
|
||||
multiplier = if taskObj.multiplier then parseInt(taskObj.multiplier) else 1
|
||||
priority = taskObj.priority or '!'
|
||||
|
||||
# If they're trying to purhcase a too-expensive reward, confirm they want to take a hit for it
|
||||
if taskObj.value > obj.stats.gp and taskObj.type is 'reward'
|
||||
@@ -52,16 +52,16 @@ score = (model, taskId, direction, times, batch, cron) ->
|
||||
addPoints = ->
|
||||
level = user.get('stats.lvl')
|
||||
weaponStrength = items.items.weapon[user.get('items.weapon')].strength
|
||||
modified = algos.expModifier(delta,weaponStrength,level, multiplier)
|
||||
modified = algos.expModifier(delta,weaponStrength,level, priority)
|
||||
exp += modified*10
|
||||
gp += algos.gpModifier(delta, 1, multiplier)
|
||||
gp += algos.gpModifier(delta, 1, priority)
|
||||
|
||||
subtractPoints = ->
|
||||
level = user.get('stats.lvl')
|
||||
armorDefense = items.items.armor[user.get('items.armor')].defense
|
||||
helmDefense = items.items.head[user.get('items.head')].defense
|
||||
shieldDefense = items.items.shield[user.get('items.shield')].defense
|
||||
modified = algos.hpModifier(delta,armorDefense,helmDefense,shieldDefense,level, multiplier)
|
||||
modified = algos.hpModifier(delta,armorDefense,helmDefense,shieldDefense,level, priority)
|
||||
hp += modified
|
||||
|
||||
switch type
|
||||
|
||||
@@ -178,7 +178,7 @@ module.exports.app = (appExports, model) ->
|
||||
$('[rel=tooltip]').tooltip()
|
||||
$('[rel=popover]').popover()
|
||||
|
||||
appExports.tasksSetMultiplier = (e, el) ->
|
||||
appExports.tasksSetPriority = (e, el) ->
|
||||
dataId = $(el).parent('[data-id]').attr('data-id')
|
||||
#"_user.tasks.#{dataId}"
|
||||
model.at(e.target).set 'multiplier', parseInt($(el).attr('data-multiplier'))
|
||||
model.at(e.target).set 'priority', $(el).attr('data-priority')
|
||||
Reference in New Issue
Block a user