fix: quest progression (events after tx), abandon quest, endurance display
All checks were successful
CI/CD — Build & Deploy / Build & Deploy (push) Successful in 34s
All checks were successful
CI/CD — Build & Deploy / Build & Deploy (push) Successful in 34s
- Events (achievement/community/quest) émis APRÈS la transaction combat au lieu de dedans — corrige les quêtes qui ne progressaient pas - POST /api/quests/abandon/:id — abandonner une quête active - Frontend: bouton "Abandonner" sur les quêtes actives non complétées - Fix endurance display (enduranceCurrent field mapping) - Types Character mis à jour (xpToNextLevel, activeTitle, enduranceCurrent)
This commit is contained in:
@@ -221,6 +221,18 @@ export class QuestService {
|
||||
}
|
||||
}
|
||||
|
||||
async abandon(playerQuestId: string, characterId: string) {
|
||||
const pq = await this.playerQuestRepo.findOne({
|
||||
where: { id: playerQuestId, characterId },
|
||||
relations: ['quest'],
|
||||
});
|
||||
if (!pq) throw new NotFoundException('Quête introuvable');
|
||||
if (pq.status !== 'active') throw new BadRequestException('Seules les quêtes actives peuvent être abandonnées');
|
||||
|
||||
await this.playerQuestRepo.remove(pq);
|
||||
return { abandoned: true, quest: pq.quest.name };
|
||||
}
|
||||
|
||||
// --- Event listeners for quest progress ---
|
||||
|
||||
@OnEvent('quest.progress')
|
||||
|
||||
Reference in New Issue
Block a user