diff --git a/src-tauri/src/lib.rs b/src-tauri/src/lib.rs index 76f8ab1..16a6df4 100644 --- a/src-tauri/src/lib.rs +++ b/src-tauri/src/lib.rs @@ -1282,7 +1282,7 @@ async fn check_game_update(app: AppHandle, instance_id: String, url: String) -> let local_timestamp = fs::read_to_string(×tamp_file).unwrap_or_default(); if local_timestamp.is_empty() { - return Ok(false); + return Ok(true); } let response = reqwest::Client::new().head(&url).send().await.map_err(|e| e.to_string())?; diff --git a/src/components/views/HomeView.tsx b/src/components/views/HomeView.tsx index 36f622a..9bfd5f4 100644 --- a/src/components/views/HomeView.tsx +++ b/src/components/views/HomeView.tsx @@ -20,6 +20,7 @@ const HomeView = memo(function HomeView() { downloadingId, isGameRunning, stopGame, + updatesAvailable, } = useGame(); const isFocusedSection = focusSection === "menu"; @@ -54,10 +55,10 @@ const HomeView = memo(function HomeView() { isDanger: isGameRunning, disabled: isDownloading, }, - { label: "Help & Options", action: () => setActiveView("settings"), disabled: false }, - { label: "Versions", action: () => setActiveView("versions"), disabled: false }, - { label: "Workshop", action: () => setActiveView("workshop"), disabled: false }, - { label: "Developer Tools", action: () => setActiveView("devtools"), disabled: false }, + { label: "Help & Options", action: () => setActiveView("settings"), disabled: false, id: "settings" }, + { label: "Versions", action: () => setActiveView("versions"), disabled: false, id: "versions" }, + { label: "Workshop", action: () => setActiveView("workshop"), disabled: false, id: "workshop" }, + { label: "Developer Tools", action: () => setActiveView("devtools"), disabled: false, id: "devtools" }, ], [ isDownloading, @@ -131,7 +132,16 @@ const HomeView = memo(function HomeView() { opacity: btn.disabled ? 0.5 : 1, }} > - {btn.label} +
+ {btn.label} + {btn.id === "versions" && Object.values(updatesAvailable || {}).some((v) => v) && ( + + )} +
))} diff --git a/src/components/views/VersionsView.tsx b/src/components/views/VersionsView.tsx index 8b457cd..bee195f 100644 --- a/src/components/views/VersionsView.tsx +++ b/src/components/views/VersionsView.tsx @@ -61,6 +61,7 @@ const VersionsView = memo(function VersionsView() { updateCustomEdition: onUpdateEdition, downloadingId, downloadProgress, + updatesAvailable, } = useGame(); const [focusIndex, setFocusIndex] = useState(0); const [focusBtn, setFocusBtn] = useState(0); @@ -488,7 +489,10 @@ const VersionsView = memo(function VersionsView() { src="/images/Update_Icon.png" alt="Update" className="w-6 h-6 object-contain" - style={{ imageRendering: "pixelated" }} + style={{ + imageRendering: "pixelated", + filter: updatesAvailable?.[edition.id] ? "brightness(1.5) sepia(1) saturate(5) hue-rotate(15deg) drop-shadow(0 0 4px rgba(255,255,0,0.8))" : "none" + }} />