diff --git a/dist/habitrpg-shared.js b/dist/habitrpg-shared.js index 3f26994841..27185a36f0 100644 --- a/dist/habitrpg-shared.js +++ b/dist/habitrpg-shared.js @@ -9253,7 +9253,9 @@ gear = { return i18n.t('weaponWarrior1Text'); }), notes: (function() { - return i18n.t('weaponWarrior1Notes'); + return i18n.t('weaponWarrior1Notes', { + str: 3 + }); }), str: 3, value: 20 @@ -9263,7 +9265,9 @@ gear = { return i18n.t('weaponWarrior2Text'); }), notes: (function() { - return i18n.t('weaponWarrior2Notes'); + return i18n.t('weaponWarrior2Notes', { + str: 6 + }); }), str: 6, value: 30 @@ -9273,7 +9277,9 @@ gear = { return i18n.t('weaponWarrior3Text'); }), notes: (function() { - return i18n.t('weaponWarrior3Notes'); + return i18n.t('weaponWarrior3Notes', { + str: 9 + }); }), str: 9, value: 45 @@ -9283,7 +9289,9 @@ gear = { return i18n.t('weaponWarrior4Text'); }), notes: (function() { - return i18n.t('weaponWarrior4Notes'); + return i18n.t('weaponWarrior4Notes', { + str: 12 + }); }), str: 12, value: 65 @@ -9293,7 +9301,9 @@ gear = { return i18n.t('weaponWarrior5Text'); }), notes: (function() { - return i18n.t('weaponWarrior5Notes'); + return i18n.t('weaponWarrior5Notes', { + str: 15 + }); }), str: 15, value: 90 @@ -9303,7 +9313,9 @@ gear = { return i18n.t('weaponWarrior6Text'); }), notes: (function() { - return i18n.t('weaponWarrior6Notes'); + return i18n.t('weaponWarrior6Notes', { + str: 18 + }); }), str: 18, value: 120, @@ -9326,7 +9338,9 @@ gear = { return i18n.t('weaponRogue1Text'); }), notes: (function() { - return i18n.t('weaponRogue1Notes'); + return i18n.t('weaponRogue1Notes', { + str: 2 + }); }), str: 2, value: 20 @@ -9336,7 +9350,9 @@ gear = { return i18n.t('weaponRogue2Text'); }), notes: (function() { - return i18n.t('weaponRogue2Notes'); + return i18n.t('weaponRogue2Notes', { + str: 3 + }); }), str: 3, value: 35 @@ -9346,7 +9362,9 @@ gear = { return i18n.t('weaponRogue3Text'); }), notes: (function() { - return i18n.t('weaponRogue3Notes'); + return i18n.t('weaponRogue3Notes', { + str: 4 + }); }), str: 4, value: 50 @@ -9356,7 +9374,9 @@ gear = { return i18n.t('weaponRogue4Text'); }), notes: (function() { - return i18n.t('weaponRogue4Notes'); + return i18n.t('weaponRogue4Notes', { + str: 6 + }); }), str: 6, value: 70 @@ -9366,7 +9386,9 @@ gear = { return i18n.t('weaponRogue5Text'); }), notes: (function() { - return i18n.t('weaponRogue5Notes'); + return i18n.t('weaponRogue5Notes', { + str: 8 + }); }), str: 8, value: 90 @@ -9376,7 +9398,9 @@ gear = { return i18n.t('weaponRogue6Text'); }), notes: (function() { - return i18n.t('weaponRogue6Notes'); + return i18n.t('weaponRogue6Notes', { + str: 10 + }); }), str: 10, value: 120, @@ -9400,7 +9424,10 @@ gear = { return i18n.t('weaponWizard1Text'); }), notes: (function() { - return i18n.t('weaponWizard1Notes'); + return i18n.t('weaponWizard1Notes', { + int: 3, + per: 1 + }); }), int: 3, per: 1, @@ -9412,7 +9439,10 @@ gear = { return i18n.t('weaponWizard2Text'); }), notes: (function() { - return i18n.t('weaponWizard2Notes'); + return i18n.t('weaponWizard2Notes', { + int: 6, + per: 2 + }); }), int: 6, per: 2, @@ -9424,7 +9454,10 @@ gear = { return i18n.t('weaponWizard3Text'); }), notes: (function() { - return i18n.t('weaponWizard3Notes'); + return i18n.t('weaponWizard3Notes', { + int: 9, + per: 3 + }); }), int: 9, per: 3, @@ -9436,7 +9469,10 @@ gear = { return i18n.t('weaponWizard4Text'); }), notes: (function() { - return i18n.t('weaponWizard4Notes'); + return i18n.t('weaponWizard4Notes', { + int: 12, + per: 5 + }); }), int: 12, per: 5, @@ -9448,7 +9484,10 @@ gear = { return i18n.t('weaponWizard5Text'); }), notes: (function() { - return i18n.t('weaponWizard5Notes'); + return i18n.t('weaponWizard5Notes', { + int: 15, + per: 7 + }); }), int: 15, per: 7, @@ -9460,7 +9499,10 @@ gear = { return i18n.t('weaponWizard6Text'); }), notes: (function() { - return i18n.t('weaponWizard6Notes'); + return i18n.t('weaponWizard6Notes', { + int: 18, + per: 10 + }); }), int: 18, per: 10, @@ -9483,7 +9525,9 @@ gear = { return i18n.t('weaponHealer1Text'); }), notes: (function() { - return i18n.t('weaponHealer1Notes'); + return i18n.t('weaponHealer1Notes', { + int: 2 + }); }), int: 2, value: 20 @@ -9493,7 +9537,9 @@ gear = { return i18n.t('weaponHealer2Text'); }), notes: (function() { - return i18n.t('weaponHealer2Notes'); + return i18n.t('weaponHealer2Notes', { + int: 3 + }); }), int: 3, value: 30 @@ -9503,7 +9549,9 @@ gear = { return i18n.t('weaponHealer3Text'); }), notes: (function() { - return i18n.t('weaponHealer3Notes'); + return i18n.t('weaponHealer3Notes', { + int: 5 + }); }), int: 5, value: 45 @@ -9513,7 +9561,9 @@ gear = { return i18n.t('weaponHealer4Text'); }), notes: (function() { - return i18n.t('weaponHealer4Notes'); + return i18n.t('weaponHealer4Notes', { + int: 7 + }); }), int: 7, value: 65 @@ -9523,7 +9573,9 @@ gear = { return i18n.t('weaponHealer5Text'); }), notes: (function() { - return i18n.t('weaponHealer5Notes'); + return i18n.t('weaponHealer5Notes', { + int: 9 + }); }), int: 9, value: 90 @@ -9533,7 +9585,9 @@ gear = { return i18n.t('weaponHealer6Text'); }), notes: (function() { - return i18n.t('weaponHealer6Notes'); + return i18n.t('weaponHealer6Notes', { + int: 11 + }); }), int: 11, value: 120, @@ -9546,7 +9600,9 @@ gear = { return i18n.t('weaponSpecial0Text'); }), notes: (function() { - return i18n.t('weaponSpecial0Notes'); + return i18n.t('weaponSpecial0Notes', { + str: 20 + }); }), str: 20, value: 150, @@ -9560,7 +9616,9 @@ gear = { return i18n.t('weaponSpecial1Text'); }), notes: (function() { - return i18n.t('weaponSpecial1Notes'); + return i18n.t('weaponSpecial1Notes', { + attrs: 6 + }); }), str: 6, per: 6, @@ -9577,7 +9635,9 @@ gear = { return i18n.t('weaponSpecial2Text'); }), notes: (function() { - return i18n.t('weaponSpecial2Notes'); + return i18n.t('weaponSpecial2Notes', { + attrs: 25 + }); }), str: 25, per: 25, @@ -9592,7 +9652,9 @@ gear = { return i18n.t('weaponSpecial3Text'); }), notes: (function() { - return i18n.t('weaponSpecial3Notes'); + return i18n.t('weaponSpecial3Notes', { + attrs: 17 + }); }), str: 17, int: 17, @@ -9608,7 +9670,9 @@ gear = { return i18n.t('weaponSpecialCriticalText'); }), notes: (function() { - return i18n.t('weaponSpecialCriticalNotes'); + return i18n.t('weaponSpecialCriticalNotes', { + attrs: 40 + }); }), str: 40, per: 40, @@ -9627,7 +9691,9 @@ gear = { return i18n.t('weaponSpecialYetiText'); }), notes: (function() { - return i18n.t('weaponSpecialYetiNotes'); + return i18n.t('weaponSpecialYetiNotes', { + str: 15 + }); }), str: 15, value: 90 @@ -9641,7 +9707,9 @@ gear = { return i18n.t('weaponSpecialSkiText'); }), notes: (function() { - return i18n.t('weaponSpecialSkiNotes'); + return i18n.t('weaponSpecialSkiNotes', { + str: 8 + }); }), str: 8, value: 90 @@ -9656,7 +9724,10 @@ gear = { return i18n.t('weaponSpecialCandycaneText'); }), notes: (function() { - return i18n.t('weaponSpecialCandycaneNotes'); + return i18n.t('weaponSpecialCandycaneNotes', { + int: 15, + per: 7 + }); }), int: 15, per: 7, @@ -9671,7 +9742,9 @@ gear = { return i18n.t('weaponSpecialSnowflakeText'); }), notes: (function() { - return i18n.t('weaponSpecialSnowflakeNotes'); + return i18n.t('weaponSpecialSnowflakeNotes', { + int: 9 + }); }), int: 9, value: 90 @@ -9730,7 +9803,9 @@ gear = { return i18n.t('armorWarrior1Text'); }), notes: (function() { - return i18n.t('armorWarrior1Notes'); + return i18n.t('armorWarrior1Notes', { + con: 3 + }); }), con: 3, value: 30 @@ -9740,7 +9815,9 @@ gear = { return i18n.t('armorWarrior2Text'); }), notes: (function() { - return i18n.t('armorWarrior2Notes'); + return i18n.t('armorWarrior2Notes', { + con: 5 + }); }), con: 5, value: 45 @@ -9750,7 +9827,9 @@ gear = { return i18n.t('armorWarrior3Text'); }), notes: (function() { - return i18n.t('armorWarrior3Notes'); + return i18n.t('armorWarrior3Notes', { + con: 7 + }); }), con: 7, value: 65 @@ -9760,7 +9839,9 @@ gear = { return i18n.t('armorWarrior4Text'); }), notes: (function() { - return i18n.t('armorWarrior4Notes'); + return i18n.t('armorWarrior4Notes', { + con: 9 + }); }), con: 9, value: 90 @@ -9770,7 +9851,9 @@ gear = { return i18n.t('armorWarrior5Text'); }), notes: (function() { - return i18n.t('armorWarrior5Notes'); + return i18n.t('armorWarrior5Notes', { + con: 11 + }); }), con: 11, value: 120, @@ -9783,7 +9866,9 @@ gear = { return i18n.t('armorRogue1Text'); }), notes: (function() { - return i18n.t('armorRogue1Notes'); + return i18n.t('armorRogue1Notes', { + per: 6 + }); }), per: 6, value: 30 @@ -9793,7 +9878,9 @@ gear = { return i18n.t('armorRogue2Text'); }), notes: (function() { - return i18n.t('armorRogue2Notes'); + return i18n.t('armorRogue2Notes', { + per: 9 + }); }), per: 9, value: 45 @@ -9803,7 +9890,9 @@ gear = { return i18n.t('armorRogue3Text'); }), notes: (function() { - return i18n.t('armorRogue3Notes'); + return i18n.t('armorRogue3Notes', { + per: 12 + }); }), per: 12, value: 65 @@ -9813,7 +9902,9 @@ gear = { return i18n.t('armorRogue4Text'); }), notes: (function() { - return i18n.t('armorRogue4Notes'); + return i18n.t('armorRogue4Notes', { + per: 15 + }); }), per: 15, value: 90 @@ -9823,7 +9914,9 @@ gear = { return i18n.t('armorRogue5Text'); }), notes: (function() { - return i18n.t('armorRogue5Notes'); + return i18n.t('armorRogue5Notes', { + per: 18 + }); }), per: 18, value: 120, @@ -9836,7 +9929,9 @@ gear = { return i18n.t('armorWizard1Text'); }), notes: (function() { - return i18n.t('armorWizard1Notes'); + return i18n.t('armorWizard1Notes', { + int: 2 + }); }), int: 2, value: 30 @@ -9846,7 +9941,9 @@ gear = { return i18n.t('armorWizard2Text'); }), notes: (function() { - return i18n.t('armorWizard2Notes'); + return i18n.t('armorWizard2Notes', { + int: 4 + }); }), int: 4, value: 45 @@ -9856,7 +9953,9 @@ gear = { return i18n.t('armorWizard3Text'); }), notes: (function() { - return i18n.t('armorWizard3Notes'); + return i18n.t('armorWizard3Notes', { + int: 6 + }); }), int: 6, value: 65 @@ -9866,7 +9965,9 @@ gear = { return i18n.t('armorWizard4Text'); }), notes: (function() { - return i18n.t('armorWizard4Notes'); + return i18n.t('armorWizard4Notes', { + int: 9 + }); }), int: 9, value: 90 @@ -9876,7 +9977,9 @@ gear = { return i18n.t('armorWizard5Text'); }), notes: (function() { - return i18n.t('armorWizard5Notes'); + return i18n.t('armorWizard5Notes', { + int: 12 + }); }), int: 12, value: 120, @@ -9889,7 +9992,9 @@ gear = { return i18n.t('armorHealer1Text'); }), notes: (function() { - return i18n.t('armorHealer1Notes'); + return i18n.t('armorHealer1Notes', { + con: 6 + }); }), con: 6, value: 30 @@ -9899,7 +10004,9 @@ gear = { return i18n.t('armorHealer2Text'); }), notes: (function() { - return i18n.t('armorHealer2Notes'); + return i18n.t('armorHealer2Notes', { + con: 9 + }); }), con: 9, value: 45 @@ -9909,7 +10016,9 @@ gear = { return i18n.t('armorHealer3Text'); }), notes: (function() { - return i18n.t('armorHealer3Notes'); + return i18n.t('armorHealer3Notes', { + con: 12 + }); }), con: 12, value: 65 @@ -9919,7 +10028,9 @@ gear = { return i18n.t('armorHealer4Text'); }), notes: (function() { - return i18n.t('armorHealer4Notes'); + return i18n.t('armorHealer4Notes', { + con: 15 + }); }), con: 15, value: 90 @@ -9929,7 +10040,9 @@ gear = { return i18n.t('armorHealer5Text'); }), notes: (function() { - return i18n.t('armorHealer5Notes'); + return i18n.t('armorHealer5Notes', { + con: 18 + }); }), con: 18, value: 120, @@ -9942,7 +10055,9 @@ gear = { return i18n.t('armorSpecial0Text'); }), notes: (function() { - return i18n.t('armorSpecial0Notes'); + return i18n.t('armorSpecial0Notes', { + con: 20 + }); }), con: 20, value: 150, @@ -9956,7 +10071,9 @@ gear = { return i18n.t('armorSpecial1Text'); }), notes: (function() { - return i18n.t('armorSpecial1Notes'); + return i18n.t('armorSpecial1Notes', { + attrs: 6 + }); }), con: 6, str: 6, @@ -9973,7 +10090,9 @@ gear = { return i18n.t('armorSpecial2Text'); }), notes: (function() { - return i18n.t('armorSpecial2Notes'); + return i18n.t('armorSpecial2Notes', { + attrs: 25 + }); }), int: 25, con: 25, @@ -9997,7 +10116,9 @@ gear = { return i18n.t('armorSpecialYetiText'); }), notes: (function() { - return i18n.t('armorSpecialYetiNotes'); + return i18n.t('armorSpecialYetiNotes', { + con: 9 + }); }), >>>>>>> chore(i18n): move armor items to content.json con: 9, @@ -10017,7 +10138,9 @@ gear = { return i18n.t('armorSpecialSkiText'); }), notes: (function() { - return i18n.t('armorSpecialSkiText'); + return i18n.t('armorSpecialSkiText', { + per: 15 + }); }), >>>>>>> chore(i18n): move armor items to content.json per: 15, @@ -10037,7 +10160,9 @@ gear = { return i18n.t('armorSpecialCandycaneText'); }), notes: (function() { - return i18n.t('armorSpecialCandycaneNotes'); + return i18n.t('armorSpecialCandycaneNotes', { + int: 9 + }); }), >>>>>>> chore(i18n): move armor items to content.json int: 9, @@ -10057,7 +10182,9 @@ gear = { return i18n.t('armorSpecialSnowflakeText'); }), notes: (function() { - return i18n.t('armorSpecialSnowflakeNotes'); + return i18n.t('armorSpecialSnowflakeNotes', { + con: 15 + }); }), >>>>>>> chore(i18n): move armor items to content.json con: 15, diff --git a/locales/en/content.json b/locales/en/content.json index ca5cdcd639..ce5059ad42 100644 --- a/locales/en/content.json +++ b/locales/en/content.json @@ -86,64 +86,64 @@ "armorBase0Notes": "Ordinary clothing. Confers no benefit.", "armorWarrior1Text": "Leather Armor", - "armorWarrior1Notes": "Jerkin of sturdy boiled hide. Increases CON by 3.", + "armorWarrior1Notes": "Jerkin of sturdy boiled hide. Increases CON by <%= con %>.", "armorWarrior2Text": "Chain Mail", - "armorWarrior2Notes": "Armor of interlocked metal rings. Increases CON by 5.", + "armorWarrior2Notes": "Armor of interlocked metal rings. Increases CON by <%= con %>.", "armorWarrior3Text": "Plate Armor", - "armorWarrior3Notes": "Suit of all-encasing steel, the pride of knights. Increases CON by 7.", + "armorWarrior3Notes": "Suit of all-encasing steel, the pride of knights. Increases CON by <%= con %>.", "armorWarrior4Text": "Red Armor", - "armorWarrior4Notes": "Heavy plate glowing with defensive enchantments. Increases CON by 9.", + "armorWarrior4Notes": "Heavy plate glowing with defensive enchantments. Increases CON by <%= con %>.", "armorWarrior5Text": "Golden Armor", - "armorWarrior5Notes": "Looks ceremonial, but no known blade can pierce it. Increases CON by 11.", + "armorWarrior5Notes": "Looks ceremonial, but no known blade can pierce it. Increases CON by <%= con %>.", "armorRogue1Text": "Oiled Leather", - "armorRogue1Notes": "Leather armor treated to reduce noise. Increases PER by 6.", + "armorRogue1Notes": "Leather armor treated to reduce noise. Increases PER by <%= per %>.", "armorRogue2Text": "Black Leather", - "armorRogue2Notes": "Colored with dark dye to blend into shadows. Increases PER by 9.", + "armorRogue2Notes": "Colored with dark dye to blend into shadows. Increases PER by <%= per %>.", "armorRogue3Text": "Camouflage Vest", - "armorRogue3Notes": "Equally discreet in dungeon or wilderness. Increases PER by 12.", + "armorRogue3Notes": "Equally discreet in dungeon or wilderness. Increases PER by <%= per %>.", "armorRogue4Text": "Penumbral Armor", - "armorRogue4Notes": "Wraps the wearer in a veil of twilight. Increases PER by 15.", + "armorRogue4Notes": "Wraps the wearer in a veil of twilight. Increases PER by <%= per %>.", "armorRogue5Text": "Umbral Armor", - "armorRogue5Notes": "Allows stealth in the open in broad daylight. Increases PER by 18.", + "armorRogue5Notes": "Allows stealth in the open in broad daylight. Increases PER by <%= per %>.", "armorWizard1Text": "Magician Robe", - "armorWizard1Notes": "Hedge-mage's outfit. Increases INT by 2.", + "armorWizard1Notes": "Hedge-mage's outfit. Increases INT by <%= int %>.", "armorWizard2Text": "Wizard Robe", - "armorWizard2Notes": "Clothes for a wandering wonder-worker. Increases INT by 4.", + "armorWizard2Notes": "Clothes for a wandering wonder-worker. Increases INT by <%= int %>.", "armorWizard3Text": "Robe of Mysteries", - "armorWizard3Notes": "Denotes initiation into elite secrets. Increases INT by 6.", + "armorWizard3Notes": "Denotes initiation into elite secrets. Increases INT by <%= int %>.", "armorWizard4Text": "Archmage Robe", - "armorWizard4Notes": "Spirits and elementals bow before it. Increases INT by 9.", + "armorWizard4Notes": "Spirits and elementals bow before it. Increases INT by <%= int %>.", "armorWizard5Text": "Royal Magus Robe", - "armorWizard5Notes": "Symbol of the power behind the throne. Increases INT by 12.", + "armorWizard5Notes": "Symbol of the power behind the throne. Increases INT by <%= int %>.", "armorHealer1Text": "Acolyte Robe", - "armorHealer1Notes": "Garment showing humility and purpose. Increases CON by 6.", + "armorHealer1Notes": "Garment showing humility and purpose. Increases CON by <%= con %>.", "armorHealer2Text": "Medic Robe", - "armorHealer2Notes": "Worn by those dedicated to tending the wounded in battle. Increases CON by 9.", + "armorHealer2Notes": "Worn by those dedicated to tending the wounded in battle. Increases CON by <%= con %>.", "armorHealer3Text": "Defender Mantle", - "armorHealer3Notes": "Turns the healer's own magics inward to fend off harm. Increases CON by 12.", + "armorHealer3Notes": "Turns the healer's own magics inward to fend off harm. Increases CON by <%= con %>.", "armorHealer4Text": "Physician Mantle", - "armorHealer4Notes": "Projects authority and dissipates curses. Increases CON by 15.", + "armorHealer4Notes": "Projects authority and dissipates curses. Increases CON by <%= con %>.", "armorHealer5Text": "Royal Mantle", - "armorHealer5Notes": "Attire of those who have saved the lives of kings. Increases CON by 18.", + "armorHealer5Notes": "Attire of those who have saved the lives of kings. Increases CON by <%= con %>.", "armorSpecial0Text": "Shade Armor", - "armorSpecial0Notes": "Screams when struck, for it feels pain in its wearer's place. Increases CON by 20.", + "armorSpecial0Notes": "Screams when struck, for it feels pain in its wearer's place. Increases CON by <%= con %>.", "armorSpecial1Text": "Crystal Armor", - "armorSpecial1Notes": "Its tireless power inures the wearer to mundane discomfort. Increases all attributes by 6.", + "armorSpecial1Notes": "Its tireless power inures the wearer to mundane discomfort. Increases all attributes by <%= attrs %>.", "armorSpecial2Text": "Jean Chalard's Noble Tunic", - "armorSpecial2Notes": "Makes you extra fluffy! Increases CON and INT by 25 each.", + "armorSpecial2Notes": "Makes you extra fluffy! Increases CON and INT by <%= attrs %> each.", "armorSpecialYetiText": "Yeti-Tamer Robe", - "armorSpecialYetiNotes": "Limited Edition 2013 Winter Gear! Fuzzy and fierce. Increases CON by 9.", + "armorSpecialYetiNotes": "Limited Edition 2013 Winter Gear! Fuzzy and fierce. Increases CON by <%= con %>.", "armorSpecialSkiText": "Ski-sassin Parka", - "armorSpecialSkiNotes": "Limited Edition 2013 Winter Gear! Full of secret daggers and ski trail maps. Increases PER by 15.", + "armorSpecialSkiNotes": "Limited Edition 2013 Winter Gear! Full of secret daggers and ski trail maps. Increases PER by <%= per %>.", "armorSpecialCandycaneText": "Candy Cane Robe", - "armorSpecialCandycaneNotes": "Limited Edition 2013 Winter Gear! Spun from sugar and silk. Increases INT by 9.", + "armorSpecialCandycaneNotes": "Limited Edition 2013 Winter Gear! Spun from sugar and silk. Increases INT by <%= int %>.", "armorSpecialSnowflakeText": "Snowflake Robe", - "armorSpecialSnowflakeNotes": "Limited Edition 2013 Winter Gear! A robe to keep you warm, even in a blizzard. Increases CON by 15.", + "armorSpecialSnowflakeNotes": "Limited Edition 2013 Winter Gear! A robe to keep you warm, even in a blizzard. Increases CON by <%= con %>.", "armorSpecialBirthdayText": "Absurd Party Robes", "armorSpecialBirthdayNotes": "As part of the festivities, Absurd Party Robes are available free of charge in the Item Store! Swath yourself in those silly garbs and don your matching hats to celebrate this momentous day." } \ No newline at end of file diff --git a/script/content.coffee b/script/content.coffee index 04c5cfcfd2..c48fe76b9f 100644 --- a/script/content.coffee +++ b/script/content.coffee @@ -98,41 +98,41 @@ gear = 0: text: (-> i18n.t('armorBase0Text')), notes: (-> i18n.t('armorBase0Notes')), value:0 warrior: #0: text: "Plain Clothing", notes:'Ordinary clothing. Confers no benefit.', value:0 - 1: text: (-> i18n.t('armorWarrior1Text')), notes: (-> i18n.t('armorWarrior1Notes')), con: 3, value:30 - 2: text: (-> i18n.t('armorWarrior2Text')), notes: (-> i18n.t('armorWarrior2Notes')), con: 5, value:45 - 3: text: (-> i18n.t('armorWarrior3Text')), notes: (-> i18n.t('armorWarrior3Notes')), con: 7, value:65 - 4: text: (-> i18n.t('armorWarrior4Text')), notes: (-> i18n.t('armorWarrior4Notes')), con: 9, value:90 - 5: text: (-> i18n.t('armorWarrior5Text')), notes: (-> i18n.t('armorWarrior5Notes')), con: 11, value:120, last: true + 1: text: (-> i18n.t('armorWarrior1Text')), notes: (-> i18n.t('armorWarrior1Notes', {con: 3})), con: 3, value:30 + 2: text: (-> i18n.t('armorWarrior2Text')), notes: (-> i18n.t('armorWarrior2Notes', {con: 5})), con: 5, value:45 + 3: text: (-> i18n.t('armorWarrior3Text')), notes: (-> i18n.t('armorWarrior3Notes', {con: 7})), con: 7, value:65 + 4: text: (-> i18n.t('armorWarrior4Text')), notes: (-> i18n.t('armorWarrior4Notes', {con: 9})), con: 9, value:90 + 5: text: (-> i18n.t('armorWarrior5Text')), notes: (-> i18n.t('armorWarrior5Notes', {con: 11})), con: 11, value:120, last: true rogue: #0: text: "Plain Clothing", notes:'Ordinary clothing. Confers no benefit.', value:0 - 1: text: (-> i18n.t('armorRogue1Text')), notes: (-> i18n.t('armorRogue1Notes')), per: 6, value:30 - 2: text: (-> i18n.t('armorRogue2Text')), notes: (-> i18n.t('armorRogue2Notes')), per: 9, value:45 - 3: text: (-> i18n.t('armorRogue3Text')), notes: (-> i18n.t('armorRogue3Notes')), per: 12, value:65 - 4: text: (-> i18n.t('armorRogue4Text')), notes: (-> i18n.t('armorRogue4Notes')), per: 15, value:90 - 5: text: (-> i18n.t('armorRogue5Text')), notes: (-> i18n.t('armorRogue5Notes')), per: 18, value:120, last: true + 1: text: (-> i18n.t('armorRogue1Text')), notes: (-> i18n.t('armorRogue1Notes', {per: 6})), per: 6, value:30 + 2: text: (-> i18n.t('armorRogue2Text')), notes: (-> i18n.t('armorRogue2Notes', {per: 9})), per: 9, value:45 + 3: text: (-> i18n.t('armorRogue3Text')), notes: (-> i18n.t('armorRogue3Notes', {per: 12})), per: 12, value:65 + 4: text: (-> i18n.t('armorRogue4Text')), notes: (-> i18n.t('armorRogue4Notes', {per: 15})), per: 15, value:90 + 5: text: (-> i18n.t('armorRogue5Text')), notes: (-> i18n.t('armorRogue5Notes', {per: 18})), per: 18, value:120, last: true wizard: #0: text: "Apprentice Garb", notes:'For students of magic. Confers no benefit.', value:0 - 1: text: (-> i18n.t('armorWizard1Text')), notes: (-> i18n.t('armorWizard1Notes')), int: 2, value:30 - 2: text: (-> i18n.t('armorWizard2Text')), notes: (-> i18n.t('armorWizard2Notes')), int: 4, value:45 - 3: text: (-> i18n.t('armorWizard3Text')), notes: (-> i18n.t('armorWizard3Notes')), int: 6, value:65 - 4: text: (-> i18n.t('armorWizard4Text')), notes: (-> i18n.t('armorWizard4Notes')), int: 9, value:90 - 5: text: (-> i18n.t('armorWizard5Text')), notes: (-> i18n.t('armorWizard5Notes')), int: 12, value:120, last: true + 1: text: (-> i18n.t('armorWizard1Text')), notes: (-> i18n.t('armorWizard1Notes', {int: 2})), int: 2, value:30 + 2: text: (-> i18n.t('armorWizard2Text')), notes: (-> i18n.t('armorWizard2Notes', {int: 4})), int: 4, value:45 + 3: text: (-> i18n.t('armorWizard3Text')), notes: (-> i18n.t('armorWizard3Notes', {int: 6})), int: 6, value:65 + 4: text: (-> i18n.t('armorWizard4Text')), notes: (-> i18n.t('armorWizard4Notes', {int: 9})), int: 9, value:90 + 5: text: (-> i18n.t('armorWizard5Text')), notes: (-> i18n.t('armorWizard5Notes', {int: 12})), int: 12, value:120, last: true healer: #0: text: "Novice Robe", notes:'For healers in training. Confers no benefit.', value:0 - 1: text: (-> i18n.t('armorHealer1Text')), notes: (-> i18n.t('armorHealer1Notes')), con: 6, value:30 - 2: text: (-> i18n.t('armorHealer2Text')), notes: (-> i18n.t('armorHealer2Notes')), con: 9, value:45 - 3: text: (-> i18n.t('armorHealer3Text')), notes: (-> i18n.t('armorHealer3Notes')), con: 12, value:65 - 4: text: (-> i18n.t('armorHealer4Text')), notes: (-> i18n.t('armorHealer4Notes')), con: 15, value:90 - 5: text: (-> i18n.t('armorHealer5Text')), notes: (-> i18n.t('armorHealer5Notes')), con: 18, value:120, last: true + 1: text: (-> i18n.t('armorHealer1Text')), notes: (-> i18n.t('armorHealer1Notes', {con: 6})), con: 6, value:30 + 2: text: (-> i18n.t('armorHealer2Text')), notes: (-> i18n.t('armorHealer2Notes', {con: 9})), con: 9, value:45 + 3: text: (-> i18n.t('armorHealer3Text')), notes: (-> i18n.t('armorHealer3Notes', {con: 12})), con: 12, value:65 + 4: text: (-> i18n.t('armorHealer4Text')), notes: (-> i18n.t('armorHealer4Notes', {con: 15})), con: 15, value:90 + 5: text: (-> i18n.t('armorHealer5Text')), notes: (-> i18n.t('armorHealer5Notes', {con: 18})), con: 18, value:120, last: true special: - 0: text: (-> i18n.t('armorSpecial0Text')), notes: (-> i18n.t('armorSpecial0Notes')), con: 20, value:150, canOwn: ((u)-> +u.backer?.tier >= 45) - 1: text: (-> i18n.t('armorSpecial1Text')), notes: (-> i18n.t('armorSpecial1Notes')), con: 6, str: 6, per: 6, int: 6, value:170, canOwn: ((u)-> +u.contributor?.level >= 2) - 2: text: (-> i18n.t('armorSpecial2Text')), notes: (-> i18n.t('armorSpecial2Notes')), int: 25, con: 25, value:200, canOwn: ((u)-> +u.backer?.tier >= 300) + 0: text: (-> i18n.t('armorSpecial0Text')), notes: (-> i18n.t('armorSpecial0Notes', {con: 20})), con: 20, value:150, canOwn: ((u)-> +u.backer?.tier >= 45) + 1: text: (-> i18n.t('armorSpecial1Text')), notes: (-> i18n.t('armorSpecial1Notes', {attrs: 6})), con: 6, str: 6, per: 6, int: 6, value:170, canOwn: ((u)-> +u.contributor?.level >= 2) + 2: text: (-> i18n.t('armorSpecial2Text')), notes: (-> i18n.t('armorSpecial2Notes', {attrs: 25})), int: 25, con: 25, value:200, canOwn: ((u)-> +u.backer?.tier >= 300) #Winter event - yeti: event: events.winter, canOwn: ((u)->u.stats.class is 'warrior' ), text: (-> i18n.t('armorSpecialYetiText')), notes: (-> i18n.t('armorSpecialYetiNotes')), con: 9, value:90 - ski: event: events.winter, canOwn: ((u)->u.stats.class is 'rogue' ), text: (-> i18n.t('armorSpecialSkiText')), notes: (-> i18n.t('armorSpecialSkiText')), per: 15, value:90 - candycane: event: events.winter, canOwn: ((u)->u.stats.class is 'wizard' ), text: (-> i18n.t('armorSpecialCandycaneText')), notes: (-> i18n.t('armorSpecialCandycaneNotes')), int: 9, value:90 - snowflake: event: events.winter, canOwn: ((u)->u.stats.class is 'healer' ), text: (-> i18n.t('armorSpecialSnowflakeText')), notes: (-> i18n.t('armorSpecialSnowflakeNotes')), con: 15, value:90 + yeti: event: events.winter, canOwn: ((u)->u.stats.class is 'warrior' ), text: (-> i18n.t('armorSpecialYetiText')), notes: (-> i18n.t('armorSpecialYetiNotes', {con: 9})), con: 9, value:90 + ski: event: events.winter, canOwn: ((u)->u.stats.class is 'rogue' ), text: (-> i18n.t('armorSpecialSkiText')), notes: (-> i18n.t('armorSpecialSkiText', {per: 15})), per: 15, value:90 + candycane: event: events.winter, canOwn: ((u)->u.stats.class is 'wizard' ), text: (-> i18n.t('armorSpecialCandycaneText')), notes: (-> i18n.t('armorSpecialCandycaneNotes', {int: 9})), int: 9, value:90 + snowflake: event: events.winter, canOwn: ((u)->u.stats.class is 'healer' ), text: (-> i18n.t('armorSpecialSnowflakeText')), notes: (-> i18n.t('armorSpecialSnowflakeNotes', {con: 15})), con: 15, value:90 birthday: event: events.birthday, text: (-> i18n.t('armorSpecialBirthdayText')), notes: (-> i18n.t('armorSpecialBirthdayNotes')), value: 0 # Spring Fling springRogue: event: events.spring, specialClass: 'rogue', text: 'Sleek Cat Suit', notes: 'Impeccably groomed. Adds 15 points to PER. Limited Edition 2014 Spring Gear.', value: 90, per: 15