diff --git a/crates/comet_ecs/src/component.rs b/crates/comet_ecs/src/component.rs index 53e958f..ab17c9b 100755 --- a/crates/comet_ecs/src/component.rs +++ b/crates/comet_ecs/src/component.rs @@ -131,7 +131,7 @@ pub trait Collider { pub trait Render { fn is_visible(&self) -> bool; fn set_visibility(&mut self, is_visible: bool); - fn get_texture(&self) -> String; + fn get_texture(&self) -> &str; fn set_texture(&mut self, texture: &'static str); } @@ -320,8 +320,8 @@ impl Render for Render2D { self.is_visible = is_visible; } - fn get_texture(&self) -> String { - self.texture_name.parse().unwrap() + fn get_texture(&self) -> &str { + self.texture_name } /// Use the actual file name of the texture instead of the path diff --git a/crates/comet_renderer/src/renderer2d.rs b/crates/comet_renderer/src/renderer2d.rs index d45c3de..3279603 100644 --- a/crates/comet_renderer/src/renderer2d.rs +++ b/crates/comet_renderer/src/renderer2d.rs @@ -555,19 +555,19 @@ impl<'a> Renderer2D<'a> { )) } - fn get_texture_region(&self, texture_path: String) -> Option<&TextureRegion> { + fn get_texture_region(&self, texture_path: &str) -> Option<&TextureRegion> { if !self .resource_manager .texture_atlas() .textures() - .contains_key(&texture_path) + .contains_key(texture_path) { - error!("Texture {} not found in atlas", &texture_path); + error!("Texture {} not found in atlas", texture_path); } self.resource_manager .texture_atlas() .textures() - .get(&texture_path) + .get(texture_path) } fn get_glyph_region(&self, glyph: char, font: String) -> &TextureRegion { @@ -772,7 +772,7 @@ impl<'a> Renderer2D<'a> { let rotation_angle = transform_component.rotation().to_radians(); let region = - match self.get_texture_region(renderer_component.get_texture().to_string()) { + match self.get_texture_region(renderer_component.get_texture()) { Some(r) => r, None => continue, };