feat: unify toast styles and add quest/milestone toast notifications
Security Scan and Upload / Security & DefectDojo Upload (push) Successful in 1m3s
CI / Lint, Build & Test (push) Successful in 1m5s

- Merge .codex-toast and .achievement-toast into a single .game-toast class
- Fix storyToast inner class names and replace <button> wrapper with <div>
- Add QuestCompleteToast and QuestFailedToast components
- Add MilestoneToast for prestige, transcendence, and apotheosis events
- Move shared toast container to gameLayout so all toasts stack in one column
- Wire quest detection in GameContext to store full Quest objects for toast names
- Trigger prestige toast from both auto-prestige and manual prestige panel
This commit is contained in:
2026-03-08 18:47:42 -07:00
committed by Naomi Carrigan
parent 290c06de83
commit f9c925b9fc
10 changed files with 380 additions and 47 deletions
+5 -4
View File
@@ -190,10 +190,11 @@ const QuestPanel = (): JSX.Element => {
}
const { adventurers, autoQuest, quests, zones } = state;
// eslint-disable-next-line unicorn/no-array-reduce -- Need the total!
const partyCombatPower = adventurers.reduce((total, adventurer) => {
return total + adventurer.combatPower * adventurer.count;
}, 0);
let partyCombatPower = 0;
for (const adventurer of adventurers) {
const contribution = adventurer.combatPower * adventurer.count;
partyCombatPower = partyCombatPower + contribution;
}
const zoneQuests = quests.filter(({ zoneId }) => {
return zoneId === activeZoneId;
});