From 09306cb76c6e1eabb4082a985a0a0fa335bda5c1 Mon Sep 17 00:00:00 2001 From: troido Date: Fri, 25 Sep 2020 08:54:20 +0200 Subject: proper serialisation for playerstate; strum for old-style enums --- src/persistence.rs | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) (limited to 'src/persistence.rs') diff --git a/src/persistence.rs b/src/persistence.rs index 932840a..446d93a 100644 --- a/src/persistence.rs +++ b/src/persistence.rs @@ -97,8 +97,7 @@ impl PersistentStorage for FileStorage { LoaderError::InvalidResource(Box::new(err)) } })?; - let json: Value = inv!(serde_json::from_str(&text))?; - let state = inv!(PlayerState::from_json(&json))?; + let state = inv!(serde_json::from_str(&text))?; Ok(state) } @@ -139,7 +138,7 @@ impl PersistentStorage for FileStorage { fs::create_dir_all(&path)?; let fname = id.to_string() + ".save.json"; path.push(fname); - let text = state.to_json().to_string(); + let text = serde_json::to_string(&state).unwrap(); write_file_safe(path, text)?; Ok(()) } -- cgit