feat: add achievement system

Signed-off-by: Ahmad <103906421+ahmadk953@users.noreply.github.com>
This commit is contained in:
Ahmad 2025-04-16 16:52:44 -04:00
parent 830838a6a1
commit 2f5c3499e7
No known key found for this signature in database
GPG key ID: 8FD8A93530D182BF
15 changed files with 1966 additions and 37 deletions

View file

@ -12,6 +12,7 @@ import {
checkAndAssignLevelRoles,
processMessage,
} from '@/util/levelingSystem.js';
import { processLevelUpAchievements } from '@/util/achievementManager.js';
export const messageDelete: Event<typeof Events.MessageDelete> = {
name: Events.MessageDelete,
@ -102,6 +103,12 @@ export const messageCreate: Event<typeof Events.MessageCreate> = {
levelResult.newLevel,
);
await processLevelUpAchievements(
message.author.id,
levelResult.newLevel,
message.guild,
);
if (assignedRole) {
await advancementsChannel.send(
`<@${message.author.id}> You've earned the <@&${assignedRole}> role!`,