@@ -9,13 +9,6 @@ define([ | |||||
items: [], | items: [], | ||||
init: function (blueprint) { | init: function (blueprint) { | ||||
this.items.forEach(function (i) { | |||||
if ((i.stats) && (i.stats.hpMax)) { | |||||
i.stats.vit = i.stats.hpMax; | |||||
delete i.stats.hpMax; | |||||
} | |||||
}); | |||||
events.emit('onGetItems', this.items); | events.emit('onGetItems', this.items); | ||||
}, | }, | ||||
extend: function (blueprint) { | extend: function (blueprint) { | ||||
@@ -35,11 +28,6 @@ define([ | |||||
var nItem = newItems[i]; | var nItem = newItems[i]; | ||||
var nId = nItem.id; | var nId = nItem.id; | ||||
if ((nItem.stats) && (nItem.stats.hpMax)) { | |||||
nItem.stats.vit = nItem.stats.hpMax; | |||||
delete nItem.stats.hpMax; | |||||
} | |||||
var findItem = items.find(function (item) { | var findItem = items.find(function (item) { | ||||
return (item.id == nId); | return (item.id == nId); | ||||
}); | }); | ||||
@@ -5,7 +5,6 @@ define([ | |||||
) { | ) { | ||||
var stats = { | var stats = { | ||||
'vit': 'vitality', | 'vit': 'vitality', | ||||
'hpMax': 'vitality', | |||||
'regenHp': 'health regeneration', | 'regenHp': 'health regeneration', | ||||
'manaMax': 'maximum mana', | 'manaMax': 'maximum mana', | ||||
'regenMana': 'mana regeneration', | 'regenMana': 'mana regeneration', | ||||
@@ -332,7 +332,8 @@ define([ | |||||
gap3: '', | gap3: '', | ||||
str: stats.str, | str: stats.str, | ||||
int: stats.int, | int: stats.int, | ||||
dex: stats.dex | |||||
dex: stats.dex, | |||||
vit: stats.vit | |||||
}, | }, | ||||
offense: { | offense: { | ||||
'crit chance': (~~(stats.critChance * 10) / 10) + '%', | 'crit chance': (~~(stats.critChance * 10) / 10) + '%', | ||||
@@ -146,9 +146,6 @@ define([ | |||||
for (var s in stats) { | for (var s in stats) { | ||||
var val = stats[s]; | var val = stats[s]; | ||||
if (s == 'hpMax') | |||||
s = 'vit'; | |||||
this.obj.stats.addStat(s, val); | this.obj.stats.addStat(s, val); | ||||
} | } | ||||
@@ -221,8 +218,6 @@ define([ | |||||
for (var s in stats) { | for (var s in stats) { | ||||
var val = stats[s]; | var val = stats[s]; | ||||
if (s == 'hpMax') | |||||
s = 'vit'; | |||||
this.obj.stats.addStat(s, -val); | this.obj.stats.addStat(s, -val); | ||||
} | } | ||||
@@ -43,27 +43,6 @@ define([ | |||||
if ((item.pos >= this.inventorySize) || (item.eq)) | if ((item.pos >= this.inventorySize) || (item.eq)) | ||||
delete item.pos; | delete item.pos; | ||||
//Hacks for old items | |||||
if (((item.spell) && (!item.spell.rolls)) || (!item.sprite)) { | |||||
items.splice(i, 1); | |||||
i--; | |||||
iLen--; | |||||
continue; | |||||
} else if ((item.spell) && (item.type == 'Spear')) { | |||||
item.spell.properties = item.spell.properties || {}; | |||||
item.spell.properties.range = item.range; | |||||
} else if (item.quantity == NaN) | |||||
item.quantity = 1; | |||||
else if ((item.effects) && (Object.keys(item.effects[0]).length == 0)) { | |||||
items.splice(i, 1); | |||||
i--; | |||||
iLen--; | |||||
continue; | |||||
} else if (((item.slot != 'twoHanded') && (item.slot != 'oneHanded')) && (item.spell) && (!item.ability)) | |||||
delete item.spell; | |||||
else if (item.slot == 'mainHand') | |||||
item.slot = 'oneHanded'; | |||||
while (item.name.indexOf(`''`) > -1) { | while (item.name.indexOf(`''`) > -1) { | ||||
item.name = item.name.replace(`''`, `'`); | item.name = item.name.replace(`''`, `'`); | ||||
} | } | ||||
@@ -32,6 +32,7 @@ define([ | |||||
critMultiplier: 150, | critMultiplier: 150, | ||||
armor: 0, | armor: 0, | ||||
dmgPercent: 0, | dmgPercent: 0, | ||||
vit: 0, | |||||
blockAttackChance: 0, | blockAttackChance: 0, | ||||
blockSpellChance: 0, | blockSpellChance: 0, | ||||
@@ -173,10 +174,10 @@ define([ | |||||
}, | }, | ||||
addStat: function (stat, value) { | addStat: function (stat, value) { | ||||
if (['lvlRequire', 'vit', 'allAttributes'].indexOf(stat) == -1) | |||||
if (['lvlRequire', 'allAttributes'].indexOf(stat) == -1) | |||||
this.values[stat] += value; | this.values[stat] += value; | ||||
var sendOnlyToSelf = (['hp', 'hpMax', 'mana', 'manaMax'].indexOf(stat) == -1); | |||||
var sendOnlyToSelf = (['hp', 'hpMax', 'mana', 'manaMax', 'vit'].indexOf(stat) == -1); | |||||
this.obj.syncer.setObject(sendOnlyToSelf, 'stats', 'values', stat, this.values[stat]); | this.obj.syncer.setObject(sendOnlyToSelf, 'stats', 'values', stat, this.values[stat]); | ||||
@@ -614,6 +615,9 @@ define([ | |||||
}, | }, | ||||
rescale: function (level, isMob) { | rescale: function (level, isMob) { | ||||
if (level >= this.values.level) | |||||
return; | |||||
var sync = this.obj.syncer.setObject.bind(this.obj.syncer); | var sync = this.obj.syncer.setObject.bind(this.obj.syncer); | ||||
var oldHp = this.values.hp; | var oldHp = this.values.hp; | ||||
@@ -653,8 +657,6 @@ define([ | |||||
var addStats = this.obj.equipment.rescale(level); | var addStats = this.obj.equipment.rescale(level); | ||||
for (var p in addStats) { | for (var p in addStats) { | ||||
var statName = p; | var statName = p; | ||||
if (statName == 'hpMax') | |||||
statName = 'vit'; | |||||
this.addStat(statName, addStats[p]); | this.addStat(statName, addStats[p]); | ||||
} | } | ||||
@@ -363,7 +363,7 @@ module.exports = { | |||||
slot: 'neck', | slot: 'neck', | ||||
type: 'Pendant', | type: 'Pendant', | ||||
noSalvage: true, | noSalvage: true, | ||||
stats: ['hpMax', 'regenHp', 'regenMana'] | |||||
stats: ['vit', 'regenHp', 'regenMana'] | |||||
}] | }] | ||||
} | } | ||||
} | } | ||||
@@ -23,8 +23,6 @@ define([ | |||||
for (var s in stats) { | for (var s in stats) { | ||||
var val = stats[s]; | var val = stats[s]; | ||||
if (s == 'hpMax') | |||||
s = 'vit'; | |||||
this.obj.stats.addStat(s, val); | this.obj.stats.addStat(s, val); | ||||
} | } | ||||
}, | }, | ||||
@@ -36,8 +34,6 @@ define([ | |||||
for (var s in stats) { | for (var s in stats) { | ||||
var val = stats[s]; | var val = stats[s]; | ||||
if (s == 'hpMax') | |||||
s = 'vit'; | |||||
this.obj.stats.addStat(s, -val); | this.obj.stats.addStat(s, -val); | ||||
} | } | ||||
} | } | ||||
@@ -1,7 +1,7 @@ | |||||
define([ | define([ | ||||
'../config/prefixes', | '../config/prefixes', | ||||
'../config/suffixes' | '../config/suffixes' | ||||
], function( | |||||
], function ( | |||||
prefixes, | prefixes, | ||||
suffixes | suffixes | ||||
) { | ) { | ||||
@@ -13,7 +13,7 @@ define([ | |||||
['gPrefix', 'gSuffix'] | ['gPrefix', 'gSuffix'] | ||||
], | ], | ||||
prefixes: { | prefixes: { | ||||
hpMax: 'Healthy', | |||||
vit: 'Healthy', | |||||
regenHp: 'Regenerating', | regenHp: 'Regenerating', | ||||
manaMax: `Caster's`, | manaMax: `Caster's`, | ||||
regenMana: 'Tapping', | regenMana: 'Tapping', | ||||
@@ -46,7 +46,7 @@ define([ | |||||
lvlRequire: 'Elementary' | lvlRequire: 'Elementary' | ||||
}, | }, | ||||
suffixes: { | suffixes: { | ||||
hpMax: 'Health', | |||||
vit: 'Health', | |||||
regenHp: 'Regeneration', | regenHp: 'Regeneration', | ||||
manaMax: 'Mana', | manaMax: 'Mana', | ||||
regenMana: 'Orbs', | regenMana: 'Orbs', | ||||
@@ -94,10 +94,10 @@ define([ | |||||
gen.forEach(g => this.types[g].call(this, item, blueprint)); | gen.forEach(g => this.types[g].call(this, item, blueprint)); | ||||
}, | }, | ||||
types: { | types: { | ||||
basic: function(item, blueprint) { | |||||
basic: function (item, blueprint) { | |||||
item.name = item.type; | item.name = item.type; | ||||
}, | }, | ||||
prefix: function(item, blueprint) { | |||||
prefix: function (item, blueprint) { | |||||
var maxStat = ''; | var maxStat = ''; | ||||
var maxValue = 0; | var maxValue = 0; | ||||
for (var s in item.stats) { | for (var s in item.stats) { | ||||
@@ -109,7 +109,7 @@ define([ | |||||
item.name = this.prefixes[maxStat] + ' ' + item.name; | item.name = this.prefixes[maxStat] + ' ' + item.name; | ||||
}, | }, | ||||
suffix: function(item, blueprint) { | |||||
suffix: function (item, blueprint) { | |||||
var stats = []; | var stats = []; | ||||
for (var s in item.stats) { | for (var s in item.stats) { | ||||
if (this.suffixes[s]) | if (this.suffixes[s]) | ||||
@@ -126,7 +126,7 @@ define([ | |||||
item.name = item.name + ' of ' + this.suffixes[stats[useIndex].stat]; | item.name = item.name + ' of ' + this.suffixes[stats[useIndex].stat]; | ||||
}, | }, | ||||
gPrefix: function(item, blueprint) { | |||||
gPrefix: function (item, blueprint) { | |||||
var list = prefixes.generic.concat(prefixes.slots[item.slot] || []); | var list = prefixes.generic.concat(prefixes.slots[item.slot] || []); | ||||
if (item.stats.armor) | if (item.stats.armor) | ||||
@@ -142,7 +142,7 @@ define([ | |||||
item.name = item.name.split('%').join(replacer); | item.name = item.name.split('%').join(replacer); | ||||
} | } | ||||
}, | }, | ||||
gSuffix: function(item, blueprint) { | |||||
gSuffix: function (item, blueprint) { | |||||
var list = null; | var list = null; | ||||
if (item.slot == 'tool') { | if (item.slot == 'tool') { | ||||
@@ -161,4 +161,4 @@ define([ | |||||
} | } | ||||
} | } | ||||
}; | }; | ||||
}); | |||||
}); |
@@ -57,7 +57,7 @@ define([ | |||||
return max * perfection * (blueprint.statMult.addCritChance || 1); | return max * perfection * (blueprint.statMult.addCritChance || 1); | ||||
}, | }, | ||||
hpMax: function (item, level, blueprint, perfection, calcPerfection) { | |||||
vit: function (item, level, blueprint, perfection, calcPerfection) { | |||||
var div = 1 / 11; | var div = 1 / 11; | ||||
if (item.slot == 'twoHanded') | if (item.slot == 'twoHanded') | ||||
div *= 2; | div *= 2; | ||||
@@ -67,9 +67,9 @@ define([ | |||||
if (calcPerfection) | if (calcPerfection) | ||||
return (calcPerfection / max); | return (calcPerfection / max); | ||||
else if (perfection == null) | else if (perfection == null) | ||||
return random.norm(1, max) * (blueprint.statMult.hpMax || 1); | |||||
return random.norm(1, max) * (blueprint.statMult.vit || 1); | |||||
else | else | ||||
return max * perfection * (blueprint.statMult.hpMax || 1); | |||||
return max * perfection * (blueprint.statMult.vit || 1); | |||||
}, | }, | ||||
mainStat: function (item, level, blueprint, perfection, calcPerfection) { | mainStat: function (item, level, blueprint, perfection, calcPerfection) { | ||||
@@ -137,8 +137,8 @@ define([ | |||||
}, | }, | ||||
stats: { | stats: { | ||||
hpMax: { | |||||
generator: 'hpMax' | |||||
vit: { | |||||
generator: 'vit' | |||||
}, | }, | ||||
regenHp: { | regenHp: { | ||||
generator: 'regenHp' | generator: 'regenHp' | ||||
@@ -88,7 +88,7 @@ define([ | |||||
classes.spells.necromancer = ['summon skeleton', 'blood barrier']; | classes.spells.necromancer = ['summon skeleton', 'blood barrier']; | ||||
classes.stats.necromancer = { | classes.stats.necromancer = { | ||||
values: { | values: { | ||||
hpMax: 95 | |||||
hpMax: 65 | |||||
}, | }, | ||||
vitScale: 10, | vitScale: 10, | ||||
gainStats: { | gainStats: { | ||||