forked from syntaxbullet/aurorabot
feat: Implement flexible quest event matching to allow generic triggers to match specific event instances.
This commit is contained in:
@@ -46,9 +46,12 @@ export const questService = {
|
||||
}
|
||||
});
|
||||
|
||||
const relevant = activeUserQuests.filter(uq =>
|
||||
uq.quest.triggerEvent === eventName && !uq.completedAt
|
||||
);
|
||||
const relevant = activeUserQuests.filter(uq => {
|
||||
const trigger = uq.quest.triggerEvent;
|
||||
// Exact match or prefix match (e.g. ITEM_COLLECT matches ITEM_COLLECT:101)
|
||||
const isMatch = eventName === trigger || eventName.startsWith(trigger + ":");
|
||||
return isMatch && !uq.completedAt;
|
||||
});
|
||||
|
||||
for (const uq of relevant) {
|
||||
const requirements = uq.quest.requirements as { target?: number };
|
||||
|
||||
Reference in New Issue
Block a user