@opfr/quests 1.1.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/assets/berry.webp +0 -0
- package/assets/success_COMMON.webp +0 -0
- package/assets/success_EPIC.webp +0 -0
- package/assets/success_LEGENDARY.webp +0 -0
- package/assets/success_MYTHIC.webp +0 -0
- package/assets/success_RARE.webp +0 -0
- package/assets/xp.webp +0 -0
- package/dist/canvas.d.ts +9 -0
- package/dist/canvas.d.ts.map +1 -0
- package/dist/canvas.js +102 -0
- package/dist/canvas.js.map +1 -0
- package/dist/class/crewBaseQuest.d.ts +14 -0
- package/dist/class/crewBaseQuest.d.ts.map +1 -0
- package/dist/class/crewBaseQuest.js +70 -0
- package/dist/class/crewBaseQuest.js.map +1 -0
- package/dist/class/userBaseQuest.d.ts +20 -0
- package/dist/class/userBaseQuest.d.ts.map +1 -0
- package/dist/class/userBaseQuest.js +100 -0
- package/dist/class/userBaseQuest.js.map +1 -0
- package/dist/constants.d.ts +5 -0
- package/dist/constants.d.ts.map +1 -0
- package/dist/constants.js +13 -0
- package/dist/constants.js.map +1 -0
- package/dist/events/callbacks.d.ts +4 -0
- package/dist/events/callbacks.d.ts.map +1 -0
- package/dist/events/callbacks.js +53 -0
- package/dist/events/callbacks.js.map +1 -0
- package/dist/events/event.d.ts +7 -0
- package/dist/events/event.d.ts.map +1 -0
- package/dist/events/event.js +12 -0
- package/dist/events/event.js.map +1 -0
- package/dist/events/index.d.ts +3 -0
- package/dist/events/index.d.ts.map +1 -0
- package/dist/events/index.js +10 -0
- package/dist/events/index.js.map +1 -0
- package/dist/events/types.d.ts +5 -0
- package/dist/events/types.d.ts.map +1 -0
- package/dist/events/types.js +2 -0
- package/dist/events/types.js.map +1 -0
- package/dist/index.d.ts +6 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.es.js +5189 -0
- package/dist/index.js +5 -0
- package/dist/index.js.map +1 -0
- package/dist/index.umd.js +4 -0
- package/dist/quests/alcohols.d.ts +224 -0
- package/dist/quests/alcohols.d.ts.map +1 -0
- package/dist/quests/alcohols.js +325 -0
- package/dist/quests/alcohols.js.map +1 -0
- package/dist/quests/background.d.ts +34 -0
- package/dist/quests/background.d.ts.map +1 -0
- package/dist/quests/background.js +45 -0
- package/dist/quests/background.js.map +1 -0
- package/dist/quests/berry.d.ts +60 -0
- package/dist/quests/berry.d.ts.map +1 -0
- package/dist/quests/berry.js +75 -0
- package/dist/quests/berry.js.map +1 -0
- package/dist/quests/bet.d.ts +84 -0
- package/dist/quests/bet.d.ts.map +1 -0
- package/dist/quests/bet.js +109 -0
- package/dist/quests/bet.js.map +1 -0
- package/dist/quests/birthday.d.ts +14 -0
- package/dist/quests/birthday.d.ts.map +1 -0
- package/dist/quests/birthday.js +17 -0
- package/dist/quests/birthday.js.map +1 -0
- package/dist/quests/botPing.d.ts +17 -0
- package/dist/quests/botPing.d.ts.map +1 -0
- package/dist/quests/botPing.js +20 -0
- package/dist/quests/botPing.js.map +1 -0
- package/dist/quests/characteristics.d.ts +310 -0
- package/dist/quests/characteristics.d.ts.map +1 -0
- package/dist/quests/characteristics.js +400 -0
- package/dist/quests/characteristics.js.map +1 -0
- package/dist/quests/craft.d.ts +170 -0
- package/dist/quests/craft.d.ts.map +1 -0
- package/dist/quests/craft.js +245 -0
- package/dist/quests/craft.js.map +1 -0
- package/dist/quests/crewCarpenter.d.ts +70 -0
- package/dist/quests/crewCarpenter.d.ts.map +1 -0
- package/dist/quests/crewCarpenter.js +95 -0
- package/dist/quests/crewCarpenter.js.map +1 -0
- package/dist/quests/crewDaily.d.ts +27 -0
- package/dist/quests/crewDaily.d.ts.map +1 -0
- package/dist/quests/crewDaily.js +39 -0
- package/dist/quests/crewDaily.js.map +1 -0
- package/dist/quests/crewDisintegration.d.ts +16 -0
- package/dist/quests/crewDisintegration.d.ts.map +1 -0
- package/dist/quests/crewDisintegration.js +19 -0
- package/dist/quests/crewDisintegration.js.map +1 -0
- package/dist/quests/crewLevel.d.ts +65 -0
- package/dist/quests/crewLevel.d.ts.map +1 -0
- package/dist/quests/crewLevel.js +80 -0
- package/dist/quests/crewLevel.js.map +1 -0
- package/dist/quests/crewMoney.d.ts +65 -0
- package/dist/quests/crewMoney.d.ts.map +1 -0
- package/dist/quests/crewMoney.js +80 -0
- package/dist/quests/crewMoney.js.map +1 -0
- package/dist/quests/crewSize.d.ts +65 -0
- package/dist/quests/crewSize.d.ts.map +1 -0
- package/dist/quests/crewSize.js +80 -0
- package/dist/quests/crewSize.js.map +1 -0
- package/dist/quests/crewVocal.d.ts +65 -0
- package/dist/quests/crewVocal.d.ts.map +1 -0
- package/dist/quests/crewVocal.js +90 -0
- package/dist/quests/crewVocal.js.map +1 -0
- package/dist/quests/draw.d.ts +55 -0
- package/dist/quests/draw.d.ts.map +1 -0
- package/dist/quests/draw.js +80 -0
- package/dist/quests/draw.js.map +1 -0
- package/dist/quests/edito.d.ts +17 -0
- package/dist/quests/edito.d.ts.map +1 -0
- package/dist/quests/edito.js +22 -0
- package/dist/quests/edito.js.map +1 -0
- package/dist/quests/everyone.d.ts +15 -0
- package/dist/quests/everyone.d.ts.map +1 -0
- package/dist/quests/everyone.js +18 -0
- package/dist/quests/everyone.js.map +1 -0
- package/dist/quests/games.d.ts +135 -0
- package/dist/quests/games.d.ts.map +1 -0
- package/dist/quests/games.js +220 -0
- package/dist/quests/games.js.map +1 -0
- package/dist/quests/index.d.ts +6 -0
- package/dist/quests/index.d.ts.map +1 -0
- package/dist/quests/index.js +14 -0
- package/dist/quests/index.js.map +1 -0
- package/dist/quests/items.d.ts +117 -0
- package/dist/quests/items.d.ts.map +1 -0
- package/dist/quests/items.js +172 -0
- package/dist/quests/items.js.map +1 -0
- package/dist/quests/joinCrew.d.ts +12 -0
- package/dist/quests/joinCrew.d.ts.map +1 -0
- package/dist/quests/joinCrew.js +15 -0
- package/dist/quests/joinCrew.js.map +1 -0
- package/dist/quests/level.d.ts +114 -0
- package/dist/quests/level.d.ts.map +1 -0
- package/dist/quests/level.js +145 -0
- package/dist/quests/level.js.map +1 -0
- package/dist/quests/premium.d.ts +16 -0
- package/dist/quests/premium.d.ts.map +1 -0
- package/dist/quests/premium.js +19 -0
- package/dist/quests/premium.js.map +1 -0
- package/dist/quests/raid.d.ts +55 -0
- package/dist/quests/raid.d.ts.map +1 -0
- package/dist/quests/raid.js +80 -0
- package/dist/quests/raid.js.map +1 -0
- package/dist/quests/randomMessage.d.ts +55 -0
- package/dist/quests/randomMessage.d.ts.map +1 -0
- package/dist/quests/randomMessage.js +80 -0
- package/dist/quests/randomMessage.js.map +1 -0
- package/dist/quests/recipe.d.ts +60 -0
- package/dist/quests/recipe.d.ts.map +1 -0
- package/dist/quests/recipe.js +86 -0
- package/dist/quests/recipe.js.map +1 -0
- package/dist/quests/report.d.ts +15 -0
- package/dist/quests/report.d.ts.map +1 -0
- package/dist/quests/report.js +20 -0
- package/dist/quests/report.js.map +1 -0
- package/dist/quests/sendMessage.d.ts +60 -0
- package/dist/quests/sendMessage.d.ts.map +1 -0
- package/dist/quests/sendMessage.js +85 -0
- package/dist/quests/sendMessage.js.map +1 -0
- package/dist/quests/shop.d.ts +61 -0
- package/dist/quests/shop.d.ts.map +1 -0
- package/dist/quests/shop.js +86 -0
- package/dist/quests/shop.js.map +1 -0
- package/dist/quests/timeInVoice.d.ts +60 -0
- package/dist/quests/timeInVoice.d.ts.map +1 -0
- package/dist/quests/timeInVoice.js +85 -0
- package/dist/quests/timeInVoice.js.map +1 -0
- package/dist/quests/title.d.ts +34 -0
- package/dist/quests/title.d.ts.map +1 -0
- package/dist/quests/title.js +43 -0
- package/dist/quests/title.js.map +1 -0
- package/dist/quests/tournament.d.ts +234 -0
- package/dist/quests/tournament.d.ts.map +1 -0
- package/dist/quests/tournament.js +277 -0
- package/dist/quests/tournament.js.map +1 -0
- package/dist/quests/userCrew.d.ts +30 -0
- package/dist/quests/userCrew.d.ts.map +1 -0
- package/dist/quests/userCrew.js +36 -0
- package/dist/quests/userCrew.js.map +1 -0
- package/dist/quests/userDaily.d.ts +78 -0
- package/dist/quests/userDaily.d.ts.map +1 -0
- package/dist/quests/userDaily.js +113 -0
- package/dist/quests/userDaily.js.map +1 -0
- package/dist/quests/userXpToCrew.d.ts +60 -0
- package/dist/quests/userXpToCrew.d.ts.map +1 -0
- package/dist/quests/userXpToCrew.js +75 -0
- package/dist/quests/userXpToCrew.js.map +1 -0
- package/dist/quests/work.d.ts +55 -0
- package/dist/quests/work.d.ts.map +1 -0
- package/dist/quests/work.js +80 -0
- package/dist/quests/work.js.map +1 -0
- package/dist/quests/writeDifferentChat.d.ts +60 -0
- package/dist/quests/writeDifferentChat.d.ts.map +1 -0
- package/dist/quests/writeDifferentChat.js +85 -0
- package/dist/quests/writeDifferentChat.js.map +1 -0
- package/dist/types.d.ts +9 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +2 -0
- package/dist/types.js.map +1 -0
- package/dist/utils.d.ts +11 -0
- package/dist/utils.d.ts.map +1 -0
- package/dist/utils.js +70 -0
- package/dist/utils.js.map +1 -0
- package/package.json +45 -0
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
import { BadgeList, RANKS, getCurrentCrewLevel } from '@opfr/definitions';
|
|
2
|
+
import { QUEST_MIDDLEWARE_EVENT_NAME, crewMetaService, } from '@opfr/services';
|
|
3
|
+
import { CrewBaseQuest } from '../class/crewBaseQuest';
|
|
4
|
+
export class CrewBeLevel10 extends CrewBaseQuest {
|
|
5
|
+
name = 'Sympa votre barque';
|
|
6
|
+
id = 'crew_ship_level_10';
|
|
7
|
+
rankId = RANKS.COMMON.id;
|
|
8
|
+
description = "Atteindre le niveau 10 d'équipage";
|
|
9
|
+
berry = 50_000;
|
|
10
|
+
xp = 5_000;
|
|
11
|
+
crew = true;
|
|
12
|
+
badge = BadgeList.crewship;
|
|
13
|
+
static crewDependencies = [QUEST_MIDDLEWARE_EVENT_NAME.CREW_META];
|
|
14
|
+
async isValidated({ crewMeta }, crewId) {
|
|
15
|
+
const crewMetaDocument = crewMeta ?? (await crewMetaService.get(crewId));
|
|
16
|
+
return !!crewMetaDocument && getCurrentCrewLevel(crewMetaDocument.xp) >= 10;
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
export class CrewBeLevel25 extends CrewBaseQuest {
|
|
20
|
+
name = 'Joli bicoque';
|
|
21
|
+
id = 'crew_ship_level_25';
|
|
22
|
+
rankId = RANKS.RARE.id;
|
|
23
|
+
description = "Atteindre le niveau 25 d'équipage";
|
|
24
|
+
berry = 200_000;
|
|
25
|
+
xp = 25_000;
|
|
26
|
+
crew = true;
|
|
27
|
+
badge = BadgeList.crewship;
|
|
28
|
+
static crewDependencies = [QUEST_MIDDLEWARE_EVENT_NAME.CREW_META];
|
|
29
|
+
async isValidated({ crewMeta }, crewId) {
|
|
30
|
+
const crewMetaDocument = crewMeta ?? (await crewMetaService.get(crewId));
|
|
31
|
+
return !!crewMetaDocument && getCurrentCrewLevel(crewMetaDocument.xp) >= 25;
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
export class CrewBeLevel50 extends CrewBaseQuest {
|
|
35
|
+
name = "* C'est un fameux trois-mâts *";
|
|
36
|
+
id = 'crew_ship_level_50';
|
|
37
|
+
rankId = RANKS.EPIC.id;
|
|
38
|
+
description = "Atteindre le niveau 50 d'équipage";
|
|
39
|
+
berry = 1_000_000;
|
|
40
|
+
xp = 50_000;
|
|
41
|
+
crew = true;
|
|
42
|
+
badge = BadgeList.crewship;
|
|
43
|
+
static crewDependencies = [QUEST_MIDDLEWARE_EVENT_NAME.CREW_META];
|
|
44
|
+
async isValidated({ crewMeta }, crewId) {
|
|
45
|
+
const crewMetaDocument = crewMeta ?? (await crewMetaService.get(crewId));
|
|
46
|
+
return !!crewMetaDocument && getCurrentCrewLevel(crewMetaDocument.xp) >= 50;
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
export class CrewBeLevel75 extends CrewBaseQuest {
|
|
50
|
+
name = '* Fin comme un oiseau *';
|
|
51
|
+
id = 'crew_ship_level_75';
|
|
52
|
+
rankId = RANKS.LEGENDARY.id;
|
|
53
|
+
description = "Atteindre le niveau 75 d'équipage";
|
|
54
|
+
berry = 10_000_000;
|
|
55
|
+
xp = 100_000;
|
|
56
|
+
crew = true;
|
|
57
|
+
badge = BadgeList.crewship;
|
|
58
|
+
static crewDependencies = [QUEST_MIDDLEWARE_EVENT_NAME.CREW_META];
|
|
59
|
+
async isValidated({ crewMeta }, crewId) {
|
|
60
|
+
const crewMetaDocument = crewMeta ?? (await crewMetaService.get(crewId));
|
|
61
|
+
return !!crewMetaDocument && getCurrentCrewLevel(crewMetaDocument.xp) >= 75;
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
export class CrewBeLevel100 extends CrewBaseQuest {
|
|
65
|
+
name = '* Hisse et ho ! *';
|
|
66
|
+
id = 'crew_ship_level_100';
|
|
67
|
+
rankId = RANKS.MYTHIC.id;
|
|
68
|
+
description = "Atteindre le niveau 100 d'équipage";
|
|
69
|
+
berry = 50_000_000;
|
|
70
|
+
xp = 250_000;
|
|
71
|
+
crew = true;
|
|
72
|
+
titleId = 'title_Santiano';
|
|
73
|
+
badge = BadgeList.crewship;
|
|
74
|
+
static crewDependencies = [QUEST_MIDDLEWARE_EVENT_NAME.CREW_META];
|
|
75
|
+
async isValidated({ crewMeta }, crewId) {
|
|
76
|
+
const crewMetaDocument = crewMeta ?? (await crewMetaService.get(crewId));
|
|
77
|
+
return (!!crewMetaDocument && getCurrentCrewLevel(crewMetaDocument.xp) >= 100);
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
//# sourceMappingURL=crewLevel.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"crewLevel.js","sourceRoot":"","sources":["../../src/quests/crewLevel.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import { type ObjectId } from '@opfr/services';
|
|
2
|
+
import { CrewBaseQuest } from '../class/crewBaseQuest';
|
|
3
|
+
import type { QuestValidationDocumentMap } from '../types';
|
|
4
|
+
export declare class CrewHave100MBerry extends CrewBaseQuest {
|
|
5
|
+
name: string;
|
|
6
|
+
id: string;
|
|
7
|
+
rankId: import("@opfr/definitions").RankId.COMMON;
|
|
8
|
+
description: string;
|
|
9
|
+
berry: number;
|
|
10
|
+
xp: number;
|
|
11
|
+
crew: true;
|
|
12
|
+
badge: import("@opfr/definitions").Badge;
|
|
13
|
+
static crewDependencies: "middleware/quest/CREW_META"[];
|
|
14
|
+
isValidated({ crewMeta }: QuestValidationDocumentMap, crewId: ObjectId): Promise<boolean>;
|
|
15
|
+
}
|
|
16
|
+
export declare class CrewHave500MBerry extends CrewBaseQuest {
|
|
17
|
+
name: string;
|
|
18
|
+
id: string;
|
|
19
|
+
rankId: import("@opfr/definitions").RankId.RARE;
|
|
20
|
+
description: string;
|
|
21
|
+
berry: number;
|
|
22
|
+
xp: number;
|
|
23
|
+
crew: true;
|
|
24
|
+
badge: import("@opfr/definitions").Badge;
|
|
25
|
+
static crewDependencies: "middleware/quest/CREW_META"[];
|
|
26
|
+
isValidated({ crewMeta }: QuestValidationDocumentMap, crewId: ObjectId): Promise<boolean>;
|
|
27
|
+
}
|
|
28
|
+
export declare class CrewHave1MdBerry extends CrewBaseQuest {
|
|
29
|
+
name: string;
|
|
30
|
+
id: string;
|
|
31
|
+
rankId: import("@opfr/definitions").RankId.EPIC;
|
|
32
|
+
description: string;
|
|
33
|
+
berry: number;
|
|
34
|
+
xp: number;
|
|
35
|
+
crew: true;
|
|
36
|
+
badge: import("@opfr/definitions").Badge;
|
|
37
|
+
static crewDependencies: "middleware/quest/CREW_META"[];
|
|
38
|
+
isValidated({ crewMeta }: QuestValidationDocumentMap, crewId: ObjectId): Promise<boolean>;
|
|
39
|
+
}
|
|
40
|
+
export declare class CrewHave5MdBerry extends CrewBaseQuest {
|
|
41
|
+
name: string;
|
|
42
|
+
id: string;
|
|
43
|
+
rankId: import("@opfr/definitions").RankId.LEGENDARY;
|
|
44
|
+
description: string;
|
|
45
|
+
berry: number;
|
|
46
|
+
xp: number;
|
|
47
|
+
crew: true;
|
|
48
|
+
badge: import("@opfr/definitions").Badge;
|
|
49
|
+
static crewDependencies: "middleware/quest/CREW_META"[];
|
|
50
|
+
isValidated({ crewMeta }: QuestValidationDocumentMap, crewId: ObjectId): Promise<boolean>;
|
|
51
|
+
}
|
|
52
|
+
export declare class CrewHave50MdBerry extends CrewBaseQuest {
|
|
53
|
+
name: string;
|
|
54
|
+
id: string;
|
|
55
|
+
rankId: import("@opfr/definitions").RankId.MYTHIC;
|
|
56
|
+
description: string;
|
|
57
|
+
berry: number;
|
|
58
|
+
xp: number;
|
|
59
|
+
crew: true;
|
|
60
|
+
titleId: string;
|
|
61
|
+
badge: import("@opfr/definitions").Badge;
|
|
62
|
+
static crewDependencies: "middleware/quest/CREW_META"[];
|
|
63
|
+
isValidated({ crewMeta }: QuestValidationDocumentMap, crewId: ObjectId): Promise<boolean>;
|
|
64
|
+
}
|
|
65
|
+
//# sourceMappingURL=crewMoney.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"crewMoney.d.ts","sourceRoot":"","sources":["../../src/quests/crewMoney.ts"],"names":[],"mappings":"AACA,OAAO,EACL,KAAK,QAAQ,EAGd,MAAM,gBAAgB,CAAC;AAExB,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,UAAU,CAAC;AAE3D,qBAAa,iBAAkB,SAAQ,aAAa;IAClD,IAAI,SAAkC;IACtC,EAAE,SAA0B;IAC5B,MAAM,4CAAmB;IACzB,WAAW,SAAwD;IACnE,KAAK,SAAU;IACf,EAAE,SAAS;IACX,IAAI,EAAG,IAAI,CAAU;IAErB,KAAK,oCAAuB;IAE5B,OAAgB,gBAAgB,iCAA2C;IAErE,WAAW,CACf,EAAE,QAAQ,EAAE,EAAE,0BAA0B,EACxC,MAAM,EAAE,QAAQ;CAKnB;AAED,qBAAa,iBAAkB,SAAQ,aAAa;IAClD,IAAI,SAAkB;IACtB,EAAE,SAA0B;IAC5B,MAAM,0CAAiB;IACvB,WAAW,SAAwD;IACnE,KAAK,SAAW;IAChB,EAAE,SAAU;IACZ,IAAI,EAAG,IAAI,CAAU;IAErB,KAAK,oCAAuB;IAE5B,OAAgB,gBAAgB,iCAA2C;IAErE,WAAW,CACf,EAAE,QAAQ,EAAE,EAAE,0BAA0B,EACxC,MAAM,EAAE,QAAQ;CAKnB;AAED,qBAAa,gBAAiB,SAAQ,aAAa;IACjD,IAAI,SAA8C;IAClD,EAAE,SAAyB;IAC3B,MAAM,0CAAiB;IACvB,WAAW,SAA0D;IACrE,KAAK,SAAa;IAClB,EAAE,SAAU;IACZ,IAAI,EAAG,IAAI,CAAU;IAErB,KAAK,oCAAuB;IAE5B,OAAgB,gBAAgB,iCAA2C;IAErE,WAAW,CACf,EAAE,QAAQ,EAAE,EAAE,0BAA0B,EACxC,MAAM,EAAE,QAAQ;CAKnB;AAED,qBAAa,gBAAiB,SAAQ,aAAa;IACjD,IAAI,SAA+B;IACnC,EAAE,SAAyB;IAC3B,MAAM,+CAAsB;IAC5B,WAAW,SAA0D;IACrE,KAAK,SAAc;IACnB,EAAE,SAAW;IACb,IAAI,EAAG,IAAI,CAAU;IAErB,KAAK,oCAAuB;IAE5B,OAAgB,gBAAgB,iCAA2C;IAErE,WAAW,CACf,EAAE,QAAQ,EAAE,EAAE,0BAA0B,EACxC,MAAM,EAAE,QAAQ;CAKnB;AAED,qBAAa,iBAAkB,SAAQ,aAAa;IAClD,IAAI,SAAqC;IACzC,EAAE,SAA0B;IAC5B,MAAM,4CAAmB;IACzB,WAAW,SAA2D;IACtE,KAAK,SAAc;IACnB,EAAE,SAAW;IACb,IAAI,EAAG,IAAI,CAAU;IAErB,OAAO,SAAsB;IAC7B,KAAK,oCAAuB;IAE5B,OAAgB,gBAAgB,iCAA2C;IAErE,WAAW,CACf,EAAE,QAAQ,EAAE,EAAE,0BAA0B,EACxC,MAAM,EAAE,QAAQ;CAKnB"}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
import { BadgeList, RANKS } from '@opfr/definitions';
|
|
2
|
+
import { QUEST_MIDDLEWARE_EVENT_NAME, crewMetaService, } from '@opfr/services';
|
|
3
|
+
import { CrewBaseQuest } from '../class/crewBaseQuest';
|
|
4
|
+
export class CrewHave100MBerry extends CrewBaseQuest {
|
|
5
|
+
name = "Y'a pas de petites économies";
|
|
6
|
+
id = 'crew_have_100M_berry';
|
|
7
|
+
rankId = RANKS.COMMON.id;
|
|
8
|
+
description = "Avoir 100 000 000 Berrys dans le coffre d'équipage";
|
|
9
|
+
berry = 50_000;
|
|
10
|
+
xp = 5_000;
|
|
11
|
+
crew = true;
|
|
12
|
+
badge = BadgeList.communism;
|
|
13
|
+
static crewDependencies = [QUEST_MIDDLEWARE_EVENT_NAME.CREW_META];
|
|
14
|
+
async isValidated({ crewMeta }, crewId) {
|
|
15
|
+
const crewMetaDocument = crewMeta ?? (await crewMetaService.get(crewId));
|
|
16
|
+
return !!crewMetaDocument && crewMetaDocument.berry >= 100_000_000;
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
export class CrewHave500MBerry extends CrewBaseQuest {
|
|
20
|
+
name = 'Joli butin !';
|
|
21
|
+
id = 'crew_have_500M_berry';
|
|
22
|
+
rankId = RANKS.RARE.id;
|
|
23
|
+
description = "Avoir 500 000 000 Berrys dans le coffre d'équipage";
|
|
24
|
+
berry = 200_000;
|
|
25
|
+
xp = 25_000;
|
|
26
|
+
crew = true;
|
|
27
|
+
badge = BadgeList.communism;
|
|
28
|
+
static crewDependencies = [QUEST_MIDDLEWARE_EVENT_NAME.CREW_META];
|
|
29
|
+
async isValidated({ crewMeta }, crewId) {
|
|
30
|
+
const crewMetaDocument = crewMeta ?? (await crewMetaService.get(crewId));
|
|
31
|
+
return !!crewMetaDocument && crewMetaDocument.berry >= 500_000_000;
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
export class CrewHave1MdBerry extends CrewBaseQuest {
|
|
35
|
+
name = 'Vous économisez pour un nouveau bateau ?';
|
|
36
|
+
id = 'crew_have_1Md_berry';
|
|
37
|
+
rankId = RANKS.EPIC.id;
|
|
38
|
+
description = "Avoir 1 000 000 000 Berrys dans le coffre d'équipage";
|
|
39
|
+
berry = 1_000_000;
|
|
40
|
+
xp = 50_000;
|
|
41
|
+
crew = true;
|
|
42
|
+
badge = BadgeList.communism;
|
|
43
|
+
static crewDependencies = [QUEST_MIDDLEWARE_EVENT_NAME.CREW_META];
|
|
44
|
+
async isValidated({ crewMeta }, crewId) {
|
|
45
|
+
const crewMetaDocument = crewMeta ?? (await crewMetaService.get(crewId));
|
|
46
|
+
return !!crewMetaDocument && crewMetaDocument.berry >= 1_000_000_000;
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
export class CrewHave5MdBerry extends CrewBaseQuest {
|
|
50
|
+
name = 'Ça fait beaucoup là non ?';
|
|
51
|
+
id = 'crew_have_5Md_berry';
|
|
52
|
+
rankId = RANKS.LEGENDARY.id;
|
|
53
|
+
description = "Avoir 5 000 000 000 Berrys dans le coffre d'équipage";
|
|
54
|
+
berry = 10_000_000;
|
|
55
|
+
xp = 100_000;
|
|
56
|
+
crew = true;
|
|
57
|
+
badge = BadgeList.communism;
|
|
58
|
+
static crewDependencies = [QUEST_MIDDLEWARE_EVENT_NAME.CREW_META];
|
|
59
|
+
async isValidated({ crewMeta }, crewId) {
|
|
60
|
+
const crewMetaDocument = crewMeta ?? (await crewMetaService.get(crewId));
|
|
61
|
+
return !!crewMetaDocument && crewMetaDocument.berry >= 5_000_000_000;
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
export class CrewHave50MdBerry extends CrewBaseQuest {
|
|
65
|
+
name = 'Karl Marx serait fier de vous !';
|
|
66
|
+
id = 'crew_have_50Md_berry';
|
|
67
|
+
rankId = RANKS.MYTHIC.id;
|
|
68
|
+
description = "Avoir 50 000 000 000 Berrys dans le coffre d'équipage";
|
|
69
|
+
berry = 50_000_000;
|
|
70
|
+
xp = 250_000;
|
|
71
|
+
crew = true;
|
|
72
|
+
titleId = 'title_Communiste';
|
|
73
|
+
badge = BadgeList.communism;
|
|
74
|
+
static crewDependencies = [QUEST_MIDDLEWARE_EVENT_NAME.CREW_META];
|
|
75
|
+
async isValidated({ crewMeta }, crewId) {
|
|
76
|
+
const crewMetaDocument = crewMeta ?? (await crewMetaService.get(crewId));
|
|
77
|
+
return !!crewMetaDocument && crewMetaDocument.berry >= 50_000_000_000;
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
//# sourceMappingURL=crewMoney.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"crewMoney.js","sourceRoot":"","sources":["../../src/quests/crewMoney.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import { type ObjectId } from '@opfr/services';
|
|
2
|
+
import { CrewBaseQuest } from '../class/crewBaseQuest';
|
|
3
|
+
import type { QuestValidationDocumentMap } from '../types';
|
|
4
|
+
export declare class CrewSize5 extends CrewBaseQuest {
|
|
5
|
+
name: string;
|
|
6
|
+
id: string;
|
|
7
|
+
rankId: import("@opfr/definitions").RankId.COMMON;
|
|
8
|
+
description: string;
|
|
9
|
+
berry: number;
|
|
10
|
+
xp: number;
|
|
11
|
+
crew: true;
|
|
12
|
+
badge: import("@opfr/definitions").Badge;
|
|
13
|
+
static dependencies: "middleware/quest/USER_CREW"[];
|
|
14
|
+
isValidated(_: QuestValidationDocumentMap, crewId: ObjectId): Promise<boolean>;
|
|
15
|
+
}
|
|
16
|
+
export declare class CrewSize7 extends CrewBaseQuest {
|
|
17
|
+
name: string;
|
|
18
|
+
id: string;
|
|
19
|
+
rankId: import("@opfr/definitions").RankId.RARE;
|
|
20
|
+
description: string;
|
|
21
|
+
berry: number;
|
|
22
|
+
xp: number;
|
|
23
|
+
crew: true;
|
|
24
|
+
badge: import("@opfr/definitions").Badge;
|
|
25
|
+
static dependencies: "middleware/quest/USER_CREW"[];
|
|
26
|
+
isValidated(_: QuestValidationDocumentMap, crewId: ObjectId): Promise<boolean>;
|
|
27
|
+
}
|
|
28
|
+
export declare class CrewSize10 extends CrewBaseQuest {
|
|
29
|
+
name: string;
|
|
30
|
+
id: string;
|
|
31
|
+
rankId: import("@opfr/definitions").RankId.EPIC;
|
|
32
|
+
description: string;
|
|
33
|
+
berry: number;
|
|
34
|
+
xp: number;
|
|
35
|
+
crew: true;
|
|
36
|
+
badge: import("@opfr/definitions").Badge;
|
|
37
|
+
static dependencies: "middleware/quest/USER_CREW"[];
|
|
38
|
+
isValidated(_: QuestValidationDocumentMap, crewId: ObjectId): Promise<boolean>;
|
|
39
|
+
}
|
|
40
|
+
export declare class CrewSize12 extends CrewBaseQuest {
|
|
41
|
+
name: string;
|
|
42
|
+
id: string;
|
|
43
|
+
rankId: import("@opfr/definitions").RankId.LEGENDARY;
|
|
44
|
+
description: string;
|
|
45
|
+
berry: number;
|
|
46
|
+
xp: number;
|
|
47
|
+
crew: true;
|
|
48
|
+
badge: import("@opfr/definitions").Badge;
|
|
49
|
+
static dependencies: "middleware/quest/USER_CREW"[];
|
|
50
|
+
isValidated(_: QuestValidationDocumentMap, crewId: ObjectId): Promise<boolean>;
|
|
51
|
+
}
|
|
52
|
+
export declare class CrewSize15 extends CrewBaseQuest {
|
|
53
|
+
name: string;
|
|
54
|
+
id: string;
|
|
55
|
+
rankId: import("@opfr/definitions").RankId.MYTHIC;
|
|
56
|
+
description: string;
|
|
57
|
+
berry: number;
|
|
58
|
+
xp: number;
|
|
59
|
+
crew: true;
|
|
60
|
+
titleId: string;
|
|
61
|
+
badge: import("@opfr/definitions").Badge;
|
|
62
|
+
static dependencies: "middleware/quest/USER_CREW"[];
|
|
63
|
+
isValidated(_: QuestValidationDocumentMap, crewId: ObjectId): Promise<boolean>;
|
|
64
|
+
}
|
|
65
|
+
//# sourceMappingURL=crewSize.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"crewSize.d.ts","sourceRoot":"","sources":["../../src/quests/crewSize.ts"],"names":[],"mappings":"AACA,OAAO,EACL,KAAK,QAAQ,EAGd,MAAM,gBAAgB,CAAC;AAExB,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,UAAU,CAAC;AAE3D,qBAAa,SAAU,SAAQ,aAAa;IAC1C,IAAI,SAA4B;IAChC,EAAE,SAAiB;IACnB,MAAM,4CAAmB;IACzB,WAAW,SAAwC;IACnD,KAAK,SAAU;IACf,EAAE,SAAS;IACX,IAAI,EAAG,IAAI,CAAU;IAErB,KAAK,oCAAqB;IAE1B,OAAgB,YAAY,iCAA2C;IAEjE,WAAW,CAAC,CAAC,EAAE,0BAA0B,EAAE,MAAM,EAAE,QAAQ;CAIlE;AAED,qBAAa,SAAU,SAAQ,aAAa;IAC1C,IAAI,SAAmB;IACvB,EAAE,SAAiB;IACnB,MAAM,0CAAiB;IACvB,WAAW,SAAwC;IACnD,KAAK,SAAW;IAChB,EAAE,SAAU;IACZ,IAAI,EAAG,IAAI,CAAU;IAErB,KAAK,oCAAqB;IAE1B,OAAgB,YAAY,iCAA2C;IAEjE,WAAW,CAAC,CAAC,EAAE,0BAA0B,EAAE,MAAM,EAAE,QAAQ;CAIlE;AAED,qBAAa,UAAW,SAAQ,aAAa;IAC3C,IAAI,SAAwB;IAC5B,EAAE,SAAkB;IACpB,MAAM,0CAAiB;IACvB,WAAW,SAAyC;IACpD,KAAK,SAAa;IAClB,EAAE,SAAU;IACZ,IAAI,EAAG,IAAI,CAAU;IAErB,KAAK,oCAAqB;IAE1B,OAAgB,YAAY,iCAA2C;IAEjE,WAAW,CAAC,CAAC,EAAE,0BAA0B,EAAE,MAAM,EAAE,QAAQ;CAIlE;AAED,qBAAa,UAAW,SAAQ,aAAa;IAC3C,IAAI,SAAqC;IACzC,EAAE,SAAkB;IACpB,MAAM,+CAAsB;IAC5B,WAAW,SAAyC;IACpD,KAAK,SAAc;IACnB,EAAE,SAAW;IACb,IAAI,EAAG,IAAI,CAAU;IAErB,KAAK,oCAAqB;IAE1B,OAAgB,YAAY,iCAA2C;IAEjE,WAAW,CAAC,CAAC,EAAE,0BAA0B,EAAE,MAAM,EAAE,QAAQ;CAIlE;AAED,qBAAa,UAAW,SAAQ,aAAa;IAC3C,IAAI,SAAwC;IAC5C,EAAE,SAAkB;IACpB,MAAM,4CAAmB;IACzB,WAAW,SAAyC;IACpD,KAAK,SAAc;IACnB,EAAE,SAAW;IACb,IAAI,EAAG,IAAI,CAAU;IAErB,OAAO,SAAmB;IAC1B,KAAK,oCAAqB;IAE1B,OAAgB,YAAY,iCAA2C;IAEjE,WAAW,CAAC,CAAC,EAAE,0BAA0B,EAAE,MAAM,EAAE,QAAQ;CAIlE"}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
import { BadgeList, RANKS } from '@opfr/definitions';
|
|
2
|
+
import { QUEST_MIDDLEWARE_EVENT_NAME, userCrewService, } from '@opfr/services';
|
|
3
|
+
import { CrewBaseQuest } from '../class/crewBaseQuest';
|
|
4
|
+
export class CrewSize5 extends CrewBaseQuest {
|
|
5
|
+
name = 'Plus on est de fous...';
|
|
6
|
+
id = 'crew_size_5';
|
|
7
|
+
rankId = RANKS.COMMON.id;
|
|
8
|
+
description = 'Être dans un équipage de 5 membres';
|
|
9
|
+
berry = 50_000;
|
|
10
|
+
xp = 5_000;
|
|
11
|
+
crew = true;
|
|
12
|
+
badge = BadgeList.sardine;
|
|
13
|
+
static dependencies = [QUEST_MIDDLEWARE_EVENT_NAME.USER_CREW];
|
|
14
|
+
async isValidated(_, crewId) {
|
|
15
|
+
const allUserIds = await userCrewService.getAllUserIdsFromCrew(crewId);
|
|
16
|
+
return allUserIds.length >= 5;
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
export class CrewSize7 extends CrewBaseQuest {
|
|
20
|
+
name = 'Plus on rit !';
|
|
21
|
+
id = 'crew_size_7';
|
|
22
|
+
rankId = RANKS.RARE.id;
|
|
23
|
+
description = 'Être dans un équipage de 7 membres';
|
|
24
|
+
berry = 200_000;
|
|
25
|
+
xp = 25_000;
|
|
26
|
+
crew = true;
|
|
27
|
+
badge = BadgeList.sardine;
|
|
28
|
+
static dependencies = [QUEST_MIDDLEWARE_EVENT_NAME.USER_CREW];
|
|
29
|
+
async isValidated(_, crewId) {
|
|
30
|
+
const allUserIds = await userCrewService.getAllUserIdsFromCrew(crewId);
|
|
31
|
+
return allUserIds.length >= 7;
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
export class CrewSize10 extends CrewBaseQuest {
|
|
35
|
+
name = 'Une petite famille';
|
|
36
|
+
id = 'crew_size_10';
|
|
37
|
+
rankId = RANKS.EPIC.id;
|
|
38
|
+
description = 'Être dans un équipage de 10 membres';
|
|
39
|
+
berry = 1_000_000;
|
|
40
|
+
xp = 50_000;
|
|
41
|
+
crew = true;
|
|
42
|
+
badge = BadgeList.sardine;
|
|
43
|
+
static dependencies = [QUEST_MIDDLEWARE_EVENT_NAME.USER_CREW];
|
|
44
|
+
async isValidated(_, crewId) {
|
|
45
|
+
const allUserIds = await userCrewService.getAllUserIdsFromCrew(crewId);
|
|
46
|
+
return allUserIds.length >= 10;
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
export class CrewSize12 extends CrewBaseQuest {
|
|
50
|
+
name = 'Va falloir des dortoirs en plus';
|
|
51
|
+
id = 'crew_size_12';
|
|
52
|
+
rankId = RANKS.LEGENDARY.id;
|
|
53
|
+
description = 'Être dans un équipage de 12 membres';
|
|
54
|
+
berry = 10_000_000;
|
|
55
|
+
xp = 100_000;
|
|
56
|
+
crew = true;
|
|
57
|
+
badge = BadgeList.sardine;
|
|
58
|
+
static dependencies = [QUEST_MIDDLEWARE_EVENT_NAME.USER_CREW];
|
|
59
|
+
async isValidated(_, crewId) {
|
|
60
|
+
const allUserIds = await userCrewService.getAllUserIdsFromCrew(crewId);
|
|
61
|
+
return allUserIds.length >= 12;
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
export class CrewSize15 extends CrewBaseQuest {
|
|
65
|
+
name = "* Ah qu'est-ce qu'on est serré ! *";
|
|
66
|
+
id = 'crew_size_15';
|
|
67
|
+
rankId = RANKS.MYTHIC.id;
|
|
68
|
+
description = 'Être dans un équipage de 15 membres';
|
|
69
|
+
berry = 50_000_000;
|
|
70
|
+
xp = 250_000;
|
|
71
|
+
crew = true;
|
|
72
|
+
titleId = 'title_Sardine';
|
|
73
|
+
badge = BadgeList.sardine;
|
|
74
|
+
static dependencies = [QUEST_MIDDLEWARE_EVENT_NAME.USER_CREW];
|
|
75
|
+
async isValidated(_, crewId) {
|
|
76
|
+
const allUserIds = await userCrewService.getAllUserIdsFromCrew(crewId);
|
|
77
|
+
return allUserIds.length >= 15;
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
//# sourceMappingURL=crewSize.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"crewSize.js","sourceRoot":"","sources":["../../src/quests/crewSize.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAEL,2BAA2B,EAC3B,eAAe,GAChB,MAAM,gBAAgB,CAAC;AAExB,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAGvD,MAAM,OAAO,SAAU,SAAQ,aAAa;IAC1C,IAAI,GAAG,wBAAwB,CAAC;IAChC,EAAE,GAAG,aAAa,CAAC;IACnB,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;IACzB,WAAW,GAAG,oCAAoC,CAAC;IACnD,KAAK,GAAG,MAAM,CAAC;IACf,EAAE,GAAG,KAAK,CAAC;IACX,IAAI,GAAG,IAAa,CAAC;IAErB,KAAK,GAAG,SAAS,CAAC,OAAO,CAAC;IAE1B,MAAM,CAAU,YAAY,GAAG,CAAC,2BAA2B,CAAC,SAAS,CAAC,CAAC;IAEvE,KAAK,CAAC,WAAW,CAAC,CAA6B,EAAE,MAAgB;QAC/D,MAAM,UAAU,GAAG,MAAM,eAAe,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC;QACvE,OAAO,UAAU,CAAC,MAAM,IAAI,CAAC,CAAC;IAChC,CAAC;;AAGH,MAAM,OAAO,SAAU,SAAQ,aAAa;IAC1C,IAAI,GAAG,eAAe,CAAC;IACvB,EAAE,GAAG,aAAa,CAAC;IACnB,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;IACvB,WAAW,GAAG,oCAAoC,CAAC;IACnD,KAAK,GAAG,OAAO,CAAC;IAChB,EAAE,GAAG,MAAM,CAAC;IACZ,IAAI,GAAG,IAAa,CAAC;IAErB,KAAK,GAAG,SAAS,CAAC,OAAO,CAAC;IAE1B,MAAM,CAAU,YAAY,GAAG,CAAC,2BAA2B,CAAC,SAAS,CAAC,CAAC;IAEvE,KAAK,CAAC,WAAW,CAAC,CAA6B,EAAE,MAAgB;QAC/D,MAAM,UAAU,GAAG,MAAM,eAAe,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC;QACvE,OAAO,UAAU,CAAC,MAAM,IAAI,CAAC,CAAC;IAChC,CAAC;;AAGH,MAAM,OAAO,UAAW,SAAQ,aAAa;IAC3C,IAAI,GAAG,oBAAoB,CAAC;IAC5B,EAAE,GAAG,cAAc,CAAC;IACpB,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;IACvB,WAAW,GAAG,qCAAqC,CAAC;IACpD,KAAK,GAAG,SAAS,CAAC;IAClB,EAAE,GAAG,MAAM,CAAC;IACZ,IAAI,GAAG,IAAa,CAAC;IAErB,KAAK,GAAG,SAAS,CAAC,OAAO,CAAC;IAE1B,MAAM,CAAU,YAAY,GAAG,CAAC,2BAA2B,CAAC,SAAS,CAAC,CAAC;IAEvE,KAAK,CAAC,WAAW,CAAC,CAA6B,EAAE,MAAgB;QAC/D,MAAM,UAAU,GAAG,MAAM,eAAe,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC;QACvE,OAAO,UAAU,CAAC,MAAM,IAAI,EAAE,CAAC;IACjC,CAAC;;AAGH,MAAM,OAAO,UAAW,SAAQ,aAAa;IAC3C,IAAI,GAAG,iCAAiC,CAAC;IACzC,EAAE,GAAG,cAAc,CAAC;IACpB,MAAM,GAAG,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC;IAC5B,WAAW,GAAG,qCAAqC,CAAC;IACpD,KAAK,GAAG,UAAU,CAAC;IACnB,EAAE,GAAG,OAAO,CAAC;IACb,IAAI,GAAG,IAAa,CAAC;IAErB,KAAK,GAAG,SAAS,CAAC,OAAO,CAAC;IAE1B,MAAM,CAAU,YAAY,GAAG,CAAC,2BAA2B,CAAC,SAAS,CAAC,CAAC;IAEvE,KAAK,CAAC,WAAW,CAAC,CAA6B,EAAE,MAAgB;QAC/D,MAAM,UAAU,GAAG,MAAM,eAAe,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC;QACvE,OAAO,UAAU,CAAC,MAAM,IAAI,EAAE,CAAC;IACjC,CAAC;;AAGH,MAAM,OAAO,UAAW,SAAQ,aAAa;IAC3C,IAAI,GAAG,oCAAoC,CAAC;IAC5C,EAAE,GAAG,cAAc,CAAC;IACpB,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;IACzB,WAAW,GAAG,qCAAqC,CAAC;IACpD,KAAK,GAAG,UAAU,CAAC;IACnB,EAAE,GAAG,OAAO,CAAC;IACb,IAAI,GAAG,IAAa,CAAC;IAErB,OAAO,GAAG,eAAe,CAAC;IAC1B,KAAK,GAAG,SAAS,CAAC,OAAO,CAAC;IAE1B,MAAM,CAAU,YAAY,GAAG,CAAC,2BAA2B,CAAC,SAAS,CAAC,CAAC;IAEvE,KAAK,CAAC,WAAW,CAAC,CAA6B,EAAE,MAAgB;QAC/D,MAAM,UAAU,GAAG,MAAM,eAAe,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC;QACvE,OAAO,UAAU,CAAC,MAAM,IAAI,EAAE,CAAC;IACjC,CAAC"}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import type { ObjectId } from '@opfr/services';
|
|
2
|
+
import { CrewBaseQuest } from '../class/crewBaseQuest';
|
|
3
|
+
import type { QuestValidationDocumentMap } from '../types';
|
|
4
|
+
export declare class CrewVocal5 extends CrewBaseQuest {
|
|
5
|
+
name: string;
|
|
6
|
+
id: string;
|
|
7
|
+
rankId: import("@opfr/definitions").RankId.COMMON;
|
|
8
|
+
description: string;
|
|
9
|
+
berry: number;
|
|
10
|
+
xp: number;
|
|
11
|
+
crew: true;
|
|
12
|
+
badge: import("@opfr/definitions").Badge;
|
|
13
|
+
static crewDependencies: "middleware/quest/CREW_STATS_ENGAGEMENT"[];
|
|
14
|
+
isValidated({ crewStatsEngagement }: QuestValidationDocumentMap, crewId: ObjectId): Promise<boolean>;
|
|
15
|
+
}
|
|
16
|
+
export declare class CrewVocal7 extends CrewBaseQuest {
|
|
17
|
+
name: string;
|
|
18
|
+
id: string;
|
|
19
|
+
rankId: import("@opfr/definitions").RankId.RARE;
|
|
20
|
+
description: string;
|
|
21
|
+
berry: number;
|
|
22
|
+
xp: number;
|
|
23
|
+
crew: true;
|
|
24
|
+
badge: import("@opfr/definitions").Badge;
|
|
25
|
+
static crewDependencies: "middleware/quest/CREW_STATS_ENGAGEMENT"[];
|
|
26
|
+
isValidated({ crewStatsEngagement }: QuestValidationDocumentMap, crewId: ObjectId): Promise<boolean>;
|
|
27
|
+
}
|
|
28
|
+
export declare class CrewVocal10 extends CrewBaseQuest {
|
|
29
|
+
name: string;
|
|
30
|
+
id: string;
|
|
31
|
+
rankId: import("@opfr/definitions").RankId.EPIC;
|
|
32
|
+
description: string;
|
|
33
|
+
berry: number;
|
|
34
|
+
xp: number;
|
|
35
|
+
crew: true;
|
|
36
|
+
badge: import("@opfr/definitions").Badge;
|
|
37
|
+
static crewDependencies: "middleware/quest/CREW_STATS_ENGAGEMENT"[];
|
|
38
|
+
isValidated({ crewStatsEngagement }: QuestValidationDocumentMap, crewId: ObjectId): Promise<boolean>;
|
|
39
|
+
}
|
|
40
|
+
export declare class CrewVocal12 extends CrewBaseQuest {
|
|
41
|
+
name: string;
|
|
42
|
+
id: string;
|
|
43
|
+
rankId: import("@opfr/definitions").RankId.LEGENDARY;
|
|
44
|
+
description: string;
|
|
45
|
+
berry: number;
|
|
46
|
+
xp: number;
|
|
47
|
+
crew: true;
|
|
48
|
+
badge: import("@opfr/definitions").Badge;
|
|
49
|
+
static crewDependencies: "middleware/quest/CREW_STATS_ENGAGEMENT"[];
|
|
50
|
+
isValidated({ crewStatsEngagement }: QuestValidationDocumentMap, crewId: ObjectId): Promise<boolean>;
|
|
51
|
+
}
|
|
52
|
+
export declare class CrewVocal15 extends CrewBaseQuest {
|
|
53
|
+
name: string;
|
|
54
|
+
id: string;
|
|
55
|
+
rankId: import("@opfr/definitions").RankId.MYTHIC;
|
|
56
|
+
description: string;
|
|
57
|
+
berry: number;
|
|
58
|
+
xp: number;
|
|
59
|
+
crew: true;
|
|
60
|
+
titleId: string;
|
|
61
|
+
badge: import("@opfr/definitions").Badge;
|
|
62
|
+
static crewDependencies: "middleware/quest/CREW_STATS_ENGAGEMENT"[];
|
|
63
|
+
isValidated({ crewStatsEngagement }: QuestValidationDocumentMap, crewId: ObjectId): Promise<boolean>;
|
|
64
|
+
}
|
|
65
|
+
//# sourceMappingURL=crewVocal.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"crewVocal.d.ts","sourceRoot":"","sources":["../../src/quests/crewVocal.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAM/C,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,UAAU,CAAC;AAE3D,qBAAa,UAAW,SAAQ,aAAa;IAC3C,IAAI,SAAsB;IAC1B,EAAE,SAAkB;IACpB,MAAM,4CAAmB;IACzB,WAAW,SAAmE;IAC9E,KAAK,SAAU;IACf,EAAE,SAAS;IACX,IAAI,EAAG,IAAI,CAAU;IAErB,KAAK,oCAAuB;IAE5B,OAAgB,gBAAgB,6CAE9B;IAEI,WAAW,CACf,EAAE,mBAAmB,EAAE,EAAE,0BAA0B,EACnD,MAAM,EAAE,QAAQ;CAMnB;AAED,qBAAa,UAAW,SAAQ,aAAa;IAC3C,IAAI,SAAuB;IAC3B,EAAE,SAAkB;IACpB,MAAM,0CAAiB;IACvB,WAAW,SAAmE;IAC9E,KAAK,SAAW;IAChB,EAAE,SAAU;IACZ,IAAI,EAAG,IAAI,CAAU;IAErB,KAAK,oCAAuB;IAE5B,OAAgB,gBAAgB,6CAE9B;IAEI,WAAW,CACf,EAAE,mBAAmB,EAAE,EAAE,0BAA0B,EACnD,MAAM,EAAE,QAAQ;CAMnB;AAED,qBAAa,WAAY,SAAQ,aAAa;IAC5C,IAAI,SAAwB;IAC5B,EAAE,SAAmB;IACrB,MAAM,0CAAiB;IACvB,WAAW,SACwD;IACnE,KAAK,SAAa;IAClB,EAAE,SAAU;IACZ,IAAI,EAAG,IAAI,CAAU;IAErB,KAAK,oCAAuB;IAE5B,OAAgB,gBAAgB,6CAE9B;IAEI,WAAW,CACf,EAAE,mBAAmB,EAAE,EAAE,0BAA0B,EACnD,MAAM,EAAE,QAAQ;CAMnB;AAED,qBAAa,WAAY,SAAQ,aAAa;IAC5C,IAAI,SAAsB;IAC1B,EAAE,SAAmB;IACrB,MAAM,+CAAsB;IAC5B,WAAW,SACwD;IACnE,KAAK,SAAc;IACnB,EAAE,SAAW;IACb,IAAI,EAAG,IAAI,CAAU;IAErB,KAAK,oCAAuB;IAE5B,OAAgB,gBAAgB,6CAE9B;IAEI,WAAW,CACf,EAAE,mBAAmB,EAAE,EAAE,0BAA0B,EACnD,MAAM,EAAE,QAAQ;CAMnB;AAED,qBAAa,WAAY,SAAQ,aAAa;IAC5C,IAAI,SAA8B;IAClC,EAAE,SAAmB;IACrB,MAAM,4CAAmB;IACzB,WAAW,SACwD;IACnE,KAAK,SAAc;IACnB,EAAE,SAAW;IACb,IAAI,EAAG,IAAI,CAAU;IAErB,OAAO,SAA8B;IACrC,KAAK,oCAAuB;IAE5B,OAAgB,gBAAgB,6CAE9B;IAEI,WAAW,CACf,EAAE,mBAAmB,EAAE,EAAE,0BAA0B,EACnD,MAAM,EAAE,QAAQ;CAMnB"}
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
import { BadgeList, RANKS } from '@opfr/definitions';
|
|
2
|
+
import { QUEST_MIDDLEWARE_EVENT_NAME, crewStatsEngagementService, } from '@opfr/services';
|
|
3
|
+
import { CrewBaseQuest } from '../class/crewBaseQuest';
|
|
4
|
+
export class CrewVocal5 extends CrewBaseQuest {
|
|
5
|
+
name = 'Réunion de crise';
|
|
6
|
+
id = 'crew_vocal_5';
|
|
7
|
+
rankId = RANKS.COMMON.id;
|
|
8
|
+
description = 'Être dans un un vocal avec au moins 5 membres pendant 1 heure';
|
|
9
|
+
berry = 50_000;
|
|
10
|
+
xp = 5_000;
|
|
11
|
+
crew = true;
|
|
12
|
+
badge = BadgeList.shipsecte;
|
|
13
|
+
static crewDependencies = [
|
|
14
|
+
QUEST_MIDDLEWARE_EVENT_NAME.CREW_STATS_ENGAGEMENT,
|
|
15
|
+
];
|
|
16
|
+
async isValidated({ crewStatsEngagement }, crewId) {
|
|
17
|
+
const { maxVoiceMembersReached } = crewStatsEngagement ?? (await crewStatsEngagementService.get(crewId));
|
|
18
|
+
return maxVoiceMembersReached >= 5;
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
export class CrewVocal7 extends CrewBaseQuest {
|
|
22
|
+
name = 'Conseil de guerre';
|
|
23
|
+
id = 'crew_vocal_7';
|
|
24
|
+
rankId = RANKS.RARE.id;
|
|
25
|
+
description = 'Être dans un un vocal avec au moins 7 membres pendant 1 heure';
|
|
26
|
+
berry = 200_000;
|
|
27
|
+
xp = 25_000;
|
|
28
|
+
crew = true;
|
|
29
|
+
badge = BadgeList.shipsecte;
|
|
30
|
+
static crewDependencies = [
|
|
31
|
+
QUEST_MIDDLEWARE_EVENT_NAME.CREW_STATS_ENGAGEMENT,
|
|
32
|
+
];
|
|
33
|
+
async isValidated({ crewStatsEngagement }, crewId) {
|
|
34
|
+
const { maxVoiceMembersReached } = crewStatsEngagement ?? (await crewStatsEngagementService.get(crewId));
|
|
35
|
+
return maxVoiceMembersReached >= 7;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
export class CrewVocal10 extends CrewBaseQuest {
|
|
39
|
+
name = 'Réunion de famille';
|
|
40
|
+
id = 'crew_vocal_10';
|
|
41
|
+
rankId = RANKS.EPIC.id;
|
|
42
|
+
description = 'Être dans un un vocal avec au moins 10 membres pendant 1 heure';
|
|
43
|
+
berry = 1_000_000;
|
|
44
|
+
xp = 50_000;
|
|
45
|
+
crew = true;
|
|
46
|
+
badge = BadgeList.shipsecte;
|
|
47
|
+
static crewDependencies = [
|
|
48
|
+
QUEST_MIDDLEWARE_EVENT_NAME.CREW_STATS_ENGAGEMENT,
|
|
49
|
+
];
|
|
50
|
+
async isValidated({ crewStatsEngagement }, crewId) {
|
|
51
|
+
const { maxVoiceMembersReached } = crewStatsEngagement ?? (await crewStatsEngagementService.get(crewId));
|
|
52
|
+
return maxVoiceMembersReached >= 10;
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
export class CrewVocal12 extends CrewBaseQuest {
|
|
56
|
+
name = 'Les Inséparables';
|
|
57
|
+
id = 'crew_vocal_12';
|
|
58
|
+
rankId = RANKS.LEGENDARY.id;
|
|
59
|
+
description = 'Être dans un un vocal avec au moins 12 membres pendant 1 heure';
|
|
60
|
+
berry = 10_000_000;
|
|
61
|
+
xp = 100_000;
|
|
62
|
+
crew = true;
|
|
63
|
+
badge = BadgeList.shipsecte;
|
|
64
|
+
static crewDependencies = [
|
|
65
|
+
QUEST_MIDDLEWARE_EVENT_NAME.CREW_STATS_ENGAGEMENT,
|
|
66
|
+
];
|
|
67
|
+
async isValidated({ crewStatsEngagement }, crewId) {
|
|
68
|
+
const { maxVoiceMembersReached } = crewStatsEngagement ?? (await crewStatsEngagementService.get(crewId));
|
|
69
|
+
return maxVoiceMembersReached >= 12;
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
export class CrewVocal15 extends CrewBaseQuest {
|
|
73
|
+
name = 'Ambiance sectaire un peu';
|
|
74
|
+
id = 'crew_vocal_15';
|
|
75
|
+
rankId = RANKS.MYTHIC.id;
|
|
76
|
+
description = 'Être dans un un vocal avec au moins 15 membres pendant 1 heure';
|
|
77
|
+
berry = 50_000_000;
|
|
78
|
+
xp = 250_000;
|
|
79
|
+
crew = true;
|
|
80
|
+
titleId = "title_Membre d'une secte";
|
|
81
|
+
badge = BadgeList.shipsecte;
|
|
82
|
+
static crewDependencies = [
|
|
83
|
+
QUEST_MIDDLEWARE_EVENT_NAME.CREW_STATS_ENGAGEMENT,
|
|
84
|
+
];
|
|
85
|
+
async isValidated({ crewStatsEngagement }, crewId) {
|
|
86
|
+
const { maxVoiceMembersReached } = crewStatsEngagement ?? (await crewStatsEngagementService.get(crewId));
|
|
87
|
+
return maxVoiceMembersReached >= 15;
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
//# sourceMappingURL=crewVocal.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"crewVocal.js","sourceRoot":"","sources":["../../src/quests/crewVocal.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import { type ObjectId } from '@opfr/services';
|
|
2
|
+
import { UserBaseQuest } from '../class/userBaseQuest';
|
|
3
|
+
import type { QuestValidationDocumentMap } from '../types';
|
|
4
|
+
export declare class Draw100Quest extends UserBaseQuest {
|
|
5
|
+
name: string;
|
|
6
|
+
id: string;
|
|
7
|
+
rankId: import("@opfr/definitions").RankId.COMMON;
|
|
8
|
+
description: string;
|
|
9
|
+
berry: number;
|
|
10
|
+
xp: number;
|
|
11
|
+
static dependencies: "middleware/quest/USER_STATS_CASINO"[];
|
|
12
|
+
isValidated({ userStatsCasino }: QuestValidationDocumentMap, userId: ObjectId): Promise<boolean>;
|
|
13
|
+
}
|
|
14
|
+
export declare class Draw300Quest extends UserBaseQuest {
|
|
15
|
+
name: string;
|
|
16
|
+
id: string;
|
|
17
|
+
rankId: import("@opfr/definitions").RankId.RARE;
|
|
18
|
+
description: string;
|
|
19
|
+
berry: number;
|
|
20
|
+
xp: number;
|
|
21
|
+
static dependencies: "middleware/quest/USER_STATS_CASINO"[];
|
|
22
|
+
isValidated({ userStatsCasino }: QuestValidationDocumentMap, userId: ObjectId): Promise<boolean>;
|
|
23
|
+
}
|
|
24
|
+
export declare class Draw1000Quest extends UserBaseQuest {
|
|
25
|
+
name: string;
|
|
26
|
+
id: string;
|
|
27
|
+
rankId: import("@opfr/definitions").RankId.EPIC;
|
|
28
|
+
description: string;
|
|
29
|
+
berry: number;
|
|
30
|
+
xp: number;
|
|
31
|
+
static dependencies: "middleware/quest/USER_STATS_CASINO"[];
|
|
32
|
+
isValidated({ userStatsCasino }: QuestValidationDocumentMap, userId: ObjectId): Promise<boolean>;
|
|
33
|
+
}
|
|
34
|
+
export declare class Draw2000Quest extends UserBaseQuest {
|
|
35
|
+
name: string;
|
|
36
|
+
id: string;
|
|
37
|
+
rankId: import("@opfr/definitions").RankId.LEGENDARY;
|
|
38
|
+
description: string;
|
|
39
|
+
berry: number;
|
|
40
|
+
xp: number;
|
|
41
|
+
static dependencies: "middleware/quest/USER_STATS_CASINO"[];
|
|
42
|
+
isValidated({ userStatsCasino }: QuestValidationDocumentMap, userId: ObjectId): Promise<boolean>;
|
|
43
|
+
}
|
|
44
|
+
export declare class Draw5000Quest extends UserBaseQuest {
|
|
45
|
+
name: string;
|
|
46
|
+
id: string;
|
|
47
|
+
rankId: import("@opfr/definitions").RankId.MYTHIC;
|
|
48
|
+
description: string;
|
|
49
|
+
berry: number;
|
|
50
|
+
xp: number;
|
|
51
|
+
titleId: string;
|
|
52
|
+
static dependencies: "middleware/quest/USER_STATS_CASINO"[];
|
|
53
|
+
isValidated({ userStatsCasino }: QuestValidationDocumentMap, userId: ObjectId): Promise<boolean>;
|
|
54
|
+
}
|
|
55
|
+
//# sourceMappingURL=draw.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"draw.d.ts","sourceRoot":"","sources":["../../src/quests/draw.ts"],"names":[],"mappings":"AACA,OAAO,EACL,KAAK,QAAQ,EAGd,MAAM,gBAAgB,CAAC;AAExB,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,UAAU,CAAC;AAE3D,qBAAa,YAAa,SAAQ,aAAa;IAC7C,IAAI,SAAoC;IACxC,EAAE,SAAc;IAChB,MAAM,4CAAmB;IACzB,WAAW,SAAwB;IACnC,KAAK,SAAU;IACf,EAAE,SAAS;IAEX,OAAgB,YAAY,yCAE1B;IAEa,WAAW,CACxB,EAAE,eAAe,EAAE,EAAE,0BAA0B,EAC/C,MAAM,EAAE,QAAQ,GACf,OAAO,CAAC,OAAO,CAAC;CAKpB;AAED,qBAAa,YAAa,SAAQ,aAAa;IAC7C,IAAI,SAA4B;IAChC,EAAE,SAAc;IAChB,MAAM,0CAAiB;IACvB,WAAW,SAAwB;IACnC,KAAK,SAAW;IAChB,EAAE,SAAU;IAEZ,OAAgB,YAAY,yCAE1B;IAEa,WAAW,CACxB,EAAE,eAAe,EAAE,EAAE,0BAA0B,EAC/C,MAAM,EAAE,QAAQ,GACf,OAAO,CAAC,OAAO,CAAC;CAKpB;AAED,qBAAa,aAAc,SAAQ,aAAa;IAC9C,IAAI,SAAwB;IAC5B,EAAE,SAAe;IACjB,MAAM,0CAAiB;IACvB,WAAW,SAAyB;IACpC,KAAK,SAAa;IAClB,EAAE,SAAU;IAEZ,OAAgB,YAAY,yCAE1B;IAEa,WAAW,CACxB,EAAE,eAAe,EAAE,EAAE,0BAA0B,EAC/C,MAAM,EAAE,QAAQ,GACf,OAAO,CAAC,OAAO,CAAC;CAKpB;AAED,qBAAa,aAAc,SAAQ,aAAa;IAC9C,IAAI,SAAwC;IAC5C,EAAE,SAAe;IACjB,MAAM,+CAAsB;IAC5B,WAAW,SAAyB;IACpC,KAAK,SAAc;IACnB,EAAE,SAAW;IAEb,OAAgB,YAAY,yCAE1B;IAEa,WAAW,CACxB,EAAE,eAAe,EAAE,EAAE,0BAA0B,EAC/C,MAAM,EAAE,QAAQ,GACf,OAAO,CAAC,OAAO,CAAC;CAKpB;AAED,qBAAa,aAAc,SAAQ,aAAa;IAC9C,IAAI,SAAsB;IAC1B,EAAE,SAAe;IACjB,MAAM,4CAAmB;IACzB,WAAW,SAAyB;IACpC,KAAK,SAAc;IACnB,EAAE,SAAW;IAEb,OAAO,SAAsB;IAE7B,OAAgB,YAAY,yCAE1B;IAEa,WAAW,CACxB,EAAE,eAAe,EAAE,EAAE,0BAA0B,EAC/C,MAAM,EAAE,QAAQ,GACf,OAAO,CAAC,OAAO,CAAC;CAKpB"}
|