feat: show notification on launch

This commit is contained in:
Zamitto 2024-10-21 12:57:07 -03:00
parent 9f76ae8c59
commit d801bad49e
9 changed files with 72 additions and 19 deletions

View file

@ -73,6 +73,9 @@ declare global {
achievements?: { displayName: string; iconUrl: string }[]
) => void
) => () => Electron.IpcRenderer;
onCombinedAchievementsUnlocked: (
cb: (gameCount: number, achievementCount: number) => void
) => () => Electron.IpcRenderer;
onUpdateAchievements: (
objectId: string,
shop: GameShop,

View file

@ -31,6 +31,31 @@ export function AchievementNotification() {
return audio;
}, []);
useEffect(() => {
const unsubscribe = window.electron.onCombinedAchievementsUnlocked(
(gameCount, achievementCount) => {
if (gameCount === 0 || achievementCount === 0) return;
setAchievements([
{
displayName: t("new_achievements_unlocked", {
gameCount,
achievementCount,
}),
iconUrl:
"https://avatars.githubusercontent.com/u/164102380?s=400&u=01a13a7b4f0c642f7e547b8e1d70440ea06fa750&v=4",
},
]);
audio.play();
}
);
return () => {
unsubscribe();
};
}, [audio]);
useEffect(() => {
const unsubscribe = window.electron.onAchievementUnlocked(
(_object, _shop, achievements) => {