fix: proper font loading, cross platform assets, better platform independent trait implementation, conditional modules

This commit is contained in:
2025-08-16 14:17:28 -05:00
parent f940f01d9b
commit 313ca4f3e6
9 changed files with 89 additions and 82 deletions

View File

@@ -5,12 +5,12 @@ use std::time::Duration;
use crate::asset::Asset;
use crate::error::{AssetError, PlatformError};
use crate::platform::Platform;
use crate::platform::CommonPlatform;
/// Desktop platform implementation.
pub struct DesktopPlatform;
pub struct Platform;
impl Platform for DesktopPlatform {
impl CommonPlatform for Platform {
fn sleep(&self, duration: Duration, focused: bool) {
if focused {
spin_sleep::sleep(duration);
@@ -75,7 +75,8 @@ impl Platform for DesktopPlatform {
Asset::Wav2 => Ok(Cow::Borrowed(include_bytes!("../../assets/game/sound/waka/2.ogg"))),
Asset::Wav3 => Ok(Cow::Borrowed(include_bytes!("../../assets/game/sound/waka/3.ogg"))),
Asset::Wav4 => Ok(Cow::Borrowed(include_bytes!("../../assets/game/sound/waka/4.ogg"))),
Asset::Atlas => Ok(Cow::Borrowed(include_bytes!("../../assets/game/atlas.png"))),
Asset::AtlasImage => Ok(Cow::Borrowed(include_bytes!("../../assets/game/atlas.png"))),
Asset::Font => Ok(Cow::Borrowed(include_bytes!("../../assets/game/TerminalVector.ttf"))),
}
}
}