From 64d4fc3b31a252de64719bf85f8ce5b6372f2ca8 Mon Sep 17 00:00:00 2001 From: JMS <3364564-JMS55@users.noreply.gitlab.com> Date: Tue, 28 May 2019 15:40:50 -0400 Subject: [PATCH] Fix debug coordinates window crashing when player has no Pos component yet Closes #136 Former-commit-id: eb7b2a4c525a4b2771a9ca168e566b24bd23c7b8 --- voxygen/src/hud/mod.rs | 9 +++++++-- voxygen/src/session.rs | 3 +-- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/voxygen/src/hud/mod.rs b/voxygen/src/hud/mod.rs index fded2beb82..557f67ee3d 100644 --- a/voxygen/src/hud/mod.rs +++ b/voxygen/src/hud/mod.rs @@ -32,6 +32,7 @@ use crate::{ }; use client::Client; use common::comp; +use common::comp::phys::Pos; use conrod_core::{ color, graph, widget::{self, Button, Image, Rectangle, Text}, @@ -104,7 +105,7 @@ font_ids! { pub struct DebugInfo { pub tps: f64, pub ping_ms: f64, - pub coordinates: Vec3, + pub coordinates: Option, } pub enum Event { @@ -393,7 +394,11 @@ impl Hud { .font_id(self.fonts.opensans) .font_size(14) .set(self.ids.ping, ui_widgets); - Text::new(&format!("Coordinates: {:.1}", debug_info.coordinates)) + let coordinates_text = match debug_info.coordinates { + Some(coordinates) => format!("Coordinates: {:.1}", coordinates.0), + None => "Player has no Pos component".to_owned(), + }; + Text::new(&coordinates_text) .color(TEXT_COLOR) .down_from(self.ids.ping, 5.0) .font_id(self.fonts.opensans) diff --git a/voxygen/src/session.rs b/voxygen/src/session.rs index 12c79c80c9..2de343e91d 100644 --- a/voxygen/src/session.rs +++ b/voxygen/src/session.rs @@ -170,8 +170,7 @@ impl PlayState for SessionState { .ecs() .read_storage::() .get(self.client.borrow().entity()) - .unwrap() - .0, + .cloned(), }, &self.scene.camera(), );