start upgrading eslint
This commit is contained in:
@@ -1,8 +1,8 @@
|
||||
import each from 'lodash/each';
|
||||
|
||||
let achievementsData = {};
|
||||
const achievementsData = {};
|
||||
|
||||
let worldQuestAchievs = {
|
||||
const worldQuestAchievs = {
|
||||
dilatoryQuest: {
|
||||
icon: 'achievement-dilatory',
|
||||
titleKey: 'achievementDilatory',
|
||||
@@ -31,7 +31,7 @@ let worldQuestAchievs = {
|
||||
};
|
||||
Object.assign(achievementsData, worldQuestAchievs);
|
||||
|
||||
let seasonalSpellAchievs = {
|
||||
const seasonalSpellAchievs = {
|
||||
snowball: {
|
||||
icon: 'achievement-snowball',
|
||||
titleKey: 'annoyingFriends',
|
||||
@@ -55,7 +55,7 @@ let seasonalSpellAchievs = {
|
||||
};
|
||||
Object.assign(achievementsData, seasonalSpellAchievs);
|
||||
|
||||
let masterAchievs = {
|
||||
const masterAchievs = {
|
||||
beastMaster: {
|
||||
icon: 'achievement-rat',
|
||||
titleKey: 'beastMasterName',
|
||||
@@ -77,7 +77,7 @@ let masterAchievs = {
|
||||
};
|
||||
Object.assign(achievementsData, masterAchievs);
|
||||
|
||||
let basicAchievs = {
|
||||
const basicAchievs = {
|
||||
partyUp: {
|
||||
icon: 'achievement-partyUp',
|
||||
titleKey: 'partyUpName',
|
||||
@@ -160,7 +160,7 @@ let basicAchievs = {
|
||||
};
|
||||
Object.assign(achievementsData, basicAchievs);
|
||||
|
||||
let specialAchievs = {
|
||||
const specialAchievs = {
|
||||
contributor: {
|
||||
icon: 'achievement-boot',
|
||||
titleKey: 'contribName',
|
||||
@@ -201,7 +201,7 @@ let specialAchievs = {
|
||||
};
|
||||
Object.assign(achievementsData, specialAchievs);
|
||||
|
||||
let holidayAchievs = {
|
||||
const holidayAchievs = {
|
||||
habiticaDays: {
|
||||
icon: 'achievement-habiticaDay',
|
||||
singularTitleKey: 'habiticaDay',
|
||||
@@ -226,7 +226,7 @@ let holidayAchievs = {
|
||||
};
|
||||
Object.assign(achievementsData, holidayAchievs);
|
||||
|
||||
let ultimateGearAchievs = ['healer', 'rogue', 'warrior', 'mage'].reduce((achievs, type) => {
|
||||
const ultimateGearAchievs = ['healer', 'rogue', 'warrior', 'mage'].reduce((achievs, type) => {
|
||||
achievs[`${type}UltimateGear`] = {
|
||||
icon: `achievement-ultimate-${type}`,
|
||||
titleKey: 'ultimGearName',
|
||||
@@ -236,7 +236,7 @@ let ultimateGearAchievs = ['healer', 'rogue', 'warrior', 'mage'].reduce((achievs
|
||||
}, {});
|
||||
Object.assign(achievementsData, ultimateGearAchievs);
|
||||
|
||||
let cardAchievs = ['greeting', 'thankyou', 'nye', 'valentine', 'birthday', 'congrats', 'getwell', 'goodluck'].reduce((achievs, type) => {
|
||||
const cardAchievs = ['greeting', 'thankyou', 'nye', 'valentine', 'birthday', 'congrats', 'getwell', 'goodluck'].reduce((achievs, type) => {
|
||||
achievs[`${type}Cards`] = {
|
||||
icon: `achievement-${type}`,
|
||||
titleKey: `${type}CardAchievementTitle`,
|
||||
|
||||
@@ -2,7 +2,7 @@ import forOwn from 'lodash/forOwn';
|
||||
import t from '../translation';
|
||||
|
||||
/* eslint-disable camelcase */
|
||||
let backgrounds = {
|
||||
const backgrounds = {
|
||||
backgrounds062014: {
|
||||
beach: {
|
||||
text: t('backgroundBeachText'),
|
||||
@@ -948,10 +948,10 @@ let backgrounds = {
|
||||
};
|
||||
/* eslint-enable quote-props */
|
||||
|
||||
let flat = {};
|
||||
const flat = {};
|
||||
|
||||
forOwn(backgrounds, function prefillBackgroundSet (backgroundsInSet, set) {
|
||||
forOwn(backgroundsInSet, function prefillBackground (background, bgKey) {
|
||||
forOwn(backgrounds, (backgroundsInSet, set) => {
|
||||
forOwn(backgroundsInSet, (background, bgKey) => {
|
||||
background.key = bgKey;
|
||||
background.set = set;
|
||||
background.price = 7;
|
||||
|
||||
@@ -4,23 +4,23 @@ import sets from '../sets.js';
|
||||
export default prefill({
|
||||
0: {},
|
||||
1: {},
|
||||
2: {price: 2, set: sets.baseHair1},
|
||||
2: { price: 2, set: sets.baseHair1 },
|
||||
3: {},
|
||||
4: {price: 2, set: sets.baseHair1},
|
||||
5: {price: 2, set: sets.baseHair1},
|
||||
6: {price: 2, set: sets.baseHair1},
|
||||
7: {price: 2, set: sets.baseHair1},
|
||||
8: {price: 2, set: sets.baseHair1},
|
||||
9: {price: 2, set: sets.baseHair2},
|
||||
10: {price: 2, set: sets.baseHair2},
|
||||
11: {price: 2, set: sets.baseHair2},
|
||||
12: {price: 2, set: sets.baseHair2},
|
||||
13: {price: 2, set: sets.baseHair2},
|
||||
14: {price: 2, set: sets.baseHair2},
|
||||
15: {price: 2, set: sets.baseHair3},
|
||||
16: {price: 2, set: sets.baseHair3},
|
||||
17: {price: 2, set: sets.baseHair3},
|
||||
18: {price: 2, set: sets.baseHair3},
|
||||
19: {price: 2, set: sets.baseHair3},
|
||||
20: {price: 2, set: sets.baseHair3},
|
||||
4: { price: 2, set: sets.baseHair1 },
|
||||
5: { price: 2, set: sets.baseHair1 },
|
||||
6: { price: 2, set: sets.baseHair1 },
|
||||
7: { price: 2, set: sets.baseHair1 },
|
||||
8: { price: 2, set: sets.baseHair1 },
|
||||
9: { price: 2, set: sets.baseHair2 },
|
||||
10: { price: 2, set: sets.baseHair2 },
|
||||
11: { price: 2, set: sets.baseHair2 },
|
||||
12: { price: 2, set: sets.baseHair2 },
|
||||
13: { price: 2, set: sets.baseHair2 },
|
||||
14: { price: 2, set: sets.baseHair2 },
|
||||
15: { price: 2, set: sets.baseHair3 },
|
||||
16: { price: 2, set: sets.baseHair3 },
|
||||
17: { price: 2, set: sets.baseHair3 },
|
||||
18: { price: 2, set: sets.baseHair3 },
|
||||
19: { price: 2, set: sets.baseHair3 },
|
||||
20: { price: 2, set: sets.baseHair3 },
|
||||
});
|
||||
|
||||
@@ -3,7 +3,7 @@ import prefill from '../prefill.js';
|
||||
|
||||
export default prefill({
|
||||
0: {},
|
||||
1: {price: 2, set: sets.facialHair},
|
||||
2: {price: 2, set: sets.facialHair},
|
||||
3: {price: 2, set: sets.facialHair},
|
||||
1: { price: 2, set: sets.facialHair },
|
||||
2: { price: 2, set: sets.facialHair },
|
||||
3: { price: 2, set: sets.facialHair },
|
||||
});
|
||||
|
||||
@@ -8,43 +8,43 @@ export default prefill({
|
||||
red: {},
|
||||
black: {},
|
||||
|
||||
candycane: {price: 2, set: sets.winterHairColors},
|
||||
frost: {price: 2, set: sets.winterHairColors},
|
||||
winternight: {price: 2, set: sets.winterHairColors},
|
||||
holly: {price: 2, set: sets.winterHairColors},
|
||||
candycane: { price: 2, set: sets.winterHairColors },
|
||||
frost: { price: 2, set: sets.winterHairColors },
|
||||
winternight: { price: 2, set: sets.winterHairColors },
|
||||
holly: { price: 2, set: sets.winterHairColors },
|
||||
|
||||
pblue: {price: 2, set: sets.pastelHairColors},
|
||||
pgreen: {price: 2, set: sets.pastelHairColors},
|
||||
porange: {price: 2, set: sets.pastelHairColors},
|
||||
ppink: {price: 2, set: sets.pastelHairColors},
|
||||
ppurple: {price: 2, set: sets.pastelHairColors},
|
||||
pyellow: {price: 2, set: sets.pastelHairColors},
|
||||
pblue: { price: 2, set: sets.pastelHairColors },
|
||||
pgreen: { price: 2, set: sets.pastelHairColors },
|
||||
porange: { price: 2, set: sets.pastelHairColors },
|
||||
ppink: { price: 2, set: sets.pastelHairColors },
|
||||
ppurple: { price: 2, set: sets.pastelHairColors },
|
||||
pyellow: { price: 2, set: sets.pastelHairColors },
|
||||
|
||||
rainbow: {price: 2, set: sets.rainbowHairColors},
|
||||
yellow: {price: 2, set: sets.rainbowHairColors},
|
||||
green: {price: 2, set: sets.rainbowHairColors},
|
||||
purple: {price: 2, set: sets.rainbowHairColors},
|
||||
blue: {price: 2, set: sets.rainbowHairColors},
|
||||
TRUred: {price: 2, set: sets.rainbowHairColors},
|
||||
rainbow: { price: 2, set: sets.rainbowHairColors },
|
||||
yellow: { price: 2, set: sets.rainbowHairColors },
|
||||
green: { price: 2, set: sets.rainbowHairColors },
|
||||
purple: { price: 2, set: sets.rainbowHairColors },
|
||||
blue: { price: 2, set: sets.rainbowHairColors },
|
||||
TRUred: { price: 2, set: sets.rainbowHairColors },
|
||||
|
||||
pblue2: {price: 2, set: sets.shimmerHairColors},
|
||||
pgreen2: {price: 2, set: sets.shimmerHairColors},
|
||||
porange2: {price: 2, set: sets.shimmerHairColors},
|
||||
ppink2: {price: 2, set: sets.shimmerHairColors},
|
||||
ppurple2: {price: 2, set: sets.shimmerHairColors},
|
||||
pyellow2: {price: 2, set: sets.shimmerHairColors},
|
||||
pblue2: { price: 2, set: sets.shimmerHairColors },
|
||||
pgreen2: { price: 2, set: sets.shimmerHairColors },
|
||||
porange2: { price: 2, set: sets.shimmerHairColors },
|
||||
ppink2: { price: 2, set: sets.shimmerHairColors },
|
||||
ppurple2: { price: 2, set: sets.shimmerHairColors },
|
||||
pyellow2: { price: 2, set: sets.shimmerHairColors },
|
||||
|
||||
candycorn: {price: 2, set: sets.hauntedHairColors},
|
||||
ghostwhite: {price: 2, set: sets.hauntedHairColors},
|
||||
halloween: {price: 2, set: sets.hauntedHairColors},
|
||||
midnight: {price: 2, set: sets.hauntedHairColors},
|
||||
pumpkin: {price: 2, set: sets.hauntedHairColors},
|
||||
zombie: {price: 2, set: sets.hauntedHairColors},
|
||||
candycorn: { price: 2, set: sets.hauntedHairColors },
|
||||
ghostwhite: { price: 2, set: sets.hauntedHairColors },
|
||||
halloween: { price: 2, set: sets.hauntedHairColors },
|
||||
midnight: { price: 2, set: sets.hauntedHairColors },
|
||||
pumpkin: { price: 2, set: sets.hauntedHairColors },
|
||||
zombie: { price: 2, set: sets.hauntedHairColors },
|
||||
|
||||
aurora: {price: 2, set: sets.winteryHairColors},
|
||||
festive: {price: 2, set: sets.winteryHairColors},
|
||||
hollygreen: {price: 2, set: sets.winteryHairColors},
|
||||
peppermint: {price: 2, set: sets.winteryHairColors},
|
||||
snowy: {price: 2, set: sets.winteryHairColors},
|
||||
winterstar: {price: 2, set: sets.winteryHairColors},
|
||||
aurora: { price: 2, set: sets.winteryHairColors },
|
||||
festive: { price: 2, set: sets.winteryHairColors },
|
||||
hollygreen: { price: 2, set: sets.winteryHairColors },
|
||||
peppermint: { price: 2, set: sets.winteryHairColors },
|
||||
snowy: { price: 2, set: sets.winteryHairColors },
|
||||
winterstar: { price: 2, set: sets.winteryHairColors },
|
||||
});
|
||||
|
||||
@@ -3,6 +3,6 @@ import prefill from '../prefill.js';
|
||||
|
||||
export default prefill({
|
||||
0: {},
|
||||
1: {price: 2, set: sets.facialHair},
|
||||
2: {price: 2, set: sets.facialHair},
|
||||
1: { price: 2, set: sets.facialHair },
|
||||
2: { price: 2, set: sets.facialHair },
|
||||
});
|
||||
|
||||
@@ -3,10 +3,10 @@ import sets from '../sets.js';
|
||||
|
||||
export default prefill({
|
||||
0: {},
|
||||
1: {price: 2, set: sets.topHair},
|
||||
2: {price: 2, set: sets.topHair},
|
||||
3: {price: 2, set: sets.topHair},
|
||||
4: {price: 2, set: sets.topHair},
|
||||
5: {price: 2, set: sets.topHair},
|
||||
6: {price: 2, set: sets.topHair},
|
||||
1: { price: 2, set: sets.topHair },
|
||||
2: { price: 2, set: sets.topHair },
|
||||
3: { price: 2, set: sets.topHair },
|
||||
4: { price: 2, set: sets.topHair },
|
||||
5: { price: 2, set: sets.topHair },
|
||||
6: { price: 2, set: sets.topHair },
|
||||
});
|
||||
|
||||
@@ -1,17 +1,17 @@
|
||||
import forOwn from 'lodash/forOwn';
|
||||
import clone from 'lodash/clone';
|
||||
import hair from './hair';
|
||||
import shirts from './shirt.js';
|
||||
import skins from './skin.js';
|
||||
import sizes from './size.js';
|
||||
import backgrounds from './backgrounds.js';
|
||||
import chairs from './chair.js';
|
||||
import forOwn from 'lodash/forOwn';
|
||||
import clone from 'lodash/clone';
|
||||
|
||||
let reorderedBgs = {};
|
||||
const reorderedBgs = {};
|
||||
|
||||
forOwn(backgrounds, function restructureBackgroundSet (value, key) {
|
||||
forOwn(value, function restructureBackground (bgObject, bgKey) {
|
||||
let bg = clone(bgObject);
|
||||
forOwn(backgrounds, (value, key) => {
|
||||
forOwn(value, (bgObject, bgKey) => {
|
||||
const bg = clone(bgObject);
|
||||
bg.set = {
|
||||
text: key,
|
||||
key,
|
||||
@@ -22,7 +22,7 @@ forOwn(backgrounds, function restructureBackgroundSet (value, key) {
|
||||
});
|
||||
|
||||
|
||||
let appearances = {
|
||||
const appearances = {
|
||||
hair,
|
||||
shirt: shirts,
|
||||
size: sizes,
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
import forOwn from 'lodash/forOwn';
|
||||
|
||||
export default function prefillAppearances (obj) {
|
||||
forOwn(obj, function prefillAppearance (value, key) {
|
||||
forOwn(obj, (value, key) => {
|
||||
value.key = key;
|
||||
if (!value.price) {
|
||||
value.price = 0;
|
||||
|
||||
@@ -2,22 +2,36 @@ import t from '../translation';
|
||||
import prefill from './prefill.js';
|
||||
|
||||
export default prefill({
|
||||
baseHair1: {setPrice: 5, text: t('hairSet1')},
|
||||
baseHair2: {setPrice: 5, text: t('hairSet2')},
|
||||
baseHair3: {setPrice: 5, text: t('hairSet3')},
|
||||
facialHair: {setPrice: 5, text: t('bodyFacialHair')},
|
||||
specialShirts: {setPrice: 5, text: t('specialShirts')},
|
||||
winterHairColors: {setPrice: 5, availableUntil: '2016-01-01'},
|
||||
pastelHairColors: {setPrice: 5, availableUntil: '2016-01-01'},
|
||||
rainbowHairColors: {setPrice: 5, text: t('rainbowColors')},
|
||||
shimmerHairColors: {setPrice: 5, availableFrom: '2019-04-09', availableUntil: '2019-05-02', text: t('shimmerColors')},
|
||||
hauntedHairColors: {setPrice: 5, availableFrom: '2018-10-11', availableUntil: '2018-11-02', text: t('hauntedColors')},
|
||||
winteryHairColors: {setPrice: 5, availableFrom: '2019-01-08', availableUntil: '2019-02-02', text: t('winteryColors')},
|
||||
rainbowSkins: {setPrice: 5, text: t('rainbowSkins')},
|
||||
animalSkins: {setPrice: 5, text: t('animalSkins')},
|
||||
pastelSkins: {setPrice: 5, availableFrom: '2019-04-09', availableUntil: '2019-05-02', text: t('pastelSkins')},
|
||||
spookySkins: {setPrice: 5, availableUntil: '2016-01-01', text: t('spookySkins')},
|
||||
supernaturalSkins: {setPrice: 5, availableFrom: '2018-10-11', availableUntil: '2018-11-02', text: t('supernaturalSkins')},
|
||||
splashySkins: {setPrice: 5, availableFrom: '2019-07-02', availableUntil: '2019-08-02', text: t('splashySkins')},
|
||||
winterySkins: {setPrice: 5, availableFrom: '2019-01-08', availableUntil: '2019-02-02', text: t('winterySkins')},
|
||||
baseHair1: { setPrice: 5, text: t('hairSet1') },
|
||||
baseHair2: { setPrice: 5, text: t('hairSet2') },
|
||||
baseHair3: { setPrice: 5, text: t('hairSet3') },
|
||||
facialHair: { setPrice: 5, text: t('bodyFacialHair') },
|
||||
specialShirts: { setPrice: 5, text: t('specialShirts') },
|
||||
winterHairColors: { setPrice: 5, availableUntil: '2016-01-01' },
|
||||
pastelHairColors: { setPrice: 5, availableUntil: '2016-01-01' },
|
||||
rainbowHairColors: { setPrice: 5, text: t('rainbowColors') },
|
||||
shimmerHairColors: {
|
||||
setPrice: 5, availableFrom: '2019-04-09', availableUntil: '2019-05-02', text: t('shimmerColors'),
|
||||
},
|
||||
hauntedHairColors: {
|
||||
setPrice: 5, availableFrom: '2018-10-11', availableUntil: '2018-11-02', text: t('hauntedColors'),
|
||||
},
|
||||
winteryHairColors: {
|
||||
setPrice: 5, availableFrom: '2019-01-08', availableUntil: '2019-02-02', text: t('winteryColors'),
|
||||
},
|
||||
rainbowSkins: { setPrice: 5, text: t('rainbowSkins') },
|
||||
animalSkins: { setPrice: 5, text: t('animalSkins') },
|
||||
pastelSkins: {
|
||||
setPrice: 5, availableFrom: '2019-04-09', availableUntil: '2019-05-02', text: t('pastelSkins'),
|
||||
},
|
||||
spookySkins: { setPrice: 5, availableUntil: '2016-01-01', text: t('spookySkins') },
|
||||
supernaturalSkins: {
|
||||
setPrice: 5, availableFrom: '2018-10-11', availableUntil: '2018-11-02', text: t('supernaturalSkins'),
|
||||
},
|
||||
splashySkins: {
|
||||
setPrice: 5, availableFrom: '2019-07-02', availableUntil: '2019-08-02', text: t('splashySkins'),
|
||||
},
|
||||
winterySkins: {
|
||||
setPrice: 5, availableFrom: '2019-01-08', availableUntil: '2019-02-02', text: t('winterySkins'),
|
||||
},
|
||||
});
|
||||
|
||||
@@ -9,15 +9,15 @@ export default prefill({
|
||||
white: {},
|
||||
yellow: {},
|
||||
|
||||
convict: {price: 2, set: sets.specialShirts},
|
||||
cross: {price: 2, set: sets.specialShirts},
|
||||
fire: {price: 2, set: sets.specialShirts},
|
||||
horizon: {price: 2, set: sets.specialShirts},
|
||||
ocean: {price: 2, set: sets.specialShirts},
|
||||
purple: {price: 2, set: sets.specialShirts},
|
||||
rainbow: {price: 2, set: sets.specialShirts},
|
||||
redblue: {price: 2, set: sets.specialShirts},
|
||||
thunder: {price: 2, set: sets.specialShirts},
|
||||
tropical: {price: 2, set: sets.specialShirts},
|
||||
zombie: {price: 2, set: sets.specialShirts},
|
||||
convict: { price: 2, set: sets.specialShirts },
|
||||
cross: { price: 2, set: sets.specialShirts },
|
||||
fire: { price: 2, set: sets.specialShirts },
|
||||
horizon: { price: 2, set: sets.specialShirts },
|
||||
ocean: { price: 2, set: sets.specialShirts },
|
||||
purple: { price: 2, set: sets.specialShirts },
|
||||
rainbow: { price: 2, set: sets.specialShirts },
|
||||
redblue: { price: 2, set: sets.specialShirts },
|
||||
thunder: { price: 2, set: sets.specialShirts },
|
||||
tropical: { price: 2, set: sets.specialShirts },
|
||||
zombie: { price: 2, set: sets.specialShirts },
|
||||
});
|
||||
|
||||
@@ -12,66 +12,66 @@ export default prefill({
|
||||
'c3e1dc': {},
|
||||
'6bd049': {},
|
||||
|
||||
'eb052b': {price: 2, set: sets.rainbowSkins},
|
||||
'f69922': {price: 2, set: sets.rainbowSkins},
|
||||
'f5d70f': {price: 2, set: sets.rainbowSkins},
|
||||
'0ff591': {price: 2, set: sets.rainbowSkins},
|
||||
'2b43f6': {price: 2, set: sets.rainbowSkins},
|
||||
'd7a9f7': {price: 2, set: sets.rainbowSkins},
|
||||
'800ed0': {price: 2, set: sets.rainbowSkins},
|
||||
'rainbow': {price: 2, set: sets.rainbowSkins},
|
||||
'eb052b': { price: 2, set: sets.rainbowSkins },
|
||||
'f69922': { price: 2, set: sets.rainbowSkins },
|
||||
'f5d70f': { price: 2, set: sets.rainbowSkins },
|
||||
'0ff591': { price: 2, set: sets.rainbowSkins },
|
||||
'2b43f6': { price: 2, set: sets.rainbowSkins },
|
||||
'd7a9f7': { price: 2, set: sets.rainbowSkins },
|
||||
'800ed0': { price: 2, set: sets.rainbowSkins },
|
||||
'rainbow': { price: 2, set: sets.rainbowSkins },
|
||||
|
||||
'bear': {price: 2, set: sets.animalSkins},
|
||||
'cactus': {price: 2, set: sets.animalSkins},
|
||||
'fox': {price: 2, set: sets.animalSkins},
|
||||
'lion': {price: 2, set: sets.animalSkins},
|
||||
'panda': {price: 2, set: sets.animalSkins},
|
||||
'pig': {price: 2, set: sets.animalSkins},
|
||||
'tiger': {price: 2, set: sets.animalSkins},
|
||||
'wolf': {price: 2, set: sets.animalSkins},
|
||||
'bear': { price: 2, set: sets.animalSkins },
|
||||
'cactus': { price: 2, set: sets.animalSkins },
|
||||
'fox': { price: 2, set: sets.animalSkins },
|
||||
'lion': { price: 2, set: sets.animalSkins },
|
||||
'panda': { price: 2, set: sets.animalSkins },
|
||||
'pig': { price: 2, set: sets.animalSkins },
|
||||
'tiger': { price: 2, set: sets.animalSkins },
|
||||
'wolf': { price: 2, set: sets.animalSkins },
|
||||
|
||||
'pastelPink': {price: 2, set: sets.pastelSkins},
|
||||
'pastelOrange': {price: 2, set: sets.pastelSkins},
|
||||
'pastelYellow': {price: 2, set: sets.pastelSkins},
|
||||
'pastelGreen': {price: 2, set: sets.pastelSkins},
|
||||
'pastelBlue': {price: 2, set: sets.pastelSkins},
|
||||
'pastelPurple': {price: 2, set: sets.pastelSkins},
|
||||
'pastelRainbowChevron': {price: 2, set: sets.pastelSkins},
|
||||
'pastelRainbowDiagonal': {price: 2, set: sets.pastelSkins},
|
||||
'pastelPink': { price: 2, set: sets.pastelSkins },
|
||||
'pastelOrange': { price: 2, set: sets.pastelSkins },
|
||||
'pastelYellow': { price: 2, set: sets.pastelSkins },
|
||||
'pastelGreen': { price: 2, set: sets.pastelSkins },
|
||||
'pastelBlue': { price: 2, set: sets.pastelSkins },
|
||||
'pastelPurple': { price: 2, set: sets.pastelSkins },
|
||||
'pastelRainbowChevron': { price: 2, set: sets.pastelSkins },
|
||||
'pastelRainbowDiagonal': { price: 2, set: sets.pastelSkins },
|
||||
|
||||
'monster': {price: 2, set: sets.spookySkins},
|
||||
'pumpkin': {price: 2, set: sets.spookySkins},
|
||||
'skeleton': {price: 2, set: sets.spookySkins},
|
||||
'zombie': {price: 2, set: sets.spookySkins},
|
||||
'ghost': {price: 2, set: sets.spookySkins},
|
||||
'shadow': {price: 2, set: sets.spookySkins},
|
||||
'monster': { price: 2, set: sets.spookySkins },
|
||||
'pumpkin': { price: 2, set: sets.spookySkins },
|
||||
'skeleton': { price: 2, set: sets.spookySkins },
|
||||
'zombie': { price: 2, set: sets.spookySkins },
|
||||
'ghost': { price: 2, set: sets.spookySkins },
|
||||
'shadow': { price: 2, set: sets.spookySkins },
|
||||
|
||||
'candycorn': {price: 2, set: sets.supernaturalSkins},
|
||||
'ogre': {price: 2, set: sets.supernaturalSkins},
|
||||
'pumpkin2': {price: 2, set: sets.supernaturalSkins},
|
||||
'reptile': {price: 2, set: sets.supernaturalSkins},
|
||||
'shadow2': {price: 2, set: sets.supernaturalSkins},
|
||||
'skeleton2': {price: 2, set: sets.supernaturalSkins},
|
||||
'transparent': {price: 2, set: sets.supernaturalSkins},
|
||||
'zombie2': {price: 2, set: sets.supernaturalSkins},
|
||||
'candycorn': { price: 2, set: sets.supernaturalSkins },
|
||||
'ogre': { price: 2, set: sets.supernaturalSkins },
|
||||
'pumpkin2': { price: 2, set: sets.supernaturalSkins },
|
||||
'reptile': { price: 2, set: sets.supernaturalSkins },
|
||||
'shadow2': { price: 2, set: sets.supernaturalSkins },
|
||||
'skeleton2': { price: 2, set: sets.supernaturalSkins },
|
||||
'transparent': { price: 2, set: sets.supernaturalSkins },
|
||||
'zombie2': { price: 2, set: sets.supernaturalSkins },
|
||||
|
||||
'clownfish': {price: 2, set: sets.splashySkins},
|
||||
'deepocean': {price: 2, set: sets.splashySkins},
|
||||
'merblue': {price: 2, set: sets.splashySkins},
|
||||
'mergold': {price: 2, set: sets.splashySkins},
|
||||
'mergreen': {price: 2, set: sets.splashySkins},
|
||||
'merruby': {price: 2, set: sets.splashySkins},
|
||||
'shark': {price: 2, set: sets.splashySkins},
|
||||
'tropicalwater': {price: 2, set: sets.splashySkins},
|
||||
'clownfish': { price: 2, set: sets.splashySkins },
|
||||
'deepocean': { price: 2, set: sets.splashySkins },
|
||||
'merblue': { price: 2, set: sets.splashySkins },
|
||||
'mergold': { price: 2, set: sets.splashySkins },
|
||||
'mergreen': { price: 2, set: sets.splashySkins },
|
||||
'merruby': { price: 2, set: sets.splashySkins },
|
||||
'shark': { price: 2, set: sets.splashySkins },
|
||||
'tropicalwater': { price: 2, set: sets.splashySkins },
|
||||
|
||||
'aurora': {price: 2, set: sets.winterySkins},
|
||||
'dapper': {price: 2, set: sets.winterySkins},
|
||||
'festive': {price: 2, set: sets.winterySkins},
|
||||
'holly': {price: 2, set: sets.winterySkins},
|
||||
'polar': {price: 2, set: sets.winterySkins},
|
||||
'sugar': {price: 2, set: sets.winterySkins},
|
||||
'snowy': {price: 2, set: sets.winterySkins},
|
||||
'winterstar': {price: 2, set: sets.winterySkins},
|
||||
'aurora': { price: 2, set: sets.winterySkins },
|
||||
'dapper': { price: 2, set: sets.winterySkins },
|
||||
'festive': { price: 2, set: sets.winterySkins },
|
||||
'holly': { price: 2, set: sets.winterySkins },
|
||||
'polar': { price: 2, set: sets.winterySkins },
|
||||
'sugar': { price: 2, set: sets.winterySkins },
|
||||
'snowy': { price: 2, set: sets.winterySkins },
|
||||
'winterstar': { price: 2, set: sets.winterySkins },
|
||||
|
||||
/* eslint-enable quote-props */
|
||||
});
|
||||
|
||||
@@ -203,19 +203,19 @@ export const GEAR_TYPES = [
|
||||
];
|
||||
|
||||
export const ITEM_LIST = {
|
||||
weapon: { localeKey: 'weapon', isEquipment: true },
|
||||
armor: { localeKey: 'armor', isEquipment: true },
|
||||
head: { localeKey: 'headgear', isEquipment: true },
|
||||
shield: { localeKey: 'offhand', isEquipment: true },
|
||||
back: { localeKey: 'back', isEquipment: true },
|
||||
body: { localeKey: 'body', isEquipment: true },
|
||||
headAccessory: { localeKey: 'headAccessory', isEquipment: true },
|
||||
eyewear: { localeKey: 'eyewear', isEquipment: true },
|
||||
weapon: { localeKey: 'weapon', isEquipment: true },
|
||||
armor: { localeKey: 'armor', isEquipment: true },
|
||||
head: { localeKey: 'headgear', isEquipment: true },
|
||||
shield: { localeKey: 'offhand', isEquipment: true },
|
||||
back: { localeKey: 'back', isEquipment: true },
|
||||
body: { localeKey: 'body', isEquipment: true },
|
||||
headAccessory: { localeKey: 'headAccessory', isEquipment: true },
|
||||
eyewear: { localeKey: 'eyewear', isEquipment: true },
|
||||
hatchingPotions: { localeKey: 'hatchingPotion', isEquipment: false },
|
||||
premiumHatchingPotions: { localeKey: 'hatchingPotion', isEquipment: false },
|
||||
eggs: { localeKey: 'eggSingular', isEquipment: false },
|
||||
quests: { localeKey: 'quest', isEquipment: false },
|
||||
food: { localeKey: 'foodTextThe', isEquipment: false },
|
||||
eggs: { localeKey: 'eggSingular', isEquipment: false },
|
||||
quests: { localeKey: 'quest', isEquipment: false },
|
||||
food: { localeKey: 'foodTextThe', isEquipment: false },
|
||||
Saddle: { localeKey: 'foodSaddleText', isEquipment: false },
|
||||
bundles: { localeKey: 'discountBundle', isEquipment: false },
|
||||
};
|
||||
@@ -264,6 +264,10 @@ export const QUEST_SERIES_ACHIEVEMENTS = {
|
||||
};
|
||||
|
||||
export const ANIMAL_COLOR_ACHIEVEMENTS = [
|
||||
{color: 'Base', petAchievement: 'backToBasics', petNotificationType: 'ACHIEVEMENT_BACK_TO_BASICS', mountAchievement: 'allYourBase', mountNotificationType: 'ACHIEVEMENT_ALL_YOUR_BASE'},
|
||||
{color: 'Desert', petAchievement: 'dustDevil', petNotificationType: 'ACHIEVEMENT_DUST_DEVIL', mountAchievement: 'aridAuthority', mountNotificationType: 'ACHIEVEMENT_ARID_AUTHORITY'},
|
||||
{
|
||||
color: 'Base', petAchievement: 'backToBasics', petNotificationType: 'ACHIEVEMENT_BACK_TO_BASICS', mountAchievement: 'allYourBase', mountNotificationType: 'ACHIEVEMENT_ALL_YOUR_BASE',
|
||||
},
|
||||
{
|
||||
color: 'Desert', petAchievement: 'dustDevil', petNotificationType: 'ACHIEVEMENT_DUST_DEVIL', mountAchievement: 'aridAuthority', mountNotificationType: 'ACHIEVEMENT_ARID_AUTHORITY',
|
||||
},
|
||||
];
|
||||
|
||||
@@ -19,13 +19,11 @@ function applyEggDefaults (set, config) {
|
||||
}
|
||||
|
||||
function hasQuestAchievementFunction (key) {
|
||||
return (user) => {
|
||||
return user.achievements.quests &&
|
||||
user.achievements.quests[key] > 0;
|
||||
};
|
||||
return user => user.achievements.quests
|
||||
&& user.achievements.quests[key] > 0;
|
||||
}
|
||||
|
||||
let drops = {
|
||||
const drops = {
|
||||
Wolf: {
|
||||
text: t('dropEggWolfText'),
|
||||
mountText: t('dropEggWolfMountText'),
|
||||
@@ -73,7 +71,7 @@ let drops = {
|
||||
},
|
||||
};
|
||||
|
||||
let quests = {
|
||||
const quests = {
|
||||
Gryphon: {
|
||||
text: t('questEggGryphonText'),
|
||||
mountText: t('questEggGryphonMountText'),
|
||||
@@ -150,11 +148,11 @@ let quests = {
|
||||
mountText: t('questEggTRexMountText'),
|
||||
adjective: t('questEggTRexAdjective'),
|
||||
canBuy (user) {
|
||||
let questAchievements = user.achievements.quests;
|
||||
const questAchievements = user.achievements.quests;
|
||||
|
||||
return questAchievements && (
|
||||
questAchievements.trex > 0 ||
|
||||
questAchievements.trex_undead > 0
|
||||
questAchievements.trex > 0
|
||||
|| questAchievements.trex_undead > 0
|
||||
);
|
||||
},
|
||||
},
|
||||
@@ -406,7 +404,7 @@ applyEggDefaults(quests, {
|
||||
},
|
||||
});
|
||||
|
||||
let all = assign({}, drops, quests);
|
||||
const all = assign({}, drops, quests);
|
||||
|
||||
export {
|
||||
drops,
|
||||
|
||||
@@ -2,7 +2,7 @@ import t from './translation';
|
||||
|
||||
const NUMBER_OF_QUESTIONS = 12;
|
||||
|
||||
let faq = {
|
||||
const faq = {
|
||||
questions: [],
|
||||
stillNeedHelp: {
|
||||
ios: t('iosFaqStillNeedHelp'),
|
||||
@@ -11,7 +11,7 @@ let faq = {
|
||||
};
|
||||
|
||||
for (let i = 0; i <= NUMBER_OF_QUESTIONS; i++) {
|
||||
let question = {
|
||||
const question = {
|
||||
question: t(`faqQuestion${i}`),
|
||||
ios: t(`iosFaqAnswer${i}`),
|
||||
android: t(`androidFaqAnswer${i}`),
|
||||
|
||||
@@ -1,15 +1,15 @@
|
||||
import {armor as baseArmor} from './sets/base';
|
||||
import { armor as baseArmor } from './sets/base';
|
||||
|
||||
import {armor as warriorArmor} from './sets/warrior';
|
||||
import {armor as rogueArmor} from './sets/rogue';
|
||||
import {armor as healerArmor} from './sets/healer';
|
||||
import {armor as wizardArmor} from './sets/wizard';
|
||||
import { armor as warriorArmor } from './sets/warrior';
|
||||
import { armor as rogueArmor } from './sets/rogue';
|
||||
import { armor as healerArmor } from './sets/healer';
|
||||
import { armor as wizardArmor } from './sets/wizard';
|
||||
|
||||
import {armor as specialArmor} from './sets/special';
|
||||
import {armor as mysteryArmor} from './sets/mystery';
|
||||
import {armor as armoireArmor} from './sets/armoire';
|
||||
import { armor as specialArmor } from './sets/special';
|
||||
import { armor as mysteryArmor } from './sets/mystery';
|
||||
import { armor as armoireArmor } from './sets/armoire';
|
||||
|
||||
let armor = {
|
||||
const armor = {
|
||||
base: baseArmor,
|
||||
|
||||
warrior: warriorArmor,
|
||||
|
||||
@@ -1,13 +1,12 @@
|
||||
import {back as baseBack} from './sets/base';
|
||||
import { back as baseBack } from './sets/base';
|
||||
|
||||
import {back as mysteryBack} from './sets/mystery';
|
||||
import {back as specialBack} from './sets/special';
|
||||
import { back as mysteryBack } from './sets/mystery';
|
||||
import { back as specialBack } from './sets/special';
|
||||
|
||||
let back = {
|
||||
const back = {
|
||||
base: baseBack,
|
||||
mystery: mysteryBack,
|
||||
special: specialBack,
|
||||
};
|
||||
|
||||
export default back;
|
||||
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
import {body as baseBody} from './sets/base';
|
||||
import { body as baseBody } from './sets/base';
|
||||
|
||||
import {body as mysteryBody} from './sets/mystery';
|
||||
import {body as specialBody} from './sets/special';
|
||||
import {body as armoireBody} from './sets/armoire';
|
||||
import { body as mysteryBody } from './sets/mystery';
|
||||
import { body as specialBody } from './sets/special';
|
||||
import { body as armoireBody } from './sets/armoire';
|
||||
|
||||
let body = {
|
||||
const body = {
|
||||
base: baseBody,
|
||||
mystery: mysteryBody,
|
||||
special: specialBody,
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
import {eyewear as baseEyewear} from './sets/base';
|
||||
import { eyewear as baseEyewear } from './sets/base';
|
||||
|
||||
import {eyewear as armoireEyewear} from './sets/armoire';
|
||||
import {eyewear as mysteryEyewear} from './sets/mystery';
|
||||
import {eyewear as specialEyewear} from './sets/special';
|
||||
import { eyewear as armoireEyewear } from './sets/armoire';
|
||||
import { eyewear as mysteryEyewear } from './sets/mystery';
|
||||
import { eyewear as specialEyewear } from './sets/special';
|
||||
|
||||
let eyewear = {
|
||||
const eyewear = {
|
||||
base: baseEyewear,
|
||||
special: specialEyewear,
|
||||
mystery: mysteryEyewear,
|
||||
|
||||
@@ -1,7 +1,5 @@
|
||||
import isBoolean from 'lodash/isBoolean';
|
||||
|
||||
export function ownsItem (item) {
|
||||
return (user) => {
|
||||
return item && isBoolean(user.items.gear.owned[item]);
|
||||
};
|
||||
return user => item && isBoolean(user.items.gear.owned[item]);
|
||||
}
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
import {headAccessory as baseHeadAccessory} from './sets/base';
|
||||
import { headAccessory as baseHeadAccessory } from './sets/base';
|
||||
|
||||
import {headAccessory as specialHeadAccessory} from './sets/special';
|
||||
import {headAccessory as mysteryHeadAccessory} from './sets/mystery';
|
||||
import {headAccessory as armoireHeadAccessory} from './sets/armoire';
|
||||
import { headAccessory as specialHeadAccessory } from './sets/special';
|
||||
import { headAccessory as mysteryHeadAccessory } from './sets/mystery';
|
||||
import { headAccessory as armoireHeadAccessory } from './sets/armoire';
|
||||
|
||||
let headAccessory = {
|
||||
const headAccessory = {
|
||||
base: baseHeadAccessory,
|
||||
special: specialHeadAccessory,
|
||||
mystery: mysteryHeadAccessory,
|
||||
@@ -12,4 +12,3 @@ let headAccessory = {
|
||||
};
|
||||
|
||||
export default headAccessory;
|
||||
|
||||
|
||||
@@ -1,15 +1,15 @@
|
||||
import {head as baseHead} from './sets/base';
|
||||
import { head as baseHead } from './sets/base';
|
||||
|
||||
import {head as healerHead} from './sets/healer';
|
||||
import {head as rogueHead} from './sets/rogue';
|
||||
import {head as warriorHead} from './sets/warrior';
|
||||
import {head as wizardHead} from './sets/wizard';
|
||||
import { head as healerHead } from './sets/healer';
|
||||
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';
|
||||
import {head as specialHead} from './sets/special';
|
||||
import { head as armoireHead } from './sets/armoire';
|
||||
import { head as mysteryHead } from './sets/mystery';
|
||||
import { head as specialHead } from './sets/special';
|
||||
|
||||
let head = {
|
||||
const head = {
|
||||
base: baseHead,
|
||||
|
||||
warrior: warriorHead,
|
||||
|
||||
@@ -17,7 +17,7 @@ import body from './body';
|
||||
import headAccessory from './head-accessory';
|
||||
import eyewear from './eyewear';
|
||||
|
||||
let gear = {
|
||||
const gear = {
|
||||
weapon,
|
||||
armor,
|
||||
head,
|
||||
@@ -32,15 +32,15 @@ let gear = {
|
||||
The gear is exported as a tree (defined above), and a flat list (eg, {weapon_healer_1: .., shield_special_0: ...}) since
|
||||
they are needed in different forms at different points in the app
|
||||
*/
|
||||
let flat = {};
|
||||
const flat = {};
|
||||
|
||||
each(GEAR_TYPES, (type) => {
|
||||
let allGearTypes = CLASSES.concat(['base', 'special', 'mystery', 'armoire']);
|
||||
each(GEAR_TYPES, type => {
|
||||
const allGearTypes = CLASSES.concat(['base', 'special', 'mystery', 'armoire']);
|
||||
|
||||
each(allGearTypes, (klass) => {
|
||||
each(allGearTypes, klass => {
|
||||
each(gear[type][klass], (item, index) => {
|
||||
let key = `${type}_${klass}_${index}`;
|
||||
let set = `${klass}-${index}`;
|
||||
const key = `${type}_${klass}_${index}`;
|
||||
const set = `${klass}-${index}`;
|
||||
|
||||
defaults(item, {
|
||||
type,
|
||||
@@ -52,21 +52,17 @@ each(GEAR_TYPES, (type) => {
|
||||
int: 0,
|
||||
per: 0,
|
||||
con: 0,
|
||||
canBuy: () => {
|
||||
return false;
|
||||
},
|
||||
canBuy: () => false,
|
||||
});
|
||||
|
||||
if (item.event) {
|
||||
let canOwnFuncTrue = () => {
|
||||
return true;
|
||||
};
|
||||
let _canOwn = item.canOwn || canOwnFuncTrue;
|
||||
const canOwnFuncTrue = () => true;
|
||||
const _canOwn = item.canOwn || canOwnFuncTrue;
|
||||
|
||||
item.canOwn = (user) => {
|
||||
let userHasOwnedItem = ownsItem(key)(user);
|
||||
let eventIsCurrent = moment().isAfter(item.event.start) && moment().isBefore(item.event.end);
|
||||
let compatibleWithUserClass = item.specialClass ? user.stats.class === item.specialClass : true;
|
||||
item.canOwn = user => {
|
||||
const userHasOwnedItem = ownsItem(key)(user);
|
||||
const eventIsCurrent = moment().isAfter(item.event.start) && moment().isBefore(item.event.end);
|
||||
const compatibleWithUserClass = item.specialClass ? user.stats.class === item.specialClass : true;
|
||||
|
||||
return _canOwn(user) && (userHasOwnedItem || eventIsCurrent) && compatibleWithUserClass;
|
||||
};
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
import { ownsItem } from '../gear-helper';
|
||||
import t from '../../translation';
|
||||
|
||||
let armor = {
|
||||
const armor = {
|
||||
lunarArmor: {
|
||||
text: t('armorArmoireLunarArmorText'),
|
||||
notes: t('armorArmoireLunarArmorNotes', { str: 7, int: 7 }),
|
||||
@@ -500,7 +500,7 @@ let armor = {
|
||||
},
|
||||
};
|
||||
|
||||
let body = {
|
||||
const body = {
|
||||
cozyScarf: {
|
||||
text: t('bodyArmoireCozyScarfText'),
|
||||
notes: t('bodyArmoireCozyScarfNotes', { attrs: 5 }),
|
||||
@@ -512,7 +512,7 @@ let body = {
|
||||
},
|
||||
};
|
||||
|
||||
let eyewear = {
|
||||
const eyewear = {
|
||||
plagueDoctorMask: {
|
||||
text: t('eyewearArmoirePlagueDoctorMaskText'),
|
||||
notes: t('eyewearArmoirePlagueDoctorMaskNotes', { attrs: 5 }),
|
||||
@@ -531,7 +531,7 @@ let eyewear = {
|
||||
},
|
||||
};
|
||||
|
||||
let head = {
|
||||
const head = {
|
||||
lunarCrown: {
|
||||
text: t('headArmoireLunarCrownText'),
|
||||
notes: t('headArmoireLunarCrownNotes', { con: 7, per: 7 }),
|
||||
@@ -1022,7 +1022,7 @@ let head = {
|
||||
},
|
||||
};
|
||||
|
||||
let shield = {
|
||||
const shield = {
|
||||
gladiatorShield: {
|
||||
text: t('shieldArmoireGladiatorShieldText'),
|
||||
notes: t('shieldArmoireGladiatorShieldNotes', { con: 5, str: 5 }),
|
||||
@@ -1301,7 +1301,7 @@ let shield = {
|
||||
},
|
||||
};
|
||||
|
||||
let headAccessory = {
|
||||
const headAccessory = {
|
||||
comicalArrow: {
|
||||
text: t('headAccessoryArmoireComicalArrowText'),
|
||||
notes: t('headAccessoryArmoireComicalArrowNotes', { str: 10 }),
|
||||
@@ -1319,7 +1319,7 @@ let headAccessory = {
|
||||
},
|
||||
};
|
||||
|
||||
let weapon = {
|
||||
const weapon = {
|
||||
basicCrossbow: {
|
||||
text: t('weaponArmoireBasicCrossbowText'),
|
||||
notes: t('weaponArmoireBasicCrossbowNotes', { str: 5, per: 5, con: 5 }),
|
||||
@@ -1755,4 +1755,4 @@ export {
|
||||
headAccessory,
|
||||
shield,
|
||||
weapon,
|
||||
};
|
||||
};
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
import t from '../../translation';
|
||||
|
||||
let armor = {
|
||||
const armor = {
|
||||
0: {
|
||||
text: t('armorBase0Text'),
|
||||
notes: t('armorBase0Notes'),
|
||||
@@ -8,7 +8,7 @@ let armor = {
|
||||
},
|
||||
};
|
||||
|
||||
let back = {
|
||||
const back = {
|
||||
0: {
|
||||
text: t('backBase0Text'),
|
||||
notes: t('backBase0Notes'),
|
||||
@@ -16,7 +16,7 @@ let back = {
|
||||
},
|
||||
};
|
||||
|
||||
let body = {
|
||||
const body = {
|
||||
0: {
|
||||
text: t('bodyBase0Text'),
|
||||
notes: t('bodyBase0Notes'),
|
||||
@@ -24,7 +24,7 @@ let body = {
|
||||
},
|
||||
};
|
||||
|
||||
let eyewear = {
|
||||
const eyewear = {
|
||||
0: {
|
||||
text: t('eyewearBase0Text'),
|
||||
notes: t('eyewearBase0Notes'),
|
||||
@@ -33,7 +33,7 @@ let eyewear = {
|
||||
},
|
||||
};
|
||||
|
||||
let head = {
|
||||
const head = {
|
||||
0: {
|
||||
text: t('headBase0Text'),
|
||||
notes: t('headBase0Notes'),
|
||||
@@ -41,7 +41,7 @@ let head = {
|
||||
},
|
||||
};
|
||||
|
||||
let headAccessory = {
|
||||
const headAccessory = {
|
||||
0: {
|
||||
text: t('headAccessoryBase0Text'),
|
||||
notes: t('headAccessoryBase0Notes'),
|
||||
@@ -50,7 +50,7 @@ let headAccessory = {
|
||||
},
|
||||
};
|
||||
|
||||
let shield = {
|
||||
const shield = {
|
||||
0: {
|
||||
text: t('shieldBase0Text'),
|
||||
notes: t('shieldBase0Notes'),
|
||||
@@ -58,7 +58,7 @@ let shield = {
|
||||
},
|
||||
};
|
||||
|
||||
let weapon = {
|
||||
const weapon = {
|
||||
0: {
|
||||
text: t('weaponBase0Text'),
|
||||
notes: t('weaponBase0Notes'),
|
||||
@@ -75,4 +75,4 @@ export {
|
||||
headAccessory,
|
||||
shield,
|
||||
weapon,
|
||||
};
|
||||
};
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
import t from '../../translation';
|
||||
|
||||
let armor = {
|
||||
const armor = {
|
||||
1: {
|
||||
text: t('armorHealer1Text'),
|
||||
notes: t('armorHealer1Notes', { con: 6 }),
|
||||
@@ -34,7 +34,7 @@ let armor = {
|
||||
},
|
||||
};
|
||||
|
||||
let head = {
|
||||
const head = {
|
||||
1: {
|
||||
text: t('headHealer1Text'),
|
||||
notes: t('headHealer1Notes', { int: 2 }),
|
||||
@@ -68,7 +68,7 @@ let head = {
|
||||
},
|
||||
};
|
||||
|
||||
let shield = {
|
||||
const shield = {
|
||||
1: {
|
||||
text: t('shieldHealer1Text'),
|
||||
notes: t('shieldHealer1Notes', { con: 2 }),
|
||||
@@ -102,7 +102,7 @@ let shield = {
|
||||
},
|
||||
};
|
||||
|
||||
let weapon = {
|
||||
const weapon = {
|
||||
|
||||
0: {
|
||||
text: t('weaponHealer0Text'),
|
||||
@@ -153,4 +153,4 @@ export {
|
||||
head,
|
||||
shield,
|
||||
weapon,
|
||||
};
|
||||
};
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
import t from '../../translation';
|
||||
|
||||
let armor = {
|
||||
const armor = {
|
||||
201402: {
|
||||
text: t('armorMystery201402Text'),
|
||||
notes: t('armorMystery201402Notes'),
|
||||
@@ -279,7 +279,7 @@ let armor = {
|
||||
},
|
||||
};
|
||||
|
||||
let back = {
|
||||
const back = {
|
||||
201402: {
|
||||
text: t('backMystery201402Text'),
|
||||
notes: t('backMystery201402Notes'),
|
||||
@@ -390,7 +390,7 @@ let back = {
|
||||
},
|
||||
};
|
||||
|
||||
let body = {
|
||||
const body = {
|
||||
201705: {
|
||||
text: t('bodyMystery201705Text'),
|
||||
notes: t('bodyMystery201705Notes'),
|
||||
@@ -417,7 +417,7 @@ let body = {
|
||||
},
|
||||
};
|
||||
|
||||
let eyewear = {
|
||||
const eyewear = {
|
||||
201503: {
|
||||
text: t('eyewearMystery201503Text'),
|
||||
notes: t('eyewearMystery201503Notes'),
|
||||
@@ -474,7 +474,7 @@ let eyewear = {
|
||||
},
|
||||
};
|
||||
|
||||
let head = {
|
||||
const head = {
|
||||
201402: {
|
||||
text: t('headMystery201402Text'),
|
||||
notes: t('headMystery201402Notes'),
|
||||
@@ -771,7 +771,7 @@ let head = {
|
||||
},
|
||||
};
|
||||
|
||||
let headAccessory = {
|
||||
const headAccessory = {
|
||||
201403: {
|
||||
text: t('headAccessoryMystery201403Text'),
|
||||
notes: t('headAccessoryMystery201403Notes'),
|
||||
@@ -846,7 +846,7 @@ let headAccessory = {
|
||||
},
|
||||
};
|
||||
|
||||
let shield = {
|
||||
const shield = {
|
||||
201601: {
|
||||
text: t('shieldMystery201601Text'),
|
||||
notes: t('shieldMystery201601Notes'),
|
||||
@@ -897,7 +897,7 @@ let shield = {
|
||||
},
|
||||
};
|
||||
|
||||
let weapon = {
|
||||
const weapon = {
|
||||
201411: {
|
||||
text: t('weaponMystery201411Text'),
|
||||
notes: t('weaponMystery201411Notes'),
|
||||
@@ -951,4 +951,4 @@ export {
|
||||
headAccessory,
|
||||
shield,
|
||||
weapon,
|
||||
};
|
||||
};
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
import t from '../../translation';
|
||||
|
||||
let armor = {
|
||||
const armor = {
|
||||
1: {
|
||||
text: t('armorRogue1Text'),
|
||||
notes: t('armorRogue1Notes', { per: 6 }),
|
||||
@@ -34,7 +34,7 @@ let armor = {
|
||||
},
|
||||
};
|
||||
|
||||
let head = {
|
||||
const head = {
|
||||
1: {
|
||||
text: t('headRogue1Text'),
|
||||
notes: t('headRogue1Notes', { per: 2 }),
|
||||
@@ -68,7 +68,7 @@ let head = {
|
||||
},
|
||||
};
|
||||
|
||||
let weapon = {
|
||||
const weapon = {
|
||||
0: {
|
||||
text: t('weaponRogue0Text'),
|
||||
notes: t('weaponRogue0Notes'),
|
||||
@@ -114,7 +114,7 @@ let weapon = {
|
||||
},
|
||||
};
|
||||
|
||||
let shield = {
|
||||
const shield = {
|
||||
0: {
|
||||
text: t('weaponRogue0Text'),
|
||||
notes: t('weaponRogue0Notes'),
|
||||
@@ -165,4 +165,4 @@ export {
|
||||
head,
|
||||
shield,
|
||||
weapon,
|
||||
};
|
||||
};
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,16 +1,14 @@
|
||||
import { ownsItem } from '../../gear-helper';
|
||||
import t from '../../../translation';
|
||||
|
||||
let isBackerOfLevel = (tierRequirement, ownedItem) => {
|
||||
return (user) => {
|
||||
let backer = user.backer;
|
||||
let tier = Number(backer && backer.tier);
|
||||
const isBackerOfLevel = (tierRequirement, ownedItem) => user => {
|
||||
const { backer } = user;
|
||||
const tier = Number(backer && backer.tier);
|
||||
|
||||
return tier >= tierRequirement || ownsItem(ownedItem)(user);
|
||||
};
|
||||
return tier >= tierRequirement || ownsItem(ownedItem)(user);
|
||||
};
|
||||
|
||||
let armorSpecial0 = {
|
||||
const armorSpecial0 = {
|
||||
text: t('armorSpecial0Text'),
|
||||
notes: t('armorSpecial0Notes', { con: 20 }),
|
||||
con: 20,
|
||||
@@ -18,7 +16,7 @@ let armorSpecial0 = {
|
||||
canOwn: isBackerOfLevel(45, 'armor_special_0'),
|
||||
};
|
||||
|
||||
let armorSpecial2 = {
|
||||
const armorSpecial2 = {
|
||||
text: t('armorSpecial2Text'),
|
||||
notes: t('armorSpecial2Notes', { attrs: 25 }),
|
||||
int: 25,
|
||||
@@ -27,7 +25,7 @@ let armorSpecial2 = {
|
||||
canOwn: isBackerOfLevel(300, 'armor_special_2'),
|
||||
};
|
||||
|
||||
let headSpecial0 = {
|
||||
const headSpecial0 = {
|
||||
text: t('headSpecial0Text'),
|
||||
notes: t('headSpecial0Notes', { int: 20 }),
|
||||
int: 20,
|
||||
@@ -35,7 +33,7 @@ let headSpecial0 = {
|
||||
canOwn: isBackerOfLevel(45, 'head_special_0'),
|
||||
};
|
||||
|
||||
let headSpecial2 = {
|
||||
const headSpecial2 = {
|
||||
text: t('headSpecial2Text'),
|
||||
notes: t('headSpecial2Notes', { attrs: 25 }),
|
||||
int: 25,
|
||||
@@ -44,7 +42,7 @@ let headSpecial2 = {
|
||||
canOwn: isBackerOfLevel(300, 'head_special_2'),
|
||||
};
|
||||
|
||||
let shieldSpecial0 = {
|
||||
const shieldSpecial0 = {
|
||||
text: t('shieldSpecial0Text'),
|
||||
notes: t('shieldSpecial0Notes', { per: 20 }),
|
||||
per: 20,
|
||||
@@ -52,7 +50,7 @@ let shieldSpecial0 = {
|
||||
canOwn: isBackerOfLevel(45, 'shield_special_0'),
|
||||
};
|
||||
|
||||
let weaponSpecial0 = {
|
||||
const weaponSpecial0 = {
|
||||
text: t('weaponSpecial0Text'),
|
||||
notes: t('weaponSpecial0Notes', { str: 20 }),
|
||||
str: 20,
|
||||
@@ -60,7 +58,7 @@ let weaponSpecial0 = {
|
||||
canOwn: isBackerOfLevel(70, 'weapon_special_0'),
|
||||
};
|
||||
|
||||
let weaponSpecial2 = {
|
||||
const weaponSpecial2 = {
|
||||
text: t('weaponSpecial2Text'),
|
||||
notes: t('weaponSpecial2Notes', { attrs: 25 }),
|
||||
str: 25,
|
||||
@@ -69,7 +67,7 @@ let weaponSpecial2 = {
|
||||
canOwn: isBackerOfLevel(300, 'weapon_special_2'),
|
||||
};
|
||||
|
||||
let weaponSpecial3 = {
|
||||
const weaponSpecial3 = {
|
||||
text: t('weaponSpecial3Text'),
|
||||
notes: t('weaponSpecial3Notes', { attrs: 17 }),
|
||||
str: 17,
|
||||
@@ -88,4 +86,4 @@ export {
|
||||
weaponSpecial0,
|
||||
weaponSpecial2,
|
||||
weaponSpecial3,
|
||||
};
|
||||
};
|
||||
|
||||
@@ -1,16 +1,14 @@
|
||||
import { ownsItem } from '../../gear-helper';
|
||||
import t from '../../../translation';
|
||||
|
||||
let isContributorOfLevel = (tierRequirement, ownedItem) => {
|
||||
return (user) => {
|
||||
let contributor = user.contributor;
|
||||
let tier = contributor && contributor.level;
|
||||
const isContributorOfLevel = (tierRequirement, ownedItem) => user => {
|
||||
const { contributor } = user;
|
||||
const tier = contributor && contributor.level;
|
||||
|
||||
return Number(tier) >= tierRequirement || ownsItem(ownedItem)(user);
|
||||
};
|
||||
return Number(tier) >= tierRequirement || ownsItem(ownedItem)(user);
|
||||
};
|
||||
|
||||
let armorSpecial1 = {
|
||||
const armorSpecial1 = {
|
||||
text: t('armorSpecial1Text'),
|
||||
notes: t('armorSpecial1Notes', { attrs: 6 }),
|
||||
con: 6,
|
||||
@@ -21,7 +19,7 @@ let armorSpecial1 = {
|
||||
canOwn: isContributorOfLevel(2, 'armor_special_1'),
|
||||
};
|
||||
|
||||
let headSpecial1 = {
|
||||
const headSpecial1 = {
|
||||
text: t('headSpecial1Text'),
|
||||
notes: t('headSpecial1Notes', { attrs: 6 }),
|
||||
con: 6,
|
||||
@@ -32,7 +30,7 @@ let headSpecial1 = {
|
||||
canOwn: isContributorOfLevel(3, 'head_special_1'),
|
||||
};
|
||||
|
||||
let shieldSpecial1 = {
|
||||
const shieldSpecial1 = {
|
||||
text: t('shieldSpecial1Text'),
|
||||
notes: t('shieldSpecial1Notes', { attrs: 6 }),
|
||||
con: 6,
|
||||
@@ -43,7 +41,7 @@ let shieldSpecial1 = {
|
||||
canOwn: isContributorOfLevel(5, 'shield_special_1'),
|
||||
};
|
||||
|
||||
let weaponSpecial1 = {
|
||||
const weaponSpecial1 = {
|
||||
text: t('weaponSpecial1Text'),
|
||||
notes: t('weaponSpecial1Notes', { attrs: 6 }),
|
||||
str: 6,
|
||||
@@ -54,15 +52,15 @@ let weaponSpecial1 = {
|
||||
canOwn: isContributorOfLevel(4, 'weapon_special_1'),
|
||||
};
|
||||
|
||||
let weaponSpecialCritical = {
|
||||
const weaponSpecialCritical = {
|
||||
text: t('weaponSpecialCriticalText'),
|
||||
notes: t('weaponSpecialCriticalNotes', { attrs: 40 }),
|
||||
str: 40,
|
||||
per: 40,
|
||||
value: 200,
|
||||
canOwn: (user) => {
|
||||
let hasCriticalFlag = user.contributor && user.contributor.critical;
|
||||
let alreadyHasItem = ownsItem('weapon_special_critical')(user);
|
||||
canOwn: user => {
|
||||
const hasCriticalFlag = user.contributor && user.contributor.critical;
|
||||
const alreadyHasItem = ownsItem('weapon_special_critical')(user);
|
||||
|
||||
return hasCriticalFlag || alreadyHasItem;
|
||||
},
|
||||
@@ -74,4 +72,4 @@ export {
|
||||
shieldSpecial1,
|
||||
weaponSpecial1,
|
||||
weaponSpecialCritical,
|
||||
};
|
||||
};
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
import t from '../../../translation';
|
||||
|
||||
let armorSpecialTakeThis = {
|
||||
const armorSpecialTakeThis = {
|
||||
text: t('armorSpecialTakeThisText'),
|
||||
notes: t('armorSpecialTakeThisNotes', {attrs: 5}),
|
||||
notes: t('armorSpecialTakeThisNotes', { attrs: 5 }),
|
||||
value: 0,
|
||||
con: 5,
|
||||
int: 5,
|
||||
@@ -10,9 +10,9 @@ let armorSpecialTakeThis = {
|
||||
str: 5,
|
||||
};
|
||||
|
||||
let backSpecialTakeThis = {
|
||||
const backSpecialTakeThis = {
|
||||
text: t('backSpecialTakeThisText'),
|
||||
notes: t('backSpecialTakeThisNotes', {attrs: 1}),
|
||||
notes: t('backSpecialTakeThisNotes', { attrs: 1 }),
|
||||
value: 0,
|
||||
con: 1,
|
||||
int: 1,
|
||||
@@ -20,9 +20,9 @@ let backSpecialTakeThis = {
|
||||
str: 1,
|
||||
};
|
||||
|
||||
let bodySpecialTakeThis = {
|
||||
const bodySpecialTakeThis = {
|
||||
text: t('bodySpecialTakeThisText'),
|
||||
notes: t('bodySpecialTakeThisNotes', {attrs: 1}),
|
||||
notes: t('bodySpecialTakeThisNotes', { attrs: 1 }),
|
||||
value: 0,
|
||||
con: 1,
|
||||
int: 1,
|
||||
@@ -30,9 +30,9 @@ let bodySpecialTakeThis = {
|
||||
str: 1,
|
||||
};
|
||||
|
||||
let headSpecialTakeThis = {
|
||||
const headSpecialTakeThis = {
|
||||
text: t('headSpecialTakeThisText'),
|
||||
notes: t('headSpecialTakeThisNotes', {attrs: 5}),
|
||||
notes: t('headSpecialTakeThisNotes', { attrs: 5 }),
|
||||
value: 0,
|
||||
con: 5,
|
||||
int: 5,
|
||||
@@ -40,9 +40,9 @@ let headSpecialTakeThis = {
|
||||
str: 5,
|
||||
};
|
||||
|
||||
let shieldSpecialTakeThis = {
|
||||
const shieldSpecialTakeThis = {
|
||||
text: t('shieldSpecialTakeThisText'),
|
||||
notes: t('shieldSpecialTakeThisNotes', {attrs: 5}),
|
||||
notes: t('shieldSpecialTakeThisNotes', { attrs: 5 }),
|
||||
value: 0,
|
||||
con: 5,
|
||||
int: 5,
|
||||
@@ -50,9 +50,9 @@ let shieldSpecialTakeThis = {
|
||||
str: 5,
|
||||
};
|
||||
|
||||
let weaponSpecialTakeThis = {
|
||||
const weaponSpecialTakeThis = {
|
||||
text: t('weaponSpecialTakeThisText'),
|
||||
notes: t('weaponSpecialTakeThisNotes', {attrs: 5}),
|
||||
notes: t('weaponSpecialTakeThisNotes', { attrs: 5 }),
|
||||
value: 0,
|
||||
con: 5,
|
||||
int: 5,
|
||||
@@ -67,4 +67,4 @@ export {
|
||||
headSpecialTakeThis,
|
||||
shieldSpecialTakeThis,
|
||||
weaponSpecialTakeThis,
|
||||
};
|
||||
};
|
||||
|
||||
@@ -1,48 +1,48 @@
|
||||
import t from '../../../translation';
|
||||
|
||||
let backSpecialWonderconRed = {
|
||||
const backSpecialWonderconRed = {
|
||||
text: t('backSpecialWonderconRedText'),
|
||||
notes: t('backSpecialWonderconRedNotes'),
|
||||
value: 0,
|
||||
mystery: 'wondercon',
|
||||
};
|
||||
|
||||
let backSpecialWonderconBlack = {
|
||||
const backSpecialWonderconBlack = {
|
||||
text: t('backSpecialWonderconBlackText'),
|
||||
notes: t('backSpecialWonderconBlackNotes'),
|
||||
value: 0,
|
||||
mystery: 'wondercon',
|
||||
};
|
||||
|
||||
let bodySpecialWonderconRed = {
|
||||
const bodySpecialWonderconRed = {
|
||||
text: t('bodySpecialWonderconRedText'),
|
||||
notes: t('bodySpecialWonderconRedNotes'),
|
||||
value: 0,
|
||||
mystery: 'wondercon',
|
||||
};
|
||||
|
||||
let bodySpecialWonderconGold = {
|
||||
const bodySpecialWonderconGold = {
|
||||
text: t('bodySpecialWonderconGoldText'),
|
||||
notes: t('bodySpecialWonderconGoldNotes'),
|
||||
value: 0,
|
||||
mystery: 'wondercon',
|
||||
};
|
||||
|
||||
let bodySpecialWonderconBlack = {
|
||||
const bodySpecialWonderconBlack = {
|
||||
text: t('bodySpecialWonderconBlackText'),
|
||||
notes: t('bodySpecialWonderconBlackNotes'),
|
||||
value: 0,
|
||||
mystery: 'wondercon',
|
||||
};
|
||||
|
||||
let eyewearSpecialWonderconRed = {
|
||||
const eyewearSpecialWonderconRed = {
|
||||
text: t('eyewearSpecialWonderconRedText'),
|
||||
notes: t('eyewearSpecialWonderconRedNotes'),
|
||||
value: 0,
|
||||
mystery: 'wondercon',
|
||||
};
|
||||
|
||||
let eyewearSpecialWonderconBlack = {
|
||||
const eyewearSpecialWonderconBlack = {
|
||||
text: t('eyewearSpecialWonderconBlackText'),
|
||||
notes: t('eyewearSpecialWonderconBlackNotes'),
|
||||
value: 0,
|
||||
@@ -57,4 +57,4 @@ export {
|
||||
bodySpecialWonderconBlack,
|
||||
eyewearSpecialWonderconRed,
|
||||
eyewearSpecialWonderconBlack,
|
||||
};
|
||||
};
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
import t from '../../translation';
|
||||
|
||||
let armor = {
|
||||
const armor = {
|
||||
1: {
|
||||
text: t('armorWarrior1Text'),
|
||||
notes: t('armorWarrior1Notes', { con: 3 }),
|
||||
@@ -34,7 +34,7 @@ let armor = {
|
||||
},
|
||||
};
|
||||
|
||||
let head = {
|
||||
const head = {
|
||||
1: {
|
||||
text: t('headWarrior1Text'),
|
||||
notes: t('headWarrior1Notes', { str: 2 }),
|
||||
@@ -68,7 +68,7 @@ let head = {
|
||||
},
|
||||
};
|
||||
|
||||
let shield = {
|
||||
const shield = {
|
||||
1: {
|
||||
text: t('shieldWarrior1Text'),
|
||||
notes: t('shieldWarrior1Notes', { con: 2 }),
|
||||
@@ -102,10 +102,12 @@ let shield = {
|
||||
},
|
||||
};
|
||||
|
||||
let weapon = {
|
||||
const weapon = {
|
||||
0: {
|
||||
text: t('weaponWarrior0Text'),
|
||||
notes: t('weaponWarrior0Notes'), value: 1 },
|
||||
notes: t('weaponWarrior0Notes'),
|
||||
value: 1,
|
||||
},
|
||||
1: {
|
||||
text: t('weaponWarrior1Text'),
|
||||
notes: t('weaponWarrior1Notes', { str: 3 }),
|
||||
@@ -150,4 +152,4 @@ export {
|
||||
head,
|
||||
shield,
|
||||
weapon,
|
||||
};
|
||||
};
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
import t from '../../translation';
|
||||
|
||||
let armor = {
|
||||
const armor = {
|
||||
1: {
|
||||
text: t('armorWizard1Text'),
|
||||
notes: t('armorWizard1Notes', { int: 2 }),
|
||||
@@ -34,7 +34,7 @@ let armor = {
|
||||
},
|
||||
};
|
||||
|
||||
let head = {
|
||||
const head = {
|
||||
1: {
|
||||
text: t('headWizard1Text'),
|
||||
notes: t('headWizard1Notes', { per: 2 }),
|
||||
@@ -68,18 +68,20 @@ let head = {
|
||||
},
|
||||
};
|
||||
|
||||
let shield = {
|
||||
const shield = {
|
||||
// Wizard's weapons are two handed
|
||||
// And thus do not have shields
|
||||
// But the content structure still expects an object
|
||||
};
|
||||
|
||||
let weapon = {
|
||||
const weapon = {
|
||||
|
||||
0: {
|
||||
twoHanded: true,
|
||||
text: t('weaponWizard0Text'),
|
||||
notes: t('weaponWizard0Notes'), value: 0 },
|
||||
notes: t('weaponWizard0Notes'),
|
||||
value: 0,
|
||||
},
|
||||
1: {
|
||||
twoHanded: true,
|
||||
text: t('weaponWizard1Text'),
|
||||
@@ -136,4 +138,4 @@ export {
|
||||
head,
|
||||
shield,
|
||||
weapon,
|
||||
};
|
||||
};
|
||||
|
||||
@@ -1,19 +1,19 @@
|
||||
import cloneDeep from 'lodash/cloneDeep';
|
||||
|
||||
import {shield as baseShield} from './sets/base';
|
||||
import { shield as baseShield } from './sets/base';
|
||||
|
||||
import {shield as healerShield} from './sets/healer';
|
||||
import {weapon as rogueWeapon} from './sets/rogue';
|
||||
import {shield as warriorShield} from './sets/warrior';
|
||||
import {shield as wizardShield} from './sets/wizard';
|
||||
import { shield as healerShield } from './sets/healer';
|
||||
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';
|
||||
import {shield as specialShield} from './sets/special';
|
||||
import { shield as armoireShield } from './sets/armoire';
|
||||
import { shield as mysteryShield } from './sets/mystery';
|
||||
import { shield as specialShield } from './sets/special';
|
||||
|
||||
let rogueShield = cloneDeep(rogueWeapon);
|
||||
const rogueShield = cloneDeep(rogueWeapon);
|
||||
|
||||
let shield = {
|
||||
const shield = {
|
||||
base: baseShield,
|
||||
|
||||
warrior: warriorShield,
|
||||
|
||||
@@ -1,17 +1,17 @@
|
||||
import t from '../translation';
|
||||
|
||||
import {weapon as baseWeapon} from './sets/base';
|
||||
import { weapon as baseWeapon } from './sets/base';
|
||||
|
||||
import {weapon as healerWeapon} from './sets/healer';
|
||||
import {weapon as rogueWeapon} from './sets/rogue';
|
||||
import {weapon as warriorWeapon} from './sets/warrior';
|
||||
import {weapon as wizardWeapon} from './sets/wizard';
|
||||
import { weapon as healerWeapon } from './sets/healer';
|
||||
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';
|
||||
import {weapon as specialWeapon} from './sets/special';
|
||||
import { weapon as armoireWeapon } from './sets/armoire';
|
||||
import { weapon as mysteryWeapon } from './sets/mystery';
|
||||
import { weapon as specialWeapon } from './sets/special';
|
||||
|
||||
let weapon = {
|
||||
const weapon = {
|
||||
base: baseWeapon,
|
||||
|
||||
warrior: warriorWeapon,
|
||||
@@ -27,31 +27,31 @@ let weapon = {
|
||||
// Add Two Handed message to all weapons
|
||||
const rtlLanguages = [
|
||||
'ae', /* Avestan */
|
||||
'ar', /* 'العربية', Arabic */
|
||||
'arc', /* Aramaic */
|
||||
'bcc', /* 'بلوچی مکرانی', Southern Balochi */
|
||||
'bqi', /* 'بختياري', Bakthiari */
|
||||
'ckb', /* 'Soranî / کوردی', Sorani */
|
||||
'dv', /* Dhivehi */
|
||||
'fa', /* 'فارسی', Persian */
|
||||
'glk', /* 'گیلکی', Gilaki */
|
||||
'he', /* 'עברית', Hebrew */
|
||||
'ku', /* 'Kurdî / كوردی', Kurdish */
|
||||
'mzn', /* 'مازِرونی', Mazanderani */
|
||||
'nqo', /* N'Ko */
|
||||
'pnb', /* 'پنجابی', Western Punjabi */
|
||||
'ps', /* 'پښتو', Pashto, */
|
||||
'sd', /* 'سنڌي', Sindhi */
|
||||
'ug', /* 'Uyghurche / ئۇيغۇرچە', Uyghur */
|
||||
'ur', /* 'اردو', Urdu */
|
||||
'yi', /* 'ייִדיש', Yiddish */
|
||||
'ar', /* 'العربية', Arabic */
|
||||
'arc', /* Aramaic */
|
||||
'bcc', /* 'بلوچی مکرانی', Southern Balochi */
|
||||
'bqi', /* 'بختياري', Bakthiari */
|
||||
'ckb', /* 'Soranî / کوردی', Sorani */
|
||||
'dv', /* Dhivehi */
|
||||
'fa', /* 'فارسی', Persian */
|
||||
'glk', /* 'گیلکی', Gilaki */
|
||||
'he', /* 'עברית', Hebrew */
|
||||
'ku', /* 'Kurdî / كوردی', Kurdish */
|
||||
'mzn', /* 'مازِرونی', Mazanderani */
|
||||
'nqo', /* N'Ko */
|
||||
'pnb', /* 'پنجابی', Western Punjabi */
|
||||
'ps', /* 'پښتو', Pashto, */
|
||||
'sd', /* 'سنڌي', Sindhi */
|
||||
'ug', /* 'Uyghurche / ئۇيغۇرچە', Uyghur */
|
||||
'ur', /* 'اردو', Urdu */
|
||||
'yi', /* 'ייִדיש', Yiddish */
|
||||
];
|
||||
for (let key in weapon) {
|
||||
for (const key in weapon) {
|
||||
const set = weapon[key];
|
||||
for (let weaponKey in set) {
|
||||
for (const weaponKey in set) {
|
||||
const item = set[weaponKey];
|
||||
const oldnotes = item.notes;
|
||||
item.notes = (lang) => {
|
||||
item.notes = lang => {
|
||||
const twoHandedText = item.twoHanded ? t('twoHandedItem')(lang) : '';
|
||||
|
||||
if (rtlLanguages.indexOf(lang) !== -1) {
|
||||
|
||||
@@ -6,13 +6,11 @@ import t from './translation';
|
||||
const CURRENT_SEASON = 'October';
|
||||
|
||||
function hasQuestAchievementFunction (key) {
|
||||
return (user) => {
|
||||
return user.achievements.quests &&
|
||||
user.achievements.quests[key] > 0;
|
||||
};
|
||||
return user => user.achievements.quests
|
||||
&& user.achievements.quests[key] > 0;
|
||||
}
|
||||
|
||||
let drops = {
|
||||
const drops = {
|
||||
Base: {
|
||||
value: 2,
|
||||
text: t('hatchingPotionBase'),
|
||||
@@ -55,7 +53,7 @@ let drops = {
|
||||
},
|
||||
};
|
||||
|
||||
let premium = {
|
||||
const premium = {
|
||||
RoyalPurple: {
|
||||
value: 2,
|
||||
text: t('hatchingPotionRoyalPurple'),
|
||||
@@ -279,7 +277,7 @@ each(wacky, (pot, key) => {
|
||||
});
|
||||
});
|
||||
|
||||
let all = assign({}, drops, premium, wacky);
|
||||
const all = assign({}, drops, premium, wacky);
|
||||
|
||||
export {
|
||||
drops,
|
||||
|
||||
@@ -2,7 +2,7 @@ import defaults from 'lodash/defaults';
|
||||
import each from 'lodash/each';
|
||||
import moment from 'moment';
|
||||
import t from './translation';
|
||||
import {tasksByCategory} from './tasks';
|
||||
import { tasksByCategory } from './tasks';
|
||||
|
||||
import {
|
||||
CLASSES,
|
||||
@@ -12,8 +12,6 @@ import {
|
||||
ANIMAL_COLOR_ACHIEVEMENTS,
|
||||
} from './constants';
|
||||
|
||||
const api = {};
|
||||
|
||||
import achievements from './achievements';
|
||||
|
||||
import * as eggs from './eggs';
|
||||
@@ -27,7 +25,7 @@ import {
|
||||
} from './quests';
|
||||
|
||||
import appearances from './appearance';
|
||||
import {backgroundsTree, backgroundsFlat} from './appearance/backgrounds';
|
||||
import { backgroundsTree, backgroundsFlat } from './appearance/backgrounds';
|
||||
import spells from './spells';
|
||||
import subscriptionBlocks from './subscriptionBlocks';
|
||||
import faq from './faq';
|
||||
@@ -37,6 +35,8 @@ import loginIncentives from './loginIncentives';
|
||||
|
||||
import officialPinnedItems from './officialPinnedItems';
|
||||
|
||||
const api = {};
|
||||
|
||||
api.achievements = achievements;
|
||||
api.questSeriesAchievements = QUEST_SERIES_ACHIEVEMENTS;
|
||||
api.animalColorAchievements = ANIMAL_COLOR_ACHIEVEMENTS;
|
||||
@@ -810,17 +810,15 @@ api.food = {
|
||||
/* eslint-enable camelcase */
|
||||
};
|
||||
|
||||
each(api.food, (food, key) => {
|
||||
return defaults(food, {
|
||||
value: 1,
|
||||
key,
|
||||
notes: t('foodNotes'),
|
||||
canBuy () {
|
||||
return false;
|
||||
},
|
||||
canDrop: false,
|
||||
});
|
||||
});
|
||||
each(api.food, (food, key) => defaults(food, {
|
||||
value: 1,
|
||||
key,
|
||||
notes: t('foodNotes'),
|
||||
canBuy () {
|
||||
return false;
|
||||
},
|
||||
canDrop: false,
|
||||
}));
|
||||
|
||||
api.appearances = appearances;
|
||||
|
||||
@@ -837,9 +835,9 @@ api.userDefaults = {
|
||||
down: false,
|
||||
attribute: 'per',
|
||||
tags: [
|
||||
t('defaultTag1'), // Work
|
||||
t('defaultTag4'), // School
|
||||
t('defaultTag6'), // Chores
|
||||
t('defaultTag1'), // Work
|
||||
t('defaultTag4'), // School
|
||||
t('defaultTag6'), // Chores
|
||||
],
|
||||
}, {
|
||||
type: 'habit',
|
||||
@@ -849,7 +847,7 @@ api.userDefaults = {
|
||||
down: true,
|
||||
attribute: 'str',
|
||||
tags: [
|
||||
t('defaultTag3'), // Health + Wellness
|
||||
t('defaultTag3'), // Health + Wellness
|
||||
],
|
||||
}, {
|
||||
type: 'habit',
|
||||
@@ -859,8 +857,8 @@ api.userDefaults = {
|
||||
down: true,
|
||||
attribute: 'str',
|
||||
tags: [
|
||||
t('defaultTag2'), // Exercise
|
||||
t('defaultTag3'), // Health + Wellness
|
||||
t('defaultTag2'), // Exercise
|
||||
t('defaultTag3'), // Health + Wellness
|
||||
],
|
||||
},
|
||||
],
|
||||
|
||||
@@ -4,7 +4,7 @@ import { MAX_INCENTIVES } from '../constants';
|
||||
// NOTE do not import this file alone but only access it through common.content
|
||||
// so that it's already compiled
|
||||
export default function getLoginIncentives (api) {
|
||||
let loginIncentives = {
|
||||
const loginIncentives = {
|
||||
1: {
|
||||
rewardKey: ['armor_special_bardRobes'],
|
||||
reward: [api.gear.flat.armor_special_bardRobes],
|
||||
@@ -645,7 +645,7 @@ export default function getLoginIncentives (api) {
|
||||
// We could also, use a list, but then we would be cloning each of the rewards.
|
||||
// Create a new array if we want the loginIncentives to be immutable in the future
|
||||
let nextRewardKey;
|
||||
range(MAX_INCENTIVES + 1).reverse().forEach(function addNextRewardLink (index) {
|
||||
range(MAX_INCENTIVES + 1).reverse().forEach(index => {
|
||||
if (loginIncentives[index] && loginIncentives[index].rewardKey) {
|
||||
loginIncentives[index].nextRewardAt = nextRewardKey;
|
||||
nextRewardKey = index;
|
||||
@@ -659,7 +659,7 @@ export default function getLoginIncentives (api) {
|
||||
});
|
||||
|
||||
let prevRewardKey;
|
||||
range(MAX_INCENTIVES + 1).forEach(function addPrevRewardLink (index) {
|
||||
range(MAX_INCENTIVES + 1).forEach(index => {
|
||||
loginIncentives[index].prevRewardKey = prevRewardKey;
|
||||
if (loginIncentives[index].rewardKey) prevRewardKey = index;
|
||||
});
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
import each from 'lodash/each';
|
||||
import t from './translation';
|
||||
|
||||
let mysterySets = {
|
||||
const mysterySets = {
|
||||
201402: {
|
||||
start: '2014-02-22',
|
||||
end: '2014-02-28',
|
||||
|
||||
@@ -6,9 +6,9 @@ import {
|
||||
USER_CAN_OWN_QUEST_CATEGORIES,
|
||||
} from './constants';
|
||||
|
||||
let userCanOwnQuestCategories = USER_CAN_OWN_QUEST_CATEGORIES;
|
||||
const userCanOwnQuestCategories = USER_CAN_OWN_QUEST_CATEGORIES;
|
||||
|
||||
let quests = {
|
||||
const quests = {
|
||||
dilatory: {
|
||||
text: t('questDilatoryText'),
|
||||
notes: t('questDilatoryNotes'),
|
||||
@@ -2261,7 +2261,7 @@ let quests = {
|
||||
unlockCondition: {
|
||||
condition: 'party invite',
|
||||
incentiveThreshold: 7,
|
||||
text: t('loginReward', {count: 7}),
|
||||
text: t('loginReward', { count: 7 }),
|
||||
},
|
||||
collect: {
|
||||
shard: {
|
||||
@@ -2292,7 +2292,7 @@ let quests = {
|
||||
unlockCondition: {
|
||||
condition: 'party invite',
|
||||
incentiveThreshold: 22,
|
||||
text: t('loginReward', {count: 22}),
|
||||
text: t('loginReward', { count: 22 }),
|
||||
},
|
||||
boss: {
|
||||
name: t('questMoon2Boss'),
|
||||
@@ -2322,7 +2322,7 @@ let quests = {
|
||||
unlockCondition: {
|
||||
condition: 'party invite',
|
||||
incentiveThreshold: 40,
|
||||
text: t('loginReward', {count: 40}),
|
||||
text: t('loginReward', { count: 40 }),
|
||||
},
|
||||
boss: {
|
||||
name: t('questMoon3Boss'),
|
||||
@@ -3527,9 +3527,7 @@ each(quests, (v, key) => {
|
||||
}
|
||||
});
|
||||
|
||||
let questsByLevel = sortBy(quests, (quest) => {
|
||||
return quest.lvl || 0;
|
||||
});
|
||||
const questsByLevel = sortBy(quests, quest => quest.lvl || 0);
|
||||
|
||||
export {
|
||||
quests,
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import t from './translation';
|
||||
import each from 'lodash/each';
|
||||
import t from './translation';
|
||||
import { NotAuthorized } from '../libs/errors';
|
||||
import statsComputed from '../libs/statsComputed';
|
||||
import crit from '../fns/crit';
|
||||
@@ -35,7 +35,7 @@ function calculateBonus (value, stat, critVal = 1, statScale = 0.5) {
|
||||
return (value < 0 ? 1 : value + 1) + stat * statScale * critVal;
|
||||
}
|
||||
|
||||
let spells = {};
|
||||
const spells = {};
|
||||
|
||||
spells.wizard = {
|
||||
fireball: { // Burst of Flames
|
||||
@@ -60,8 +60,8 @@ spells.wizard = {
|
||||
target: 'party',
|
||||
notes: t('spellWizardMPHealNotes'),
|
||||
cast (user, target) {
|
||||
each(target, (member) => {
|
||||
let bonus = statsComputed(user).int;
|
||||
each(target, member => {
|
||||
const bonus = statsComputed(user).int;
|
||||
if (user._id !== member._id && member.stats.class !== 'wizard') {
|
||||
member.stats.mp += Math.ceil(diminishingReturns(bonus, 25, 125));
|
||||
}
|
||||
@@ -75,8 +75,8 @@ spells.wizard = {
|
||||
target: 'party',
|
||||
notes: t('spellWizardEarthNotes'),
|
||||
cast (user, target) {
|
||||
each(target, (member) => {
|
||||
let bonus = statsComputed(user).int - user.stats.buffs.int;
|
||||
each(target, member => {
|
||||
const bonus = statsComputed(user).int - user.stats.buffs.int;
|
||||
if (!member.stats.buffs.int) member.stats.buffs.int = 0;
|
||||
member.stats.buffs.int += Math.ceil(diminishingReturns(bonus, 30, 200));
|
||||
});
|
||||
@@ -102,7 +102,7 @@ spells.warrior = {
|
||||
target: 'task',
|
||||
notes: t('spellWarriorSmashNotes'),
|
||||
cast (user, target) {
|
||||
let bonus = statsComputed(user).str * crit.crit(user, 'con');
|
||||
const bonus = statsComputed(user).str * crit.crit(user, 'con');
|
||||
target.value += diminishingReturns(bonus, 2.5, 35);
|
||||
if (!user.party.quest.progress.up) user.party.quest.progress.up = 0;
|
||||
user.party.quest.progress.up += diminishingReturns(bonus, 55, 70);
|
||||
@@ -115,7 +115,7 @@ spells.warrior = {
|
||||
target: 'self',
|
||||
notes: t('spellWarriorDefensiveStanceNotes'),
|
||||
cast (user) {
|
||||
let bonus = statsComputed(user).con - user.stats.buffs.con;
|
||||
const bonus = statsComputed(user).con - user.stats.buffs.con;
|
||||
if (!user.stats.buffs.con) user.stats.buffs.con = 0;
|
||||
user.stats.buffs.con += Math.ceil(diminishingReturns(bonus, 40, 200));
|
||||
},
|
||||
@@ -127,8 +127,8 @@ spells.warrior = {
|
||||
target: 'party',
|
||||
notes: t('spellWarriorValorousPresenceNotes'),
|
||||
cast (user, target) {
|
||||
each(target, (member) => {
|
||||
let bonus = statsComputed(user).str - user.stats.buffs.str;
|
||||
each(target, member => {
|
||||
const bonus = statsComputed(user).str - user.stats.buffs.str;
|
||||
if (!member.stats.buffs.str) member.stats.buffs.str = 0;
|
||||
member.stats.buffs.str += Math.ceil(diminishingReturns(bonus, 20, 200));
|
||||
});
|
||||
@@ -141,8 +141,8 @@ spells.warrior = {
|
||||
target: 'party',
|
||||
notes: t('spellWarriorIntimidateNotes'),
|
||||
cast (user, target) {
|
||||
each(target, (member) => {
|
||||
let bonus = statsComputed(user).con - user.stats.buffs.con;
|
||||
each(target, member => {
|
||||
const bonus = statsComputed(user).con - user.stats.buffs.con;
|
||||
if (!member.stats.buffs.con) member.stats.buffs.con = 0;
|
||||
member.stats.buffs.con += Math.ceil(diminishingReturns(bonus, 24, 200));
|
||||
});
|
||||
@@ -158,7 +158,7 @@ spells.rogue = {
|
||||
target: 'task',
|
||||
notes: t('spellRoguePickPocketNotes'),
|
||||
cast (user, target) {
|
||||
let bonus = calculateBonus(target.value, statsComputed(user).per);
|
||||
const bonus = calculateBonus(target.value, statsComputed(user).per);
|
||||
user.stats.gp += diminishingReturns(bonus, 25, 75);
|
||||
},
|
||||
},
|
||||
@@ -169,8 +169,8 @@ spells.rogue = {
|
||||
target: 'task',
|
||||
notes: t('spellRogueBackStabNotes'),
|
||||
cast (user, target, req) {
|
||||
let _crit = crit.crit(user, 'str', 0.3);
|
||||
let bonus = calculateBonus(target.value, statsComputed(user).str, _crit);
|
||||
const _crit = crit.crit(user, 'str', 0.3);
|
||||
const bonus = calculateBonus(target.value, statsComputed(user).str, _crit);
|
||||
user.stats.exp += diminishingReturns(bonus, 75, 50);
|
||||
user.stats.gp += diminishingReturns(bonus, 18, 75);
|
||||
updateStats(user, user.stats, req);
|
||||
@@ -183,8 +183,8 @@ spells.rogue = {
|
||||
target: 'party',
|
||||
notes: t('spellRogueToolsOfTradeNotes'),
|
||||
cast (user, target) {
|
||||
each(target, (member) => {
|
||||
let bonus = statsComputed(user).per - user.stats.buffs.per;
|
||||
each(target, member => {
|
||||
const bonus = statsComputed(user).per - user.stats.buffs.per;
|
||||
if (!member.stats.buffs.per) member.stats.buffs.per = 0;
|
||||
member.stats.buffs.per += Math.ceil(diminishingReturns(bonus, 100, 50));
|
||||
});
|
||||
@@ -223,7 +223,7 @@ spells.healer = {
|
||||
target: 'tasks',
|
||||
notes: t('spellHealerBrightnessNotes'),
|
||||
cast (user, tasks) {
|
||||
each(tasks, (task) => {
|
||||
each(tasks, task => {
|
||||
if (task.type !== 'reward') {
|
||||
task.value += 4 * (statsComputed(user).int / (statsComputed(user).int + 40));
|
||||
}
|
||||
@@ -237,8 +237,8 @@ spells.healer = {
|
||||
target: 'party',
|
||||
notes: t('spellHealerProtectAuraNotes'),
|
||||
cast (user, target) {
|
||||
each(target, (member) => {
|
||||
let bonus = statsComputed(user).con - user.stats.buffs.con;
|
||||
each(target, member => {
|
||||
const bonus = statsComputed(user).con - user.stats.buffs.con;
|
||||
if (!member.stats.buffs.con) member.stats.buffs.con = 0;
|
||||
member.stats.buffs.con += Math.ceil(diminishingReturns(bonus, 200, 200));
|
||||
});
|
||||
@@ -251,7 +251,7 @@ spells.healer = {
|
||||
target: 'party',
|
||||
notes: t('spellHealerHealAllNotes'),
|
||||
cast (user, target) {
|
||||
each(target, (member) => {
|
||||
each(target, member => {
|
||||
member.stats.hp += (statsComputed(user).con + statsComputed(user).int + 5) * 0.04;
|
||||
if (member.stats.hp > 50) member.stats.hp = 50;
|
||||
});
|
||||
@@ -397,7 +397,7 @@ spells.special = {
|
||||
if (!user.achievements.nye) user.achievements.nye = 0;
|
||||
user.achievements.nye++;
|
||||
} else {
|
||||
each([user, target], (u) => {
|
||||
each([user, target], u => {
|
||||
if (!u.achievements.nye) u.achievements.nye = 0;
|
||||
u.achievements.nye++;
|
||||
});
|
||||
@@ -407,13 +407,15 @@ spells.special = {
|
||||
const senderName = user.profile.name;
|
||||
target.items.special.nyeReceived.push(senderName);
|
||||
|
||||
if (target.addNotification) target.addNotification('CARD_RECEIVED', {
|
||||
card: 'nye',
|
||||
from: {
|
||||
id: user._id,
|
||||
name: senderName,
|
||||
},
|
||||
});
|
||||
if (target.addNotification) {
|
||||
target.addNotification('CARD_RECEIVED', {
|
||||
card: 'nye',
|
||||
from: {
|
||||
id: user._id,
|
||||
name: senderName,
|
||||
},
|
||||
});
|
||||
}
|
||||
target.flags.cardReceived = true;
|
||||
|
||||
user.stats.gp -= 10;
|
||||
@@ -432,7 +434,7 @@ spells.special = {
|
||||
if (!user.achievements.valentine) user.achievements.valentine = 0;
|
||||
user.achievements.valentine++;
|
||||
} else {
|
||||
each([user, target], (u) => {
|
||||
each([user, target], u => {
|
||||
if (!u.achievements.valentine) u.achievements.valentine = 0;
|
||||
u.achievements.valentine++;
|
||||
});
|
||||
@@ -442,13 +444,15 @@ spells.special = {
|
||||
const senderName = user.profile.name;
|
||||
target.items.special.valentineReceived.push(senderName);
|
||||
|
||||
if (target.addNotification) target.addNotification('CARD_RECEIVED', {
|
||||
card: 'valentine',
|
||||
from: {
|
||||
id: user._id,
|
||||
name: senderName,
|
||||
},
|
||||
});
|
||||
if (target.addNotification) {
|
||||
target.addNotification('CARD_RECEIVED', {
|
||||
card: 'valentine',
|
||||
from: {
|
||||
id: user._id,
|
||||
name: senderName,
|
||||
},
|
||||
});
|
||||
}
|
||||
target.flags.cardReceived = true;
|
||||
|
||||
user.stats.gp -= 10;
|
||||
@@ -467,7 +471,7 @@ spells.special = {
|
||||
if (!user.achievements.greeting) user.achievements.greeting = 0;
|
||||
user.achievements.greeting++;
|
||||
} else {
|
||||
each([user, target], (u) => {
|
||||
each([user, target], u => {
|
||||
if (!u.achievements.greeting) u.achievements.greeting = 0;
|
||||
u.achievements.greeting++;
|
||||
});
|
||||
@@ -477,13 +481,15 @@ spells.special = {
|
||||
const senderName = user.profile.name;
|
||||
target.items.special.greetingReceived.push(senderName);
|
||||
|
||||
if (target.addNotification) target.addNotification('CARD_RECEIVED', {
|
||||
card: 'greeting',
|
||||
from: {
|
||||
id: user._id,
|
||||
name: senderName,
|
||||
},
|
||||
});
|
||||
if (target.addNotification) {
|
||||
target.addNotification('CARD_RECEIVED', {
|
||||
card: 'greeting',
|
||||
from: {
|
||||
id: user._id,
|
||||
name: senderName,
|
||||
},
|
||||
});
|
||||
}
|
||||
target.flags.cardReceived = true;
|
||||
|
||||
user.stats.gp -= 10;
|
||||
@@ -502,7 +508,7 @@ spells.special = {
|
||||
if (!user.achievements.thankyou) user.achievements.thankyou = 0;
|
||||
user.achievements.thankyou++;
|
||||
} else {
|
||||
each([user, target], (u) => {
|
||||
each([user, target], u => {
|
||||
if (!u.achievements.thankyou) u.achievements.thankyou = 0;
|
||||
u.achievements.thankyou++;
|
||||
});
|
||||
@@ -512,13 +518,15 @@ spells.special = {
|
||||
const senderName = user.profile.name;
|
||||
target.items.special.thankyouReceived.push(senderName);
|
||||
|
||||
if (target.addNotification) target.addNotification('CARD_RECEIVED', {
|
||||
card: 'thankyou',
|
||||
from: {
|
||||
id: user._id,
|
||||
name: senderName,
|
||||
},
|
||||
});
|
||||
if (target.addNotification) {
|
||||
target.addNotification('CARD_RECEIVED', {
|
||||
card: 'thankyou',
|
||||
from: {
|
||||
id: user._id,
|
||||
name: senderName,
|
||||
},
|
||||
});
|
||||
}
|
||||
target.flags.cardReceived = true;
|
||||
|
||||
user.stats.gp -= 10;
|
||||
@@ -537,7 +545,7 @@ spells.special = {
|
||||
if (!user.achievements.birthday) user.achievements.birthday = 0;
|
||||
user.achievements.birthday++;
|
||||
} else {
|
||||
each([user, target], (u) => {
|
||||
each([user, target], u => {
|
||||
if (!u.achievements.birthday) u.achievements.birthday = 0;
|
||||
u.achievements.birthday++;
|
||||
});
|
||||
@@ -547,13 +555,15 @@ spells.special = {
|
||||
const senderName = user.profile.name;
|
||||
target.items.special.birthdayReceived.push(senderName);
|
||||
|
||||
if (target.addNotification) target.addNotification('CARD_RECEIVED', {
|
||||
card: 'birthday',
|
||||
from: {
|
||||
id: user._id,
|
||||
name: senderName,
|
||||
},
|
||||
});
|
||||
if (target.addNotification) {
|
||||
target.addNotification('CARD_RECEIVED', {
|
||||
card: 'birthday',
|
||||
from: {
|
||||
id: user._id,
|
||||
name: senderName,
|
||||
},
|
||||
});
|
||||
}
|
||||
target.flags.cardReceived = true;
|
||||
|
||||
user.stats.gp -= 10;
|
||||
@@ -572,7 +582,7 @@ spells.special = {
|
||||
if (!user.achievements.congrats) user.achievements.congrats = 0;
|
||||
user.achievements.congrats++;
|
||||
} else {
|
||||
each([user, target], (u) => {
|
||||
each([user, target], u => {
|
||||
if (!u.achievements.congrats) u.achievements.congrats = 0;
|
||||
u.achievements.congrats++;
|
||||
});
|
||||
@@ -582,13 +592,15 @@ spells.special = {
|
||||
const senderName = user.profile.name;
|
||||
target.items.special.congratsReceived.push(senderName);
|
||||
|
||||
if (target.addNotification) target.addNotification('CARD_RECEIVED', {
|
||||
card: 'congrats',
|
||||
from: {
|
||||
id: user._id,
|
||||
name: senderName,
|
||||
},
|
||||
});
|
||||
if (target.addNotification) {
|
||||
target.addNotification('CARD_RECEIVED', {
|
||||
card: 'congrats',
|
||||
from: {
|
||||
id: user._id,
|
||||
name: senderName,
|
||||
},
|
||||
});
|
||||
}
|
||||
target.flags.cardReceived = true;
|
||||
|
||||
user.stats.gp -= 10;
|
||||
@@ -607,7 +619,7 @@ spells.special = {
|
||||
if (!user.achievements.getwell) user.achievements.getwell = 0;
|
||||
user.achievements.getwell++;
|
||||
} else {
|
||||
each([user, target], (u) => {
|
||||
each([user, target], u => {
|
||||
if (!u.achievements.getwell) u.achievements.getwell = 0;
|
||||
u.achievements.getwell++;
|
||||
});
|
||||
@@ -617,13 +629,15 @@ spells.special = {
|
||||
const senderName = user.profile.name;
|
||||
target.items.special.getwellReceived.push(senderName);
|
||||
|
||||
if (target.addNotification) target.addNotification('CARD_RECEIVED', {
|
||||
card: 'getwell',
|
||||
from: {
|
||||
id: user._id,
|
||||
name: senderName,
|
||||
},
|
||||
});
|
||||
if (target.addNotification) {
|
||||
target.addNotification('CARD_RECEIVED', {
|
||||
card: 'getwell',
|
||||
from: {
|
||||
id: user._id,
|
||||
name: senderName,
|
||||
},
|
||||
});
|
||||
}
|
||||
target.flags.cardReceived = true;
|
||||
|
||||
user.stats.gp -= 10;
|
||||
@@ -642,7 +656,7 @@ spells.special = {
|
||||
if (!user.achievements.goodluck) user.achievements.goodluck = 0;
|
||||
user.achievements.goodluck++;
|
||||
} else {
|
||||
each([user, target], (u) => {
|
||||
each([user, target], u => {
|
||||
if (!u.achievements.goodluck) u.achievements.goodluck = 0;
|
||||
u.achievements.goodluck++;
|
||||
});
|
||||
@@ -652,13 +666,15 @@ spells.special = {
|
||||
const senderName = user.profile.name;
|
||||
target.items.special.goodluckReceived.push(senderName);
|
||||
|
||||
if (target.addNotification) target.addNotification('CARD_RECEIVED', {
|
||||
card: 'goodluck',
|
||||
from: {
|
||||
id: user._id,
|
||||
name: senderName,
|
||||
},
|
||||
});
|
||||
if (target.addNotification) {
|
||||
target.addNotification('CARD_RECEIVED', {
|
||||
card: 'goodluck',
|
||||
from: {
|
||||
id: user._id,
|
||||
name: senderName,
|
||||
},
|
||||
});
|
||||
}
|
||||
target.flags.cardReceived = true;
|
||||
|
||||
user.stats.gp -= 10;
|
||||
@@ -666,10 +682,10 @@ spells.special = {
|
||||
},
|
||||
};
|
||||
|
||||
each(spells, (spellClass) => {
|
||||
each(spells, spellClass => {
|
||||
each(spellClass, (spell, key) => {
|
||||
spell.key = key;
|
||||
let _cast = spell.cast;
|
||||
const _cast = spell.cast;
|
||||
spell.cast = function castSpell (user, target, req) {
|
||||
_cast(user, target, req);
|
||||
user.stats.mp -= spell.mana;
|
||||
|
||||
@@ -10,16 +10,16 @@ import {
|
||||
} from './hatching-potions';
|
||||
import t from './translation';
|
||||
|
||||
let petInfo = {};
|
||||
let mountInfo = {};
|
||||
const petInfo = {};
|
||||
const mountInfo = {};
|
||||
|
||||
function constructSet (type, eggs, potions) {
|
||||
let pets = {};
|
||||
let mounts = {};
|
||||
const pets = {};
|
||||
const mounts = {};
|
||||
|
||||
each(eggs, (egg) => {
|
||||
each(potions, (potion) => {
|
||||
let key = `${egg.key}-${potion.key}`;
|
||||
each(eggs, egg => {
|
||||
each(potions, potion => {
|
||||
const key = `${egg.key}-${potion.key}`;
|
||||
|
||||
function getAnimalData (text) {
|
||||
return {
|
||||
@@ -49,11 +49,11 @@ function constructSet (type, eggs, potions) {
|
||||
}
|
||||
|
||||
function constructPetOnlySet (type, eggs, potions) {
|
||||
let pets = {};
|
||||
const pets = {};
|
||||
|
||||
each(eggs, (egg) => {
|
||||
each(potions, (potion) => {
|
||||
let key = `${egg.key}-${potion.key}`;
|
||||
each(eggs, egg => {
|
||||
each(potions, potion => {
|
||||
const key = `${egg.key}-${potion.key}`;
|
||||
|
||||
function getAnimalData (text) {
|
||||
return {
|
||||
@@ -76,12 +76,12 @@ function constructPetOnlySet (type, eggs, potions) {
|
||||
return pets;
|
||||
}
|
||||
|
||||
let [dropPets, dropMounts] = constructSet('drop', dropEggs, dropPotions);
|
||||
let [premiumPets, premiumMounts] = constructSet('premium', dropEggs, premiumPotions);
|
||||
let [questPets, questMounts] = constructSet('quest', questEggs, dropPotions);
|
||||
let wackyPets = constructPetOnlySet('wacky', dropEggs, wackyPotions);
|
||||
const [dropPets, dropMounts] = constructSet('drop', dropEggs, dropPotions);
|
||||
const [premiumPets, premiumMounts] = constructSet('premium', dropEggs, premiumPotions);
|
||||
const [questPets, questMounts] = constructSet('quest', questEggs, dropPotions);
|
||||
const wackyPets = constructPetOnlySet('wacky', dropEggs, wackyPotions);
|
||||
|
||||
let specialPets = {
|
||||
const specialPets = {
|
||||
'Wolf-Veteran': 'veteranWolf',
|
||||
'Wolf-Cerberus': 'cerberusPup',
|
||||
'Dragon-Hydra': 'hydra',
|
||||
@@ -106,7 +106,7 @@ let specialPets = {
|
||||
'Gryphon-Gryphatrice': 'gryphatrice',
|
||||
};
|
||||
|
||||
let specialMounts = {
|
||||
const specialMounts = {
|
||||
'BearCub-Polar': 'polarBear',
|
||||
'LionCub-Ethereal': 'etherealLion',
|
||||
'MantisShrimp-Base': 'mantisShrimp',
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/* eslint-disable camelcase */
|
||||
import each from 'lodash/each';
|
||||
|
||||
let subscriptionBlocks = {
|
||||
const subscriptionBlocks = {
|
||||
basic_earned: {
|
||||
target: 'user',
|
||||
canSubscribe: true,
|
||||
@@ -50,8 +50,6 @@ let subscriptionBlocks = {
|
||||
},
|
||||
};
|
||||
|
||||
each(subscriptionBlocks, function createKeys (b, k) {
|
||||
return b.key = k;
|
||||
});
|
||||
each(subscriptionBlocks, (b, k) => b.key = k);
|
||||
|
||||
export default subscriptionBlocks;
|
||||
|
||||
@@ -7,19 +7,17 @@ import reduce from 'lodash/reduce';
|
||||
import mysterySets from './mystery-sets';
|
||||
import gear from './gear';
|
||||
|
||||
let mystery = mysterySets;
|
||||
const mystery = mysterySets;
|
||||
|
||||
each(mystery, (v, k) => {
|
||||
return v.items = filter(gear.flat, {
|
||||
mystery: k,
|
||||
});
|
||||
});
|
||||
each(mystery, (v, k) => v.items = filter(gear.flat, {
|
||||
mystery: k,
|
||||
}));
|
||||
|
||||
let timeTravelerStore = (user) => {
|
||||
const timeTravelerStore = user => {
|
||||
let ownedKeys;
|
||||
let owned = user.items.gear.owned;
|
||||
let mysteryItems = user.purchased.plan.mysteryItems;
|
||||
let unopenedGifts = typeof mysteryItems.toObject === 'function' ? mysteryItems.toObject() : mysteryItems;
|
||||
const { owned } = user.items.gear;
|
||||
const { mysteryItems } = user.purchased.plan;
|
||||
const unopenedGifts = typeof mysteryItems.toObject === 'function' ? mysteryItems.toObject() : mysteryItems;
|
||||
ownedKeys = keys(typeof owned.toObject === 'function' ? owned.toObject() : owned);
|
||||
ownedKeys = union(ownedKeys, unopenedGifts);
|
||||
return reduce(mystery, (m, v, k) => {
|
||||
@@ -34,4 +32,4 @@ let timeTravelerStore = (user) => {
|
||||
export default {
|
||||
timeTravelerStore,
|
||||
mystery,
|
||||
};
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user