diff --git a/common/script/src/content/gear/head.js b/common/script/src/content/gear/head.js index beb2fa5409..ec9cd2afdf 100644 --- a/common/script/src/content/gear/head.js +++ b/common/script/src/content/gear/head.js @@ -8,6 +8,7 @@ import {head as rogueHead} from './sets/rogue'; import {head as warriorHead} from './sets/warrior'; import {head as wizardHead} from './sets/wizard'; +import {head as armoireHead} from './sets/armoire'; import {head as mysteryHead} from './sets/mystery'; let head = { @@ -412,177 +413,7 @@ let head = { } }, mystery: mysteryHead, - armoire: { - lunarCrown: { - text: t('headArmoireLunarCrownText'), - notes: t('headArmoireLunarCrownNotes', { - con: 7, - per: 7 - }), - value: 100, - con: 7, - per: 7, - set: 'soothing', - canOwn: ((u) => { - return u.items.gear.owned.head_armoire_lunarCrown != null; - }) - }, - redHairbow: { - text: t('headArmoireRedHairbowText'), - notes: t('headArmoireRedHairbowNotes', { - str: 5, - int: 5, - con: 5 - }), - value: 100, - str: 5, - int: 5, - con: 5, - canOwn: ((u) => { - return u.items.gear.owned.head_armoire_redHairbow != null; - }) - }, - violetFloppyHat: { - text: t('headArmoireVioletFloppyHatText'), - notes: t('headArmoireVioletFloppyHatNotes', { - per: 5, - int: 5, - con: 5 - }), - value: 100, - per: 5, - int: 5, - con: 5, - canOwn: ((u) => { - return u.items.gear.owned.head_armoire_violetFloppyHat != null; - }) - }, - gladiatorHelm: { - text: t('headArmoireGladiatorHelmText'), - notes: t('headArmoireGladiatorHelmNotes', { - per: 7, - int: 7 - }), - value: 100, - per: 7, - int: 7, - set: 'gladiator', - canOwn: ((u) => { - return u.items.gear.owned.head_armoire_gladiatorHelm != null; - }) - }, - rancherHat: { - text: t('headArmoireRancherHatText'), - notes: t('headArmoireRancherHatNotes', { - str: 5, - per: 5, - int: 5 - }), - value: 100, - str: 5, - per: 5, - int: 5, - set: 'rancher', - canOwn: ((u) => { - return u.items.gear.owned.head_armoire_rancherHat != null; - }) - }, - royalCrown: { - text: t('headArmoireRoyalCrownText'), - notes: t('headArmoireRoyalCrownNotes', { - str: 10 - }), - value: 100, - str: 10, - canOwn: ((u) => { - return u.items.gear.owned.head_armoire_royalCrown != null; - }) - }, - blueHairbow: { - text: t('headArmoireBlueHairbowText'), - notes: t('headArmoireBlueHairbowNotes', { - per: 5, - int: 5, - con: 5 - }), - value: 100, - per: 5, - int: 5, - con: 5, - canOwn: ((u) => { - return u.items.gear.owned.head_armoire_blueHairbow != null; - }) - }, - goldenLaurels: { - text: t('headArmoireGoldenLaurelsText'), - notes: t('headArmoireGoldenLaurelsNotes', { - attrs: 8 - }), - value: 100, - per: 8, - con: 8, - set: 'goldenToga', - canOwn: ((u) => { - return u.items.gear.owned.head_armoire_goldenLaurels != null; - }) - }, - hornedIronHelm: { - text: t('headArmoireHornedIronHelmText'), - notes: t('headArmoireHornedIronHelmNotes', { - con: 9, - str: 7 - }), - value: 100, - con: 9, - str: 7, - set: 'hornedIron', - canOwn: ((u) => { - return u.items.gear.owned.head_armoire_hornedIronHelm != null; - }) - }, - yellowHairbow: { - text: t('headArmoireYellowHairbowText'), - notes: t('headArmoireYellowHairbowNotes', { - attrs: 5 - }), - value: 100, - int: 5, - per: 5, - str: 5, - canOwn: ((u) => { - return u.items.gear.owned.head_armoire_yellowHairbow != null; - }) - }, - redFloppyHat: { - text: t('headArmoireRedFloppyHatText'), - notes: t('headArmoireRedFloppyHatNotes', { - attrs: 6 - }), - value: 100, - con: 6, - int: 6, - per: 6, - canOwn: ((u) => { - return u.items.gear.owned.head_armoire_redFloppyHat != null; - }) - }, - plagueDoctorHat: { - text: t('headArmoirePlagueDoctorHatText'), - notes: t('headArmoirePlagueDoctorHatNotes', { - int: 5, - str: 6, - con: 5 - }), - value: 100, - int: 5, - str: 6, - con: 5, - set: 'plagueDoctor', - canOwn: ((u) => { - return u.items.gear.owned.head_armoire_plagueDoctorHat != null; - }) - } - } + armoire: armoireHead, }; export default head; diff --git a/common/script/src/content/gear/sets/armoire.js b/common/script/src/content/gear/sets/armoire.js index 6d29860710..8e340a1a02 100644 --- a/common/script/src/content/gear/sets/armoire.js +++ b/common/script/src/content/gear/sets/armoire.js @@ -1,13 +1,10 @@ -import {translator as t} from '../../helpers'; -import events from '../../events'; +import { + translator as t, + setGearSetDefaults +} from '../../helpers'; -export var armor = { +let armor = { lunarArmor: { - text: t('armorArmoireLunarArmorText'), - notes: t('armorArmoireLunarArmorNotes', { - str: 7, - int: 7 - }), value: 100, str: 7, int: 7, @@ -17,11 +14,6 @@ export var armor = { }) }, gladiatorArmor: { - text: t('armorArmoireGladiatorArmorText'), - notes: t('armorArmoireGladiatorArmorNotes', { - str: 7, - per: 7 - }), value: 100, str: 7, per: 7, @@ -31,12 +23,6 @@ export var armor = { }) }, rancherRobes: { - text: t('armorArmoireRancherRobesText'), - notes: t('armorArmoireRancherRobesNotes', { - str: 5, - per: 5, - int: 5 - }), value: 100, str: 5, per: 5, @@ -60,11 +46,6 @@ export var armor = { }) }, hornedIronArmor: { - text: t('armorArmoireHornedIronArmorText'), - notes: t('armorArmoireHornedIronArmorNotes', { - con: 9, - per: 7 - }), value: 100, con: 9, per: 7, @@ -74,12 +55,6 @@ export var armor = { }) }, plagueDoctorOvercoat: { - text: t('armorArmoirePlagueDoctorOvercoatText'), - notes: t('armorArmoirePlagueDoctorOvercoatNotes', { - int: 6, - str: 5, - con: 6 - }), value: 100, int: 6, str: 5, @@ -90,3 +65,220 @@ export var armor = { }) } }; + +let head = { + lunarCrown: { + value: 100, + con: 7, + per: 7, + set: 'soothing', + canOwn: ((u) => { + return u.items.gear.owned.head_armoire_lunarCrown != null; + }) + }, + redHairbow: { + value: 100, + str: 5, + int: 5, + con: 5, + canOwn: ((u) => { + return u.items.gear.owned.head_armoire_redHairbow != null; + }) + }, + violetFloppyHat: { + value: 100, + per: 5, + int: 5, + con: 5, + canOwn: ((u) => { + return u.items.gear.owned.head_armoire_violetFloppyHat != null; + }) + }, + gladiatorHelm: { + value: 100, + per: 7, + int: 7, + set: 'gladiator', + canOwn: ((u) => { + return u.items.gear.owned.head_armoire_gladiatorHelm != null; + }) + }, + rancherHat: { + value: 100, + str: 5, + per: 5, + int: 5, + set: 'rancher', + canOwn: ((u) => { + return u.items.gear.owned.head_armoire_rancherHat != null; + }) + }, + royalCrown: { + value: 100, + str: 10, + canOwn: ((u) => { + return u.items.gear.owned.head_armoire_royalCrown != null; + }) + }, + blueHairbow: { + value: 100, + per: 5, + int: 5, + con: 5, + canOwn: ((u) => { + return u.items.gear.owned.head_armoire_blueHairbow != null; + }) + }, + goldenLaurels: { + text: t('headArmoireGoldenLaurelsText'), + notes: t('headArmoireGoldenLaurelsNotes', { + attrs: 8 + }), + value: 100, + per: 8, + con: 8, + set: 'goldenToga', + canOwn: ((u) => { + return u.items.gear.owned.head_armoire_goldenLaurels != null; + }) + }, + hornedIronHelm: { + value: 100, + con: 9, + str: 7, + set: 'hornedIron', + canOwn: ((u) => { + return u.items.gear.owned.head_armoire_hornedIronHelm != null; + }) + }, + yellowHairbow: { + notes: t('headArmoireYellowHairbowNotes', { + attrs: 5 + }), + value: 100, + int: 5, + per: 5, + str: 5, + canOwn: ((u) => { + return u.items.gear.owned.head_armoire_yellowHairbow != null; + }) + }, + redFloppyHat: { + notes: t('headArmoireRedFloppyHatNotes', { + attrs: 6 + }), + value: 100, + con: 6, + int: 6, + per: 6, + canOwn: ((u) => { + return u.items.gear.owned.head_armoire_redFloppyHat != null; + }) + }, + plagueDoctorHat: { + value: 100, + int: 5, + str: 6, + con: 5, + set: 'plagueDoctor', + canOwn: ((u) => { + return u.items.gear.owned.head_armoire_plagueDoctorHat != null; + }) + } +}; + +let shield = { + gladiatorShield: { + value: 100, + con: 5, + str: 5, + set: 'gladiator', + canOwn: ((u) => { + return u.items.gear.owned.shield_armoire_gladiatorShield != null; + }) + } +}; + +let weapon = { + basicCrossbow: { + value: 100, + str: 5, + per: 5, + con: 5, + canOwn: (function(u) { + return u.items.gear.owned.weapon_armoire_basicCrossbow != null; + }) + }, + lunarSceptre: { + value: 100, + con: 7, + int: 7, + set: 'soothing', + canOwn: (function(u) { + return u.items.gear.owned.weapon_armoire_lunarSceptre != null; + }) + }, + rancherLasso: { + notes: t('weaponArmoireRancherLassoNotes', { + str: 5, + per: 5, + int: 5 + }), + value: 100, + str: 5, + per: 5, + int: 5, + set: 'rancher', + canOwn: (function(u) { + return u.items.gear.owned.weapon_armoire_rancherLasso != null; + }) + }, + mythmakerSword: { + notes: t('weaponArmoireMythmakerSwordNotes', { + attrs: 6 + }), + value: 100, + str: 6, + per: 6, + set: 'goldenToga', + canOwn: (function(u) { + return u.items.gear.owned.weapon_armoire_mythmakerSword != null; + }) + }, + ironCrook: { + notes: t('weaponArmoireIronCrookNotes', { + attrs: 7 + }), + value: 100, + str: 7, + per: 7, + set: 'hornedIron', + canOwn: (function(u) { + return u.items.gear.owned.weapon_armoire_ironCrook != null; + }) + }, + goldWingStaff: { + notes: t('weaponArmoireGoldWingStaffNotes', { + attrs: 4 + }), + value: 100, + con: 4, + int: 4, + per: 4, + str: 4, + canOwn: (function(u) { + return u.items.gear.owned.weapon_armoire_goldWingStaff != null; + }) + } +}; + +let armoireSet = { + armor: armor, + head: head, + shield: shield, + weapon: weapon, +}; + +setGearSetDefaults(armoireSet, {setName: 'armoire'}); + +export default armoireSet; diff --git a/common/script/src/content/gear/shield.js b/common/script/src/content/gear/shield.js index 0c368c4f53..3a911939b3 100644 --- a/common/script/src/content/gear/shield.js +++ b/common/script/src/content/gear/shield.js @@ -9,6 +9,7 @@ import {weapon as rogueWeapon} from './sets/rogue'; import {shield as warriorShield} from './sets/warrior'; import {shield as wizardShield} from './sets/wizard'; +import {shield as armoireShield} from './sets/armoire'; import {shield as mysteryShield} from './sets/mystery'; let rogueShield = cloneDeep(rogueWeapon); @@ -314,22 +315,7 @@ let shield = { } }, mystery: mysteryShield, - armoire: { - gladiatorShield: { - text: t('shieldArmoireGladiatorShieldText'), - notes: t('shieldArmoireGladiatorShieldNotes', { - con: 5, - str: 5 - }), - value: 100, - con: 5, - str: 5, - set: 'gladiator', - canOwn: ((u) => { - return u.items.gear.owned.shield_armoire_gladiatorShield != null; - }) - } - } + armoire: armoireShield, }; export default shield; diff --git a/common/script/src/content/gear/weapon.js b/common/script/src/content/gear/weapon.js index 0a1c7dce79..1c7c74472d 100644 --- a/common/script/src/content/gear/weapon.js +++ b/common/script/src/content/gear/weapon.js @@ -8,6 +8,7 @@ import {weapon as rogueWeapon} from './sets/rogue'; import {weapon as warriorWeapon} from './sets/warrior'; import {weapon as wizardWeapon} from './sets/wizard'; +import {weapon as armoireWeapon} from './sets/armoire'; import {weapon as mysteryWeapon} from './sets/mystery'; let weapon = { @@ -443,94 +444,7 @@ let weapon = { } }, mystery: mysteryWeapon, - armoire: { - basicCrossbow: { - text: t('weaponArmoireBasicCrossbowText'), - notes: t('weaponArmoireBasicCrossbowNotes', { - str: 5, - per: 5, - con: 5 - }), - value: 100, - str: 5, - per: 5, - con: 5, - canOwn: (function(u) { - return u.items.gear.owned.weapon_armoire_basicCrossbow != null; - }) - }, - lunarSceptre: { - text: t('weaponArmoireLunarSceptreText'), - notes: t('weaponArmoireLunarSceptreNotes', { - con: 7, - int: 7 - }), - value: 100, - con: 7, - int: 7, - set: 'soothing', - canOwn: (function(u) { - return u.items.gear.owned.weapon_armoire_lunarSceptre != null; - }) - }, - rancherLasso: { - twoHanded: true, - text: t('weaponArmoireRancherLassoText'), - notes: t('weaponArmoireRancherLassoNotes', { - str: 5, - per: 5, - int: 5 - }), - value: 100, - str: 5, - per: 5, - int: 5, - set: 'rancher', - canOwn: (function(u) { - return u.items.gear.owned.weapon_armoire_rancherLasso != null; - }) - }, - mythmakerSword: { - text: t('weaponArmoireMythmakerSwordText'), - notes: t('weaponArmoireMythmakerSwordNotes', { - attrs: 6 - }), - value: 100, - str: 6, - per: 6, - set: 'goldenToga', - canOwn: (function(u) { - return u.items.gear.owned.weapon_armoire_mythmakerSword != null; - }) - }, - ironCrook: { - text: t('weaponArmoireIronCrookText'), - notes: t('weaponArmoireIronCrookNotes', { - attrs: 7 - }), - value: 100, - str: 7, - per: 7, - set: 'hornedIron', - canOwn: (function(u) { - return u.items.gear.owned.weapon_armoire_ironCrook != null; - }) - }, - goldWingStaff: { - text: t('weaponArmoireGoldWingStaffText'), - notes: t('weaponArmoireGoldWingStaffNotes', { - attrs: 4 - }), - value: 100, - con: 4, - int: 4, - per: 4, - str: 4, - canOwn: (function(u) { - return u.items.gear.owned.weapon_armoire_goldWingStaff != null; - }) - } - } + armoire: armoireWeapon, }; export default weapon; diff --git a/common/script/src/content/helpers.js b/common/script/src/content/helpers.js index 6b8ff9be88..12741ce9b1 100644 --- a/common/script/src/content/helpers.js +++ b/common/script/src/content/helpers.js @@ -140,9 +140,11 @@ export function setGearSetDefaults(gearSet, options={}) { let setName = formatForTranslator(options.setName); each(gearSet, (gear, gearType) => { - each(gear, (item, number) => { - let text = `${gearType}${setName}${number}Text`; - let notes = `${gearType}${setName}${number}Notes`; + each(gear, (item, key) => { + let formattedName = formatForTranslator(key); + + let text = `${gearType}${setName}${formattedName}Text`; + let notes = `${gearType}${setName}${formattedName}Notes`; let attributes = _getGearAttributes(item); let gearDefaults = { text: translator(text),