@opfr/services 0.6.0 → 0.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.es.js +4436 -4122
- package/dist/index.umd.js +11 -11
- package/dist/services/crew/definition/model.d.ts +2 -1
- package/dist/services/crew/definition/model.d.ts.map +1 -1
- package/dist/services/crew/query/updates.d.ts +3 -0
- package/dist/services/crew/query/updates.d.ts.map +1 -1
- package/dist/services/index.d.ts +94 -0
- package/dist/services/index.d.ts.map +1 -1
- package/dist/services/invitations/definition/model.d.ts.map +1 -1
- package/dist/services/invitations/index.d.ts.map +1 -1
- package/dist/services/settings/definition/model.d.ts +30 -0
- package/dist/services/settings/definition/model.d.ts.map +1 -0
- package/dist/services/settings/definition/schema.d.ts +38 -0
- package/dist/services/settings/definition/schema.d.ts.map +1 -0
- package/dist/services/settings/index.d.ts +7 -0
- package/dist/services/settings/index.d.ts.map +1 -0
- package/dist/services/settings/process/create.d.ts +3 -0
- package/dist/services/settings/process/create.d.ts.map +1 -0
- package/dist/services/settings/process/findOne.d.ts +29 -0
- package/dist/services/settings/process/findOne.d.ts.map +1 -0
- package/dist/services/settings/process/updateOne.d.ts +29 -0
- package/dist/services/settings/process/updateOne.d.ts.map +1 -0
- package/dist/services/settings/query/updates.d.ts +17 -0
- package/dist/services/settings/query/updates.d.ts.map +1 -0
- package/dist/services/settings/types.d.ts +59 -0
- package/dist/services/settings/types.d.ts.map +1 -0
- package/dist/services/user/definition/model.d.ts.map +1 -1
- package/dist/services/user/definition/schema.d.ts.map +1 -1
- package/dist/services/user/process/populateUser.d.ts +1 -1
- package/dist/services/user/query/getters.d.ts +1 -0
- package/dist/services/user/query/getters.d.ts.map +1 -1
- package/dist/services/user-crew/definition/model.d.ts.map +1 -1
- package/dist/services/user-crew/definition/schema.d.ts.map +1 -1
- package/dist/services/user-crew/types.d.ts +1 -1
- package/dist/services/user-crew/types.d.ts.map +1 -1
- package/dist/services/user-daily-report/definition/model.d.ts.map +1 -1
- package/dist/services/user-daily-report/index.d.ts +2 -0
- package/dist/services/user-daily-report/index.d.ts.map +1 -1
- package/dist/services/user-daily-report/query/updates.d.ts +29 -0
- package/dist/services/user-daily-report/query/updates.d.ts.map +1 -0
- package/dist/services/user-games/definition/model.d.ts.map +1 -1
- package/dist/services/user-inventory/definition/model.d.ts.map +1 -1
- package/dist/services/user-meta/definition/model.d.ts.map +1 -1
- package/dist/services/user-meta/query/updates.d.ts +3 -0
- package/dist/services/user-meta/query/updates.d.ts.map +1 -1
- package/dist/services/user-ornaments/definition/model.d.ts.map +1 -1
- package/dist/services/user-quest/definition/model.d.ts.map +1 -1
- package/dist/services/user-quest-meta/definition/model.d.ts.map +1 -1
- package/dist/services/user-quest-meta/query/updates.d.ts +6 -0
- package/dist/services/user-quest-meta/query/updates.d.ts.map +1 -1
- package/dist/services/user-quest-meta/types.d.ts +1 -0
- package/dist/services/user-quest-meta/types.d.ts.map +1 -1
- package/dist/services/user-raid/definition/model.d.ts.map +1 -1
- package/dist/services/user-shop/definition/model.d.ts.map +1 -1
- package/package.json +3 -4
- package/dist/connect.js +0 -5
- package/dist/connect.js.map +0 -1
- package/dist/index.js +0 -3
- package/dist/index.js.map +0 -1
- package/dist/services/crew/definition/model.js +0 -4
- package/dist/services/crew/definition/model.js.map +0 -1
- package/dist/services/crew/definition/schema.js +0 -40
- package/dist/services/crew/definition/schema.js.map +0 -1
- package/dist/services/crew/index.js +0 -7
- package/dist/services/crew/index.js.map +0 -1
- package/dist/services/crew/process/create.js +0 -12
- package/dist/services/crew/process/create.js.map +0 -1
- package/dist/services/crew/process/findOne.js +0 -9
- package/dist/services/crew/process/findOne.js.map +0 -1
- package/dist/services/crew/process/updateOne.js +0 -5
- package/dist/services/crew/process/updateOne.js.map +0 -1
- package/dist/services/crew/query/getters.js +0 -48
- package/dist/services/crew/query/getters.js.map +0 -1
- package/dist/services/crew/query/updates.js +0 -90
- package/dist/services/crew/query/updates.js.map +0 -1
- package/dist/services/crew/types.js +0 -2
- package/dist/services/crew/types.js.map +0 -1
- package/dist/services/index.js +0 -14
- package/dist/services/index.js.map +0 -1
- package/dist/services/invitations/definition/model.js +0 -4
- package/dist/services/invitations/definition/model.js.map +0 -1
- package/dist/services/invitations/definition/schema.js +0 -13
- package/dist/services/invitations/definition/schema.js.map +0 -1
- package/dist/services/invitations/index.js +0 -6
- package/dist/services/invitations/index.js.map +0 -1
- package/dist/services/invitations/process/create.js +0 -7
- package/dist/services/invitations/process/create.js.map +0 -1
- package/dist/services/invitations/process/deleteMany.js +0 -7
- package/dist/services/invitations/process/deleteMany.js.map +0 -1
- package/dist/services/invitations/process/findOne.js +0 -11
- package/dist/services/invitations/process/findOne.js.map +0 -1
- package/dist/services/invitations/process/updateOne.js +0 -5
- package/dist/services/invitations/process/updateOne.js.map +0 -1
- package/dist/services/invitations/types.js +0 -2
- package/dist/services/invitations/types.js.map +0 -1
- package/dist/services/user/definition/model.js +0 -4
- package/dist/services/user/definition/model.js.map +0 -1
- package/dist/services/user/definition/schema.js +0 -60
- package/dist/services/user/definition/schema.js.map +0 -1
- package/dist/services/user/index.js +0 -8
- package/dist/services/user/index.js.map +0 -1
- package/dist/services/user/process/create.js +0 -7
- package/dist/services/user/process/create.js.map +0 -1
- package/dist/services/user/process/deleteOne.js +0 -5
- package/dist/services/user/process/deleteOne.js.map +0 -1
- package/dist/services/user/process/findOne.js +0 -13
- package/dist/services/user/process/findOne.js.map +0 -1
- package/dist/services/user/process/populateUser.js +0 -50
- package/dist/services/user/process/populateUser.js.map +0 -1
- package/dist/services/user/process/updateOne.js +0 -8
- package/dist/services/user/process/updateOne.js.map +0 -1
- package/dist/services/user/query/getters.js +0 -232
- package/dist/services/user/query/getters.js.map +0 -1
- package/dist/services/user/query/updates.js +0 -23
- package/dist/services/user/query/updates.js.map +0 -1
- package/dist/services/user/types.js +0 -2
- package/dist/services/user/types.js.map +0 -1
- package/dist/services/user-crew/definition/model.js +0 -4
- package/dist/services/user-crew/definition/model.js.map +0 -1
- package/dist/services/user-crew/definition/schema.js +0 -20
- package/dist/services/user-crew/definition/schema.js.map +0 -1
- package/dist/services/user-crew/index.js +0 -7
- package/dist/services/user-crew/index.js.map +0 -1
- package/dist/services/user-crew/process/create.js +0 -10
- package/dist/services/user-crew/process/create.js.map +0 -1
- package/dist/services/user-crew/process/exists.js +0 -5
- package/dist/services/user-crew/process/exists.js.map +0 -1
- package/dist/services/user-crew/process/findOne.js +0 -5
- package/dist/services/user-crew/process/findOne.js.map +0 -1
- package/dist/services/user-crew/process/updateOne.js +0 -7
- package/dist/services/user-crew/process/updateOne.js.map +0 -1
- package/dist/services/user-crew/query/updates.js +0 -9
- package/dist/services/user-crew/query/updates.js.map +0 -1
- package/dist/services/user-crew/types.js +0 -2
- package/dist/services/user-crew/types.js.map +0 -1
- package/dist/services/user-daily-report/definition/model.js +0 -4
- package/dist/services/user-daily-report/definition/model.js.map +0 -1
- package/dist/services/user-daily-report/definition/schema.js +0 -21
- package/dist/services/user-daily-report/definition/schema.js.map +0 -1
- package/dist/services/user-daily-report/index.js +0 -2
- package/dist/services/user-daily-report/index.js.map +0 -1
- package/dist/services/user-daily-report/process/create.js +0 -7
- package/dist/services/user-daily-report/process/create.js.map +0 -1
- package/dist/services/user-daily-report/process/findOne.js +0 -10
- package/dist/services/user-daily-report/process/findOne.js.map +0 -1
- package/dist/services/user-daily-report/process/updateOne.js +0 -7
- package/dist/services/user-daily-report/process/updateOne.js.map +0 -1
- package/dist/services/user-daily-report/types.js +0 -2
- package/dist/services/user-daily-report/types.js.map +0 -1
- package/dist/services/user-games/definition/model.js +0 -4
- package/dist/services/user-games/definition/model.js.map +0 -1
- package/dist/services/user-games/definition/schema.js +0 -17
- package/dist/services/user-games/definition/schema.js.map +0 -1
- package/dist/services/user-games/index.js +0 -5
- package/dist/services/user-games/index.js.map +0 -1
- package/dist/services/user-games/process/create.js +0 -7
- package/dist/services/user-games/process/create.js.map +0 -1
- package/dist/services/user-games/process/findOne.js +0 -10
- package/dist/services/user-games/process/findOne.js.map +0 -1
- package/dist/services/user-games/process/updateOne.js +0 -7
- package/dist/services/user-games/process/updateOne.js.map +0 -1
- package/dist/services/user-games/query/getters.js +0 -2
- package/dist/services/user-games/query/getters.js.map +0 -1
- package/dist/services/user-games/query/updates.js +0 -27
- package/dist/services/user-games/query/updates.js.map +0 -1
- package/dist/services/user-games/types.js +0 -2
- package/dist/services/user-games/types.js.map +0 -1
- package/dist/services/user-inventory/definition/model.js +0 -4
- package/dist/services/user-inventory/definition/model.js.map +0 -1
- package/dist/services/user-inventory/definition/schema.js +0 -29
- package/dist/services/user-inventory/definition/schema.js.map +0 -1
- package/dist/services/user-inventory/index.js +0 -6
- package/dist/services/user-inventory/index.js.map +0 -1
- package/dist/services/user-inventory/process/create.js +0 -7
- package/dist/services/user-inventory/process/create.js.map +0 -1
- package/dist/services/user-inventory/process/findOne.js +0 -10
- package/dist/services/user-inventory/process/findOne.js.map +0 -1
- package/dist/services/user-inventory/process/updateOne.js +0 -7
- package/dist/services/user-inventory/process/updateOne.js.map +0 -1
- package/dist/services/user-inventory/query/getters.js +0 -55
- package/dist/services/user-inventory/query/getters.js.map +0 -1
- package/dist/services/user-inventory/query/updates.js +0 -68
- package/dist/services/user-inventory/query/updates.js.map +0 -1
- package/dist/services/user-inventory/types.js +0 -2
- package/dist/services/user-inventory/types.js.map +0 -1
- package/dist/services/user-meta/definition/model.js +0 -4
- package/dist/services/user-meta/definition/model.js.map +0 -1
- package/dist/services/user-meta/definition/schema.js +0 -90
- package/dist/services/user-meta/definition/schema.js.map +0 -1
- package/dist/services/user-meta/index.js +0 -6
- package/dist/services/user-meta/index.js.map +0 -1
- package/dist/services/user-meta/process/create.js +0 -7
- package/dist/services/user-meta/process/create.js.map +0 -1
- package/dist/services/user-meta/process/findOne.js +0 -10
- package/dist/services/user-meta/process/findOne.js.map +0 -1
- package/dist/services/user-meta/process/findOneAndUpdate.js +0 -8
- package/dist/services/user-meta/process/findOneAndUpdate.js.map +0 -1
- package/dist/services/user-meta/process/updateOne.js +0 -7
- package/dist/services/user-meta/process/updateOne.js.map +0 -1
- package/dist/services/user-meta/query/getters.js +0 -145
- package/dist/services/user-meta/query/getters.js.map +0 -1
- package/dist/services/user-meta/query/updates.js +0 -226
- package/dist/services/user-meta/query/updates.js.map +0 -1
- package/dist/services/user-meta/types.js +0 -2
- package/dist/services/user-meta/types.js.map +0 -1
- package/dist/services/user-ornaments/definition/model.js +0 -4
- package/dist/services/user-ornaments/definition/model.js.map +0 -1
- package/dist/services/user-ornaments/definition/schema.js +0 -19
- package/dist/services/user-ornaments/definition/schema.js.map +0 -1
- package/dist/services/user-ornaments/index.js +0 -5
- package/dist/services/user-ornaments/index.js.map +0 -1
- package/dist/services/user-ornaments/process/create.js +0 -7
- package/dist/services/user-ornaments/process/create.js.map +0 -1
- package/dist/services/user-ornaments/process/findOne.js +0 -10
- package/dist/services/user-ornaments/process/findOne.js.map +0 -1
- package/dist/services/user-ornaments/process/updateOne.js +0 -5
- package/dist/services/user-ornaments/process/updateOne.js.map +0 -1
- package/dist/services/user-ornaments/query/updates.js +0 -58
- package/dist/services/user-ornaments/query/updates.js.map +0 -1
- package/dist/services/user-ornaments/types.js +0 -2
- package/dist/services/user-ornaments/types.js.map +0 -1
- package/dist/services/user-quest/definition/model.js +0 -4
- package/dist/services/user-quest/definition/model.js.map +0 -1
- package/dist/services/user-quest/definition/schema.js +0 -16
- package/dist/services/user-quest/definition/schema.js.map +0 -1
- package/dist/services/user-quest/index.js +0 -6
- package/dist/services/user-quest/index.js.map +0 -1
- package/dist/services/user-quest/process/create.js +0 -7
- package/dist/services/user-quest/process/create.js.map +0 -1
- package/dist/services/user-quest/process/findOne.js +0 -10
- package/dist/services/user-quest/process/findOne.js.map +0 -1
- package/dist/services/user-quest/process/updateOne.js +0 -7
- package/dist/services/user-quest/process/updateOne.js.map +0 -1
- package/dist/services/user-quest/query/getters.js +0 -26
- package/dist/services/user-quest/query/getters.js.map +0 -1
- package/dist/services/user-quest/query/updates.js +0 -26
- package/dist/services/user-quest/query/updates.js.map +0 -1
- package/dist/services/user-quest/types.js +0 -2
- package/dist/services/user-quest/types.js.map +0 -1
- package/dist/services/user-quest-meta/definition/model.js +0 -4
- package/dist/services/user-quest-meta/definition/model.js.map +0 -1
- package/dist/services/user-quest-meta/definition/schema.js +0 -64
- package/dist/services/user-quest-meta/definition/schema.js.map +0 -1
- package/dist/services/user-quest-meta/index.js +0 -4
- package/dist/services/user-quest-meta/index.js.map +0 -1
- package/dist/services/user-quest-meta/process/create.js +0 -7
- package/dist/services/user-quest-meta/process/create.js.map +0 -1
- package/dist/services/user-quest-meta/process/findOne.js +0 -10
- package/dist/services/user-quest-meta/process/findOne.js.map +0 -1
- package/dist/services/user-quest-meta/process/updateOne.js +0 -7
- package/dist/services/user-quest-meta/process/updateOne.js.map +0 -1
- package/dist/services/user-quest-meta/query/updates.js +0 -128
- package/dist/services/user-quest-meta/query/updates.js.map +0 -1
- package/dist/services/user-quest-meta/types.js +0 -2
- package/dist/services/user-quest-meta/types.js.map +0 -1
- package/dist/services/user-raid/definition/model.js +0 -4
- package/dist/services/user-raid/definition/model.js.map +0 -1
- package/dist/services/user-raid/definition/schema.js +0 -27
- package/dist/services/user-raid/definition/schema.js.map +0 -1
- package/dist/services/user-raid/index.js +0 -6
- package/dist/services/user-raid/index.js.map +0 -1
- package/dist/services/user-raid/process/create.js +0 -7
- package/dist/services/user-raid/process/create.js.map +0 -1
- package/dist/services/user-raid/process/findOne.js +0 -10
- package/dist/services/user-raid/process/findOne.js.map +0 -1
- package/dist/services/user-raid/process/updateOne.js +0 -7
- package/dist/services/user-raid/process/updateOne.js.map +0 -1
- package/dist/services/user-raid/query/getters.js +0 -10
- package/dist/services/user-raid/query/getters.js.map +0 -1
- package/dist/services/user-raid/query/updates.js +0 -74
- package/dist/services/user-raid/query/updates.js.map +0 -1
- package/dist/services/user-raid/types.js +0 -2
- package/dist/services/user-raid/types.js.map +0 -1
- package/dist/services/user-shop/definition/model.js +0 -4
- package/dist/services/user-shop/definition/model.js.map +0 -1
- package/dist/services/user-shop/definition/schema.js +0 -14
- package/dist/services/user-shop/definition/schema.js.map +0 -1
- package/dist/services/user-shop/index.js +0 -5
- package/dist/services/user-shop/index.js.map +0 -1
- package/dist/services/user-shop/process/create.js +0 -7
- package/dist/services/user-shop/process/create.js.map +0 -1
- package/dist/services/user-shop/process/findOne.js +0 -10
- package/dist/services/user-shop/process/findOne.js.map +0 -1
- package/dist/services/user-shop/process/updateOne.js +0 -7
- package/dist/services/user-shop/process/updateOne.js.map +0 -1
- package/dist/services/user-shop/query/getters.js +0 -21
- package/dist/services/user-shop/query/getters.js.map +0 -1
- package/dist/services/user-shop/query/updates.js +0 -18
- package/dist/services/user-shop/query/updates.js.map +0 -1
- package/dist/services/user-shop/types.js +0 -2
- package/dist/services/user-shop/types.js.map +0 -1
|
@@ -1,145 +0,0 @@
|
|
|
1
|
-
import { getComputedCharacteristicValue } from '@opfr/raids';
|
|
2
|
-
import { hasExpire, mergeObjects } from '@opfr/utils-lang';
|
|
3
|
-
import { DEFAULT_MAX_HP, HP_PER_VITALITY } from '@opfr/utils-type';
|
|
4
|
-
import { CHARACTERISTICS } from '@opfr/utils-type';
|
|
5
|
-
import { findUserInventory } from '../../user-inventory';
|
|
6
|
-
import { userInventoryGetters } from '../../user-inventory';
|
|
7
|
-
import { userMetaModel } from '../definition/model';
|
|
8
|
-
import { findUserMeta } from '../process/findOne';
|
|
9
|
-
export const getTotalCharacteristics = (userMeta) => {
|
|
10
|
-
return Object.fromEntries(CHARACTERISTICS.map(c => [
|
|
11
|
-
c,
|
|
12
|
-
getComputedCharacteristicValue(userMeta.characteristics[c]) +
|
|
13
|
-
userMeta.scrolls[c],
|
|
14
|
-
]));
|
|
15
|
-
};
|
|
16
|
-
export const isCooldownForXpPassed = (userMeta) => {
|
|
17
|
-
return Date.now() - userMeta.xp.lastMessageWithXp.getTime() > 60 * 1000;
|
|
18
|
-
};
|
|
19
|
-
export const calcXpBoost = (userMeta) => {
|
|
20
|
-
const { boost } = userMeta.xp;
|
|
21
|
-
return ((boost !== null && Date.now() < boost.getTime() ? 0.2 : 0) +
|
|
22
|
-
(userMeta.premium ? 0.5 : 0) +
|
|
23
|
-
userMeta.buffs.xp.global.reduce((acc, { expireAt, startAt, multiplier }) => acc +
|
|
24
|
-
((startAt ?? new Date()) <= new Date() && !hasExpire(expireAt)
|
|
25
|
-
? multiplier
|
|
26
|
-
: 0), 0));
|
|
27
|
-
};
|
|
28
|
-
export const calcMessageXp = (msg) => {
|
|
29
|
-
const messageSize = msg.trim().length;
|
|
30
|
-
const multiplier = 2;
|
|
31
|
-
if (messageSize < 10)
|
|
32
|
-
return 10 * multiplier;
|
|
33
|
-
if (messageSize > 300)
|
|
34
|
-
return 300 * multiplier;
|
|
35
|
-
return messageSize * multiplier;
|
|
36
|
-
};
|
|
37
|
-
export const calcXp = (userMeta, amount, multiplier) => {
|
|
38
|
-
amount *= 1 + calcXpBoost(userMeta);
|
|
39
|
-
return Math.ceil(amount * multiplier);
|
|
40
|
-
};
|
|
41
|
-
export const calcBerry = (userMeta, amount) => {
|
|
42
|
-
const boost = calcBerryGlobalBuff(userMeta);
|
|
43
|
-
if (amount <= 0)
|
|
44
|
-
return amount;
|
|
45
|
-
return Math.ceil(amount * (boost || 1));
|
|
46
|
-
};
|
|
47
|
-
export const calcCooldownWorkBuff = (userMeta) => {
|
|
48
|
-
return userMeta.buffs.cooldown.work.reduce((acc, { expireAt, startAt, multiplier }) => acc +
|
|
49
|
-
(new Date() >= (startAt ?? new Date()) && !hasExpire(expireAt)
|
|
50
|
-
? multiplier
|
|
51
|
-
: 0), 1);
|
|
52
|
-
};
|
|
53
|
-
export const calcDropWorkBuff = (userMeta) => {
|
|
54
|
-
return userMeta.buffs.drop.work.reduce((acc, { expireAt, startAt, multiplier }) => acc +
|
|
55
|
-
(new Date() >= (startAt ?? new Date()) && !hasExpire(expireAt)
|
|
56
|
-
? multiplier
|
|
57
|
-
: 0), 1);
|
|
58
|
-
};
|
|
59
|
-
export const calcBerryWorkBuff = (userMeta) => {
|
|
60
|
-
return userMeta.buffs.berry.work.reduce((acc, { expireAt, startAt, multiplier }) => acc +
|
|
61
|
-
(new Date() >= (startAt ?? new Date()) && !hasExpire(expireAt)
|
|
62
|
-
? multiplier
|
|
63
|
-
: 0), 1);
|
|
64
|
-
};
|
|
65
|
-
export const calcBerryGlobalBuff = (userMeta) => {
|
|
66
|
-
return userMeta.buffs.berry.global.reduce((acc, { expireAt, startAt, multiplier }) => acc +
|
|
67
|
-
(new Date() >= (startAt ?? new Date()) && !hasExpire(expireAt)
|
|
68
|
-
? multiplier
|
|
69
|
-
: 0), 1);
|
|
70
|
-
};
|
|
71
|
-
export const calcCooldownCasinoBuff = (userMeta) => {
|
|
72
|
-
return userMeta.buffs.cooldown.casino.reduce((acc, { expireAt, startAt, multiplier }) => acc +
|
|
73
|
-
(new Date() >= (startAt ?? new Date()) && !hasExpire(expireAt)
|
|
74
|
-
? multiplier
|
|
75
|
-
: 0), 1);
|
|
76
|
-
};
|
|
77
|
-
export const getMaxHp = async (id, _userMeta, _userInventory) => {
|
|
78
|
-
const userMeta = _userMeta ?? (await findUserMeta(id, { buffs: -1, xp: -1 }));
|
|
79
|
-
const userInventory = _userInventory ??
|
|
80
|
-
(await findUserInventory(id, { itemList: -1, equipmentList: -1 }));
|
|
81
|
-
return (((getTotalCharacteristics(userMeta).vitality ?? 0) +
|
|
82
|
-
userInventoryGetters.getUserEquipmentsCharacteristics(userInventory)
|
|
83
|
-
.vitality) *
|
|
84
|
-
HP_PER_VITALITY +
|
|
85
|
-
DEFAULT_MAX_HP);
|
|
86
|
-
};
|
|
87
|
-
export const hasCharacteristicRequirement = async (id, requirement, _userMeta, _userInventory) => {
|
|
88
|
-
const userMeta = _userMeta ?? (await findUserMeta(id, { buffs: -1, xp: -1 }));
|
|
89
|
-
const userInventory = _userInventory ??
|
|
90
|
-
(await findUserInventory(id, { itemList: -1, equipmentList: -1 }));
|
|
91
|
-
const characteristics = mergeObjects(getTotalCharacteristics(userMeta), userInventoryGetters.getUserEquipmentsCharacteristics(userInventory), (a, b) => a + b);
|
|
92
|
-
for (const characteristic of Object.keys(requirement)) {
|
|
93
|
-
if (characteristics[characteristic] < (requirement[characteristic] ?? 0)) {
|
|
94
|
-
return false;
|
|
95
|
-
}
|
|
96
|
-
}
|
|
97
|
-
return true;
|
|
98
|
-
};
|
|
99
|
-
export const getGlobalRank = async (id) => {
|
|
100
|
-
return (await userMetaModel.aggregate([
|
|
101
|
-
{
|
|
102
|
-
$setWindowFields: {
|
|
103
|
-
sortBy: { 'xp.amount': -1 },
|
|
104
|
-
output: {
|
|
105
|
-
rank: { $rank: {} },
|
|
106
|
-
},
|
|
107
|
-
},
|
|
108
|
-
},
|
|
109
|
-
{ $match: { _id: id } },
|
|
110
|
-
{ $project: { rank: 1 } },
|
|
111
|
-
]))[0];
|
|
112
|
-
};
|
|
113
|
-
export const getBerryRank = async (id) => {
|
|
114
|
-
return (await userMetaModel.aggregate([
|
|
115
|
-
{
|
|
116
|
-
$setWindowFields: {
|
|
117
|
-
sortBy: { berry: -1 },
|
|
118
|
-
output: {
|
|
119
|
-
rank: { $rank: {} },
|
|
120
|
-
},
|
|
121
|
-
},
|
|
122
|
-
},
|
|
123
|
-
{ $match: { _id: id } },
|
|
124
|
-
{ $project: { rank: 1 } },
|
|
125
|
-
]))[0];
|
|
126
|
-
};
|
|
127
|
-
export const hasMalusBuff = (userMeta) => {
|
|
128
|
-
const allBuffs = [
|
|
129
|
-
...userMeta.buffs.xp.global,
|
|
130
|
-
...userMeta.buffs.berry.global,
|
|
131
|
-
...userMeta.buffs.berry.work,
|
|
132
|
-
...userMeta.buffs.cooldown.work,
|
|
133
|
-
...userMeta.buffs.cooldown.casino,
|
|
134
|
-
...userMeta.buffs.drop.work,
|
|
135
|
-
];
|
|
136
|
-
for (const { multiplier, startAt, expireAt } of allBuffs) {
|
|
137
|
-
if (multiplier < 0 &&
|
|
138
|
-
new Date() < expireAt &&
|
|
139
|
-
(startAt ?? new Date()) <= new Date()) {
|
|
140
|
-
return true;
|
|
141
|
-
}
|
|
142
|
-
}
|
|
143
|
-
return false;
|
|
144
|
-
};
|
|
145
|
-
//# sourceMappingURL=getters.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"getters.js","sourceRoot":"","sources":["../../../../src/services/user-meta/query/getters.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,226 +0,0 @@
|
|
|
1
|
-
import { findUserInventory } from '../../user-inventory';
|
|
2
|
-
import { findUserMeta } from '../process/findOne';
|
|
3
|
-
import { findUserMetaAndUpdate } from '../process/findOneAndUpdate';
|
|
4
|
-
import { updateUserMeta } from '../process/updateOne';
|
|
5
|
-
import { getMaxHp } from './getters';
|
|
6
|
-
export const updateLastMessageTime = async (userId) => {
|
|
7
|
-
await updateUserMeta(userId, {
|
|
8
|
-
$set: { 'xp.lastMessageWithXp': new Date() },
|
|
9
|
-
});
|
|
10
|
-
};
|
|
11
|
-
export const addXp = async (userId, amount) => {
|
|
12
|
-
await updateUserMeta(userId, { $inc: { 'xp.amount': amount } });
|
|
13
|
-
};
|
|
14
|
-
export const addBerry = async (userId, amount) => {
|
|
15
|
-
await updateUserMeta(userId, [
|
|
16
|
-
{
|
|
17
|
-
$set: {
|
|
18
|
-
berry: {
|
|
19
|
-
$max: [{ $add: ['$berry', amount] }, 0],
|
|
20
|
-
},
|
|
21
|
-
},
|
|
22
|
-
},
|
|
23
|
-
]);
|
|
24
|
-
};
|
|
25
|
-
export const updatePremium = async (userId, premium) => {
|
|
26
|
-
await updateUserMeta(userId, { $set: { premium } });
|
|
27
|
-
};
|
|
28
|
-
export const updateBoost = async (userId, ms) => {
|
|
29
|
-
const { xp: { boost }, } = await findUserMetaAndUpdate(userId, [
|
|
30
|
-
{
|
|
31
|
-
$set: {
|
|
32
|
-
'xp.boost': {
|
|
33
|
-
$cond: {
|
|
34
|
-
if: {
|
|
35
|
-
$or: [{ $not: '$xp.boost' }, { $lt: ['$xp.boost', new Date()] }],
|
|
36
|
-
},
|
|
37
|
-
then: { $add: [new Date(), ms] },
|
|
38
|
-
else: { $add: ['$xp.boost', ms] },
|
|
39
|
-
},
|
|
40
|
-
},
|
|
41
|
-
},
|
|
42
|
-
},
|
|
43
|
-
]);
|
|
44
|
-
return boost;
|
|
45
|
-
};
|
|
46
|
-
export const updateBuff = async (userId, path, origin, multiplier, endIn, startIn) => {
|
|
47
|
-
await updateUserMeta(userId, [
|
|
48
|
-
{
|
|
49
|
-
$set: {
|
|
50
|
-
[`buffs.${path}`]: {
|
|
51
|
-
$map: {
|
|
52
|
-
input: `$buffs.${path}`,
|
|
53
|
-
as: 'buff',
|
|
54
|
-
in: {
|
|
55
|
-
$cond: {
|
|
56
|
-
if: {
|
|
57
|
-
$eq: [
|
|
58
|
-
{
|
|
59
|
-
$substr: [
|
|
60
|
-
'$$buff.origin',
|
|
61
|
-
0,
|
|
62
|
-
{ $indexOfBytes: ['$$buff.origin', '$'] },
|
|
63
|
-
],
|
|
64
|
-
},
|
|
65
|
-
{ $substr: [origin, 0, { $indexOfBytes: [origin, '$'] }] },
|
|
66
|
-
],
|
|
67
|
-
},
|
|
68
|
-
then: {
|
|
69
|
-
multiplier: '$$buff.multiplier',
|
|
70
|
-
origin: '$$buff.origin',
|
|
71
|
-
expireAt: {
|
|
72
|
-
$cond: {
|
|
73
|
-
if: { $lt: ['$$buff.expireAt', new Date()] },
|
|
74
|
-
then: { $add: [new Date(), endIn * 60 * 60 * 1000] },
|
|
75
|
-
else: {
|
|
76
|
-
$add: ['$$buff.expireAt', endIn * 60 * 60 * 1000],
|
|
77
|
-
},
|
|
78
|
-
},
|
|
79
|
-
},
|
|
80
|
-
startAt: {
|
|
81
|
-
$cond: {
|
|
82
|
-
if: { $gte: ['$$buff.startAt', new Date()] },
|
|
83
|
-
then: '$$buff.startAt',
|
|
84
|
-
else: {
|
|
85
|
-
$add: [new Date(), (startIn ?? 0) * 60 * 60 * 1000],
|
|
86
|
-
},
|
|
87
|
-
},
|
|
88
|
-
},
|
|
89
|
-
},
|
|
90
|
-
else: '$$buff',
|
|
91
|
-
},
|
|
92
|
-
},
|
|
93
|
-
},
|
|
94
|
-
},
|
|
95
|
-
},
|
|
96
|
-
},
|
|
97
|
-
{
|
|
98
|
-
$set: {
|
|
99
|
-
[`buffs.${path}`]: {
|
|
100
|
-
$cond: {
|
|
101
|
-
if: {
|
|
102
|
-
$in: [
|
|
103
|
-
{ $substr: [origin, 0, { $indexOfBytes: [origin, '$'] }] },
|
|
104
|
-
{
|
|
105
|
-
$map: {
|
|
106
|
-
input: `$buffs.${path}`,
|
|
107
|
-
as: 'b',
|
|
108
|
-
in: {
|
|
109
|
-
$substr: [
|
|
110
|
-
'$$b.origin',
|
|
111
|
-
0,
|
|
112
|
-
{ $indexOfBytes: ['$$b.origin', '$'] },
|
|
113
|
-
],
|
|
114
|
-
},
|
|
115
|
-
},
|
|
116
|
-
},
|
|
117
|
-
],
|
|
118
|
-
},
|
|
119
|
-
then: `$buffs.${path}`,
|
|
120
|
-
else: {
|
|
121
|
-
$concatArrays: [
|
|
122
|
-
`$buffs.${path}`,
|
|
123
|
-
[
|
|
124
|
-
{
|
|
125
|
-
multiplier,
|
|
126
|
-
origin,
|
|
127
|
-
expireAt: { $add: [new Date(), endIn * 60 * 60 * 1000] },
|
|
128
|
-
startAt: {
|
|
129
|
-
$add: [new Date(), (startIn ?? 0) * 60 * 60 * 1000],
|
|
130
|
-
},
|
|
131
|
-
},
|
|
132
|
-
],
|
|
133
|
-
],
|
|
134
|
-
},
|
|
135
|
-
},
|
|
136
|
-
},
|
|
137
|
-
},
|
|
138
|
-
},
|
|
139
|
-
]);
|
|
140
|
-
};
|
|
141
|
-
export const gainHp = async (user, hp, { userMeta: _userMeta, userInventory: _userInventory, }) => {
|
|
142
|
-
const userMeta = _userMeta ?? (await findUserMeta(user, { buffs: -1, xp: -1 }));
|
|
143
|
-
const userInventory = _userInventory ??
|
|
144
|
-
(await findUserInventory(user, { itemList: -1, equipmentList: -1 }));
|
|
145
|
-
const maxHp = await getMaxHp(user, userMeta, userInventory);
|
|
146
|
-
const diff = maxHp - userMeta.hp;
|
|
147
|
-
await updateUserMeta(user, {
|
|
148
|
-
$set: { hp: userMeta.hp + Math.floor(Math.min(hp, diff)) },
|
|
149
|
-
});
|
|
150
|
-
};
|
|
151
|
-
export const loseHp = async (user, hp) => {
|
|
152
|
-
await updateUserMeta(user, [
|
|
153
|
-
{
|
|
154
|
-
$set: { hp: { $max: [{ $add: ['$hp', -hp] }, 0] } },
|
|
155
|
-
},
|
|
156
|
-
]);
|
|
157
|
-
};
|
|
158
|
-
export const updateHp = async (user, prevMaxHp) => {
|
|
159
|
-
const currentMaxHp = await getMaxHp(user);
|
|
160
|
-
await updateUserMeta(user, [
|
|
161
|
-
{
|
|
162
|
-
$set: {
|
|
163
|
-
hp: {
|
|
164
|
-
$round: [
|
|
165
|
-
{
|
|
166
|
-
$multiply: [{ $divide: ['$hp', prevMaxHp] }, currentMaxHp],
|
|
167
|
-
},
|
|
168
|
-
0,
|
|
169
|
-
],
|
|
170
|
-
},
|
|
171
|
-
},
|
|
172
|
-
},
|
|
173
|
-
]);
|
|
174
|
-
};
|
|
175
|
-
export const addCharacteristics = async (user, characteristics) => {
|
|
176
|
-
const prevMaxHp = await getMaxHp(user);
|
|
177
|
-
const record = Object.fromEntries(Object.entries(characteristics)
|
|
178
|
-
.filter(([, value]) => value !== 0)
|
|
179
|
-
.map(([key, value]) => [`characteristics.${key}`, value]));
|
|
180
|
-
await updateUserMeta(user, {
|
|
181
|
-
$inc: record,
|
|
182
|
-
});
|
|
183
|
-
updateHp(user, prevMaxHp);
|
|
184
|
-
};
|
|
185
|
-
export const addScrollCharacteristic = async (user, characteristics) => {
|
|
186
|
-
const prevMaxHp = await getMaxHp(user);
|
|
187
|
-
const record = Object.fromEntries(Object.entries(characteristics)
|
|
188
|
-
.filter(([, value]) => value !== 0)
|
|
189
|
-
.map(([key, value]) => [`scrolls.${key}`, value]));
|
|
190
|
-
await updateUserMeta(user, {
|
|
191
|
-
$inc: record,
|
|
192
|
-
});
|
|
193
|
-
updateHp(user, prevMaxHp);
|
|
194
|
-
};
|
|
195
|
-
export const resetCharacteristics = async (user, isFree, userMeta) => {
|
|
196
|
-
const prevMaxHp = await getMaxHp(user, userMeta);
|
|
197
|
-
const obj = {
|
|
198
|
-
vitality: 0,
|
|
199
|
-
strength: 0,
|
|
200
|
-
agility: 0,
|
|
201
|
-
chance: 0,
|
|
202
|
-
intelligence: 0,
|
|
203
|
-
wisdom: 0,
|
|
204
|
-
};
|
|
205
|
-
if (isFree) {
|
|
206
|
-
await updateUserMeta(user, {
|
|
207
|
-
$set: {
|
|
208
|
-
characteristics: obj,
|
|
209
|
-
'resetCharacteristics.free': false,
|
|
210
|
-
},
|
|
211
|
-
});
|
|
212
|
-
}
|
|
213
|
-
else {
|
|
214
|
-
await updateUserMeta(user, {
|
|
215
|
-
$set: {
|
|
216
|
-
characteristics: obj,
|
|
217
|
-
'resetCharacteristics.nextAvailable': new Date(Date.now() + 30 * 24 * 60 * 60 * 1000),
|
|
218
|
-
},
|
|
219
|
-
$inc: {
|
|
220
|
-
berry: -100_000_000,
|
|
221
|
-
},
|
|
222
|
-
});
|
|
223
|
-
}
|
|
224
|
-
updateHp(user, prevMaxHp);
|
|
225
|
-
};
|
|
226
|
-
//# sourceMappingURL=updates.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"updates.js","sourceRoot":"","sources":["../../../../src/services/user-meta/query/updates.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/services/user-meta/types.ts"],"names":[],"mappings":""}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"model.js","sourceRoot":"","sources":["../../../../src/services/user-ornaments/definition/model.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAGjC,OAAO,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAE/C,MAAM,CAAC,MAAM,kBAAkB,GAC7B,KAAK,CAAwB,eAAe,EAAE,mBAAmB,CAAC,CAAC"}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import { Schema } from 'mongoose';
|
|
2
|
-
const userOrnamentsSchema = new Schema({
|
|
3
|
-
user: {
|
|
4
|
-
type: Schema.Types.ObjectId,
|
|
5
|
-
required: true,
|
|
6
|
-
unique: true,
|
|
7
|
-
ref: 'User',
|
|
8
|
-
},
|
|
9
|
-
unlockedFactionBadges: { type: [String], default: [] },
|
|
10
|
-
unlockedBadges: { type: [String], default: [] },
|
|
11
|
-
unlockedTitles: { type: [String], default: [] },
|
|
12
|
-
selectedTitle: { type: String, default: null },
|
|
13
|
-
unlockedBackgrounds: { type: [String], default: ['default'] },
|
|
14
|
-
selectedBackground: { type: String, default: 'default' },
|
|
15
|
-
unlockedProfileAssets: { type: [String], default: [] },
|
|
16
|
-
});
|
|
17
|
-
userOrnamentsSchema.index({ user: 1 });
|
|
18
|
-
export { userOrnamentsSchema };
|
|
19
|
-
//# sourceMappingURL=schema.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../../src/services/user-ornaments/definition/schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAIlC,MAAM,mBAAmB,GAAG,IAAI,MAAM,CAAwB;IAC5D,IAAI,EAAE;QACJ,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,QAAQ;QAC3B,QAAQ,EAAE,IAAI;QACd,MAAM,EAAE,IAAI;QACZ,GAAG,EAAE,MAAM;KACZ;IAED,qBAAqB,EAAE,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE;IACtD,cAAc,EAAE,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE;IAE/C,cAAc,EAAE,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE;IAC/C,aAAa,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE;IAE9C,mBAAmB,EAAE,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,CAAC,SAAS,CAAC,EAAE;IAC7D,kBAAkB,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE;IAExD,qBAAqB,EAAE,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE;CACvD,CAAC,CAAC;AAEH,mBAAmB,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;AAEvC,OAAO,EAAE,mBAAmB,EAAE,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/services/user-ornaments/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,oBAAoB,MAAM,iBAAiB,CAAC;AAIxD,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAExD,cAAc,mBAAmB,CAAC;AAElC,OAAO,EAAE,oBAAoB,EAAE,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"create.js","sourceRoot":"","sources":["../../../../src/services/user-ornaments/process/create.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAGzD,MAAM,CAAC,MAAM,mBAAmB,GAAG,KAAK,EACtC,IAAoB,EACY,EAAE;IAClC,OAAO,MAAM,kBAAkB,CAAC,MAAM,CAAC;QACrC,IAAI;KACL,CAAC,CAAC;AACL,CAAC,CAAC"}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import { userOrnamentsModel } from '../definition/model';
|
|
2
|
-
import { createUserOrnaments } from './create';
|
|
3
|
-
export const findUserOrnaments = async (user, projection) => {
|
|
4
|
-
const userOrnaments = await userOrnamentsModel.findOne({ user }, projection);
|
|
5
|
-
if (!userOrnaments) {
|
|
6
|
-
return await createUserOrnaments(user);
|
|
7
|
-
}
|
|
8
|
-
return userOrnaments;
|
|
9
|
-
};
|
|
10
|
-
//# sourceMappingURL=findOne.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"findOne.js","sourceRoot":"","sources":["../../../../src/services/user-ornaments/process/findOne.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAEzD,OAAO,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAE/C,MAAM,CAAC,MAAM,iBAAiB,GAAG,KAAK,EACpC,IAAoB,EACpB,UAA0C,EAC1C,EAAE;IACF,MAAM,aAAa,GAAG,MAAM,kBAAkB,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,EAAE,UAAU,CAAC,CAAC;IAE7E,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,OAAO,MAAM,mBAAmB,CAAC,IAAI,CAAC,CAAC;IACzC,CAAC;IACD,OAAO,aAAa,CAAC;AACvB,CAAC,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"updateOne.js","sourceRoot":"","sources":["../../../../src/services/user-ornaments/process/updateOne.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAGzD,MAAM,CAAC,MAAM,mBAAmB,GAAG,KAAK,EACtC,IAAoB,EACpB,MAA0E,EAC1E,EAAE;IACF,MAAM,kBAAkB,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;AACzE,CAAC,CAAC"}
|
|
@@ -1,58 +0,0 @@
|
|
|
1
|
-
import { updateUserOrnaments } from '../process/updateOne';
|
|
2
|
-
export const unlockTitle = async (user, titleId) => {
|
|
3
|
-
await updateUserOrnaments(user, { $addToSet: { unlockedTitles: titleId } });
|
|
4
|
-
};
|
|
5
|
-
export const unlockTitles = async (user, titleIds) => {
|
|
6
|
-
await updateUserOrnaments(user, {
|
|
7
|
-
$addToSet: { unlockedTitles: { $each: titleIds } },
|
|
8
|
-
});
|
|
9
|
-
};
|
|
10
|
-
export const selectTitle = async (user, titleId) => {
|
|
11
|
-
await updateUserOrnaments(user, { $set: { selectedTitle: titleId } });
|
|
12
|
-
};
|
|
13
|
-
export const unlockBackground = async (user, backgroundId) => {
|
|
14
|
-
await updateUserOrnaments(user, {
|
|
15
|
-
$addToSet: { unlockedBackgrounds: backgroundId },
|
|
16
|
-
});
|
|
17
|
-
};
|
|
18
|
-
export const unlockBackgrounds = async (user, backgroundIds) => {
|
|
19
|
-
await updateUserOrnaments(user, {
|
|
20
|
-
$addToSet: { unlockedBackgrounds: { $each: backgroundIds } },
|
|
21
|
-
});
|
|
22
|
-
};
|
|
23
|
-
export const selectBackground = async (user, backgroundId) => {
|
|
24
|
-
await updateUserOrnaments(user, {
|
|
25
|
-
$set: { selectedBackground: backgroundId },
|
|
26
|
-
});
|
|
27
|
-
};
|
|
28
|
-
export const unlockBadge = async (user, badge, rankId) => {
|
|
29
|
-
if (badge.isProgressive) {
|
|
30
|
-
await updateUserOrnaments(user, {
|
|
31
|
-
$addToSet: { unlockedBadges: `${badge.id}_${rankId}` },
|
|
32
|
-
});
|
|
33
|
-
}
|
|
34
|
-
else {
|
|
35
|
-
await updateUserOrnaments(user, {
|
|
36
|
-
$addToSet: { unlockedBadges: badge.id },
|
|
37
|
-
});
|
|
38
|
-
}
|
|
39
|
-
};
|
|
40
|
-
export const unlockFactionBadge = async (user, rankId) => {
|
|
41
|
-
await updateUserOrnaments(user, {
|
|
42
|
-
$addToSet: {
|
|
43
|
-
unlockedFactionBadges: {
|
|
44
|
-
$each: [
|
|
45
|
-
`b_marine_${rankId}`,
|
|
46
|
-
`b_revolutionary_${rankId}`,
|
|
47
|
-
`b_pirate_${rankId}`,
|
|
48
|
-
],
|
|
49
|
-
},
|
|
50
|
-
},
|
|
51
|
-
});
|
|
52
|
-
};
|
|
53
|
-
export const unlockProfileAsset = async (user, asset) => {
|
|
54
|
-
await updateUserOrnaments(user, {
|
|
55
|
-
$addToSet: { unlockedProfileAssets: asset },
|
|
56
|
-
});
|
|
57
|
-
};
|
|
58
|
-
//# sourceMappingURL=updates.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"updates.js","sourceRoot":"","sources":["../../../../src/services/user-ornaments/query/updates.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAE3D,MAAM,CAAC,MAAM,WAAW,GAAG,KAAK,EAAE,IAAoB,EAAE,OAAgB,EAAE,EAAE;IAC1E,MAAM,mBAAmB,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,EAAE,cAAc,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC;AAC9E,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,YAAY,GAAG,KAAK,EAC/B,IAAoB,EACpB,QAAmB,EACnB,EAAE;IACF,MAAM,mBAAmB,CAAC,IAAI,EAAE;QAC9B,SAAS,EAAE,EAAE,cAAc,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE;KACnD,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,WAAW,GAAG,KAAK,EAC9B,IAAoB,EACpB,OAAuB,EACvB,EAAE;IACF,MAAM,mBAAmB,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,EAAE,aAAa,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC;AACxE,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAG,KAAK,EACnC,IAAoB,EACpB,YAA0B,EAC1B,EAAE;IACF,MAAM,mBAAmB,CAAC,IAAI,EAAE;QAC9B,SAAS,EAAE,EAAE,mBAAmB,EAAE,YAAY,EAAE;KACjD,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,iBAAiB,GAAG,KAAK,EACpC,IAAoB,EACpB,aAA6B,EAC7B,EAAE;IACF,MAAM,mBAAmB,CAAC,IAAI,EAAE;QAC9B,SAAS,EAAE,EAAE,mBAAmB,EAAE,EAAE,KAAK,EAAE,aAAa,EAAE,EAAE;KAC7D,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAG,KAAK,EACnC,IAAoB,EACpB,YAA0B,EAC1B,EAAE;IACF,MAAM,mBAAmB,CAAC,IAAI,EAAE;QAC9B,IAAI,EAAE,EAAE,kBAAkB,EAAE,YAAY,EAAE;KAC3C,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,WAAW,GAAG,KAAK,EAC9B,IAAoB,EACpB,KAAY,EACZ,MAAc,EACd,EAAE;IACF,IAAI,KAAK,CAAC,aAAa,EAAE,CAAC;QACxB,MAAM,mBAAmB,CAAC,IAAI,EAAE;YAC9B,SAAS,EAAE,EAAE,cAAc,EAAE,GAAG,KAAK,CAAC,EAAE,IAAI,MAAM,EAAE,EAAE;SACvD,CAAC,CAAC;IACL,CAAC;SAAM,CAAC;QACN,MAAM,mBAAmB,CAAC,IAAI,EAAE;YAC9B,SAAS,EAAE,EAAE,cAAc,EAAE,KAAK,CAAC,EAAE,EAAE;SACxC,CAAC,CAAC;IACL,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,kBAAkB,GAAG,KAAK,EACrC,IAAoB,EACpB,MAAc,EACd,EAAE;IACF,MAAM,mBAAmB,CAAC,IAAI,EAAE;QAC9B,SAAS,EAAE;YACT,qBAAqB,EAAE;gBACrB,KAAK,EAAE;oBACL,YAAY,MAAM,EAAE;oBACpB,mBAAmB,MAAM,EAAE;oBAC3B,YAAY,MAAM,EAAE;iBACrB;aACF;SACF;KACF,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,kBAAkB,GAAG,KAAK,EACrC,IAAoB,EACpB,KAAqB,EACrB,EAAE;IACF,MAAM,mBAAmB,CAAC,IAAI,EAAE;QAC9B,SAAS,EAAE,EAAE,qBAAqB,EAAE,KAAK,EAAE;KAC5C,CAAC,CAAC;AACL,CAAC,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/services/user-ornaments/types.ts"],"names":[],"mappings":""}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"model.js","sourceRoot":"","sources":["../../../../src/services/user-quest/definition/model.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAGjC,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAE3C,MAAM,CAAC,MAAM,cAAc,GACzB,KAAK,CAAoB,WAAW,EAAE,eAAe,CAAC,CAAC"}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { Schema } from 'mongoose';
|
|
2
|
-
const userQuestSchema = new Schema({
|
|
3
|
-
user: {
|
|
4
|
-
type: Schema.Types.ObjectId,
|
|
5
|
-
required: true,
|
|
6
|
-
unique: true,
|
|
7
|
-
ref: 'User',
|
|
8
|
-
},
|
|
9
|
-
completed: { type: [String], default: [] },
|
|
10
|
-
daily: { type: Object, default: {} },
|
|
11
|
-
streak: { type: Number, default: 0 },
|
|
12
|
-
lastFullComplete: { type: Date, default: new Date() },
|
|
13
|
-
});
|
|
14
|
-
userQuestSchema.index({ user: 1 });
|
|
15
|
-
export { userQuestSchema };
|
|
16
|
-
//# sourceMappingURL=schema.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../../src/services/user-quest/definition/schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAIlC,MAAM,eAAe,GAAG,IAAI,MAAM,CAAoB;IACpD,IAAI,EAAE;QACJ,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,QAAQ;QAC3B,QAAQ,EAAE,IAAI;QACd,MAAM,EAAE,IAAI;QACZ,GAAG,EAAE,MAAM;KACZ;IAED,SAAS,EAAE,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE;IAC1C,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,EAAE;IACpC,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE;IACpC,gBAAgB,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,IAAI,EAAE,EAAE;CACtD,CAAC,CAAC;AAEH,eAAe,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;AAEnC,OAAO,EAAE,eAAe,EAAE,CAAC"}
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import * as userQuestGetters from './query/getters';
|
|
2
|
-
import * as userQuestUpdates from './query/updates';
|
|
3
|
-
export { userQuestModel } from './definition/model';
|
|
4
|
-
export * from './process/findOne';
|
|
5
|
-
export { userQuestGetters, userQuestUpdates };
|
|
6
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/services/user-quest/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,gBAAgB,MAAM,iBAAiB,CAAC;AACpD,OAAO,KAAK,gBAAgB,MAAM,iBAAiB,CAAC;AAIpD,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEpD,cAAc,mBAAmB,CAAC;AAElC,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"create.js","sourceRoot":"","sources":["../../../../src/services/user-quest/process/create.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAGrD,MAAM,CAAC,MAAM,eAAe,GAAG,KAAK,EAClC,IAAoB,EACQ,EAAE;IAC9B,OAAO,MAAM,cAAc,CAAC,MAAM,CAAC;QACjC,IAAI;KACL,CAAC,CAAC;AACL,CAAC,CAAC"}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import { userQuestModel } from '../definition/model';
|
|
2
|
-
import { createUserQuest } from './create';
|
|
3
|
-
export const findUserQuest = async (user) => {
|
|
4
|
-
const userQuest = await userQuestModel.findOne({ user });
|
|
5
|
-
if (!userQuest) {
|
|
6
|
-
return await createUserQuest(user);
|
|
7
|
-
}
|
|
8
|
-
return userQuest;
|
|
9
|
-
};
|
|
10
|
-
//# sourceMappingURL=findOne.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"findOne.js","sourceRoot":"","sources":["../../../../src/services/user-quest/process/findOne.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAErD,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAE3C,MAAM,CAAC,MAAM,aAAa,GAAG,KAAK,EAChC,IAAoB,EACQ,EAAE;IAC9B,MAAM,SAAS,GAAG,MAAM,cAAc,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;IAEzD,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,OAAO,MAAM,eAAe,CAAC,IAAI,CAAC,CAAC;IACrC,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC,CAAC"}
|