From 0ace1831e282fcada81ed7eac1ef9903452425d7 Mon Sep 17 00:00:00 2001 From: Alula Date: Fri, 28 Aug 2020 06:55:45 +0200 Subject: [PATCH] map: use GameResult --- src/map.rs | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/map.rs b/src/map.rs index 00cc13a..f22e72a 100644 --- a/src/map.rs +++ b/src/map.rs @@ -3,6 +3,10 @@ use std::io::{Error, ErrorKind}; use byteorder::{LE, ReadBytesExt}; +use crate::ggez::GameError::ResourceLoadError; +use crate::ggez::GameResult; +use crate::str; + pub struct Map { pub width: usize, pub height: usize, @@ -11,13 +15,13 @@ pub struct Map { } impl Map { - pub fn load_from(mut map_data: R, mut attrib_data: R) -> io::Result { + pub fn load_from(mut map_data: R, mut attrib_data: R) -> GameResult { let mut magic = [0; 3]; map_data.read_exact(&mut magic)?; if &magic != b"PXM" { - return Err(Error::new(ErrorKind::InvalidData, "Invalid magic")); + return Err(ResourceLoadError(str!( "Invalid magic"))); } map_data.read_i8()?; // unused