From b8a3cc811bb2f6a95da1d778a403f7fa68551f5d Mon Sep 17 00:00:00 2001
From: Janne Mareike Koschinski <janne@kuschku.de>
Date: Mon, 24 Feb 2020 18:55:18 +0100
Subject: [PATCH] also allow the first keyframe

---
 src/media_time.rs  | 4 ++++
 src/spritesheet.rs | 2 +-
 2 files changed, 5 insertions(+), 1 deletion(-)

diff --git a/src/media_time.rs b/src/media_time.rs
index 32edd38..a5d07f2 100644
--- a/src/media_time.rs
+++ b/src/media_time.rs
@@ -24,6 +24,10 @@ impl MediaTime {
     pub fn from_seconds(timestamp: i64) -> MediaTime {
         MediaTime(time::Duration::seconds(timestamp))
     }
+
+    pub fn is_zero(&self) -> bool {
+        self.0.is_zero()
+    }
 }
 
 impl std::fmt::Display for MediaTime {
diff --git a/src/spritesheet.rs b/src/spritesheet.rs
index 96ec0a4..1e0114a 100644
--- a/src/spritesheet.rs
+++ b/src/spritesheet.rs
@@ -85,7 +85,7 @@ impl SpritesheetManager {
     }
 
     pub fn fulfils_frame_interval(&self, timestamp: MediaTime) -> bool {
-        timestamp - self.last_timestamp > self.frame_interval
+        self.current_image == 0 || timestamp - self.last_timestamp > self.frame_interval
     }
 
     pub fn add_image(&mut self, timestamp: MediaTime, image: RgbImage) {
-- 
GitLab