diff --git a/src/routes/achievement/index.svelte b/src/routes/achievement/index.svelte index e5426139..3e9fcbb8 100644 --- a/src/routes/achievement/index.svelte +++ b/src/routes/achievement/index.svelte @@ -21,7 +21,7 @@ let achievementContainer; - let data = achievementData; + let data = ignoreNonExistentAchievements(achievementData); let achievement = data; let checkList = {}; @@ -269,7 +269,7 @@ async function changeLocale(locale) { const data = await import(`../../data/achievement/${locale}.json`); - achievement = data.default; + achievement = ignoreNonExistentAchievements(data.default); sortedAchievements = Object.entries(achievement).sort((a, b) => a[1].order - b[1].order); sortedAchievements.forEach(([id, data], i) => { categories[i].name = data.name; @@ -327,6 +327,20 @@ parseCategories(); changeCategory('0', 0, true); } + + function ignoreNonExistentAchievements(origin) { + //ignore 81416,81418,81426,81429,81451,81453 + const ignores = [81416, 81418, 81426, 81429, 81451, 81453]; + return Object.entries(origin).reduce( + (prev,current) => { + current[1].achievements = + current[1].achievements.filter( + item => { return !ignores.includes(item.id); } + ); + prev[current[0]] = current[1]; + return prev; + }, {}); + } onMount(async () => { process();