From 11f747cc5fcb40eca53b748ad34694d4294b7827 Mon Sep 17 00:00:00 2001 From: Brad <bbenton91@gmail.com> Date: Sun, 25 Oct 2020 03:40:34 -0400 Subject: [PATCH 1/3] Added is_dead check to item pickup --- server/src/events/inventory_manip.rs | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/server/src/events/inventory_manip.rs b/server/src/events/inventory_manip.rs index c8f2bbd512..acd819e630 100644 --- a/server/src/events/inventory_manip.rs +++ b/server/src/events/inventory_manip.rs @@ -66,6 +66,16 @@ pub fn handle_inventory(server: &mut Server, entity: EcsEntity, manip: comp::Inv return; }; + let stats = state.ecs().read_storage::<comp::Stats>(); + match stats.get(entity){ + Some(x) => if x.is_dead { + debug!("Failed to pick up item as the player is dead"); + return; + }, + + None => debug!("Stats wasn't found"), + } + // Attempt to add the item to the player's inventory match inv.push(item) { None => Some(item_entity), From cfbdbf14aa49572cea7c7f1859fd38acdf4c24d8 Mon Sep 17 00:00:00 2001 From: Brad <bbenton91@gmail.com> Date: Sun, 25 Oct 2020 15:54:08 -0400 Subject: [PATCH 2/3] Updated code to be more consistent with codebase --- server/src/events/inventory_manip.rs | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/server/src/events/inventory_manip.rs b/server/src/events/inventory_manip.rs index acd819e630..12975e5a5e 100644 --- a/server/src/events/inventory_manip.rs +++ b/server/src/events/inventory_manip.rs @@ -66,14 +66,15 @@ pub fn handle_inventory(server: &mut Server, entity: EcsEntity, manip: comp::Inv return; }; + // Grab the stats from the player and check if the player is dead. let stats = state.ecs().read_storage::<comp::Stats>(); - match stats.get(entity){ - Some(x) => if x.is_dead { + if let Some(entity_stats) = stats.get(entity){ + if entity_stats.is_dead { debug!("Failed to pick up item as the player is dead"); - return; - }, - - None => debug!("Stats wasn't found"), + return; // If dead, don't continue + } + }else{ + debug!("Entity stats component wasn't found") } // Attempt to add the item to the player's inventory From 071ce08b698d16eedd8cb2ed4e9b3b7a14c310e2 Mon Sep 17 00:00:00 2001 From: Brad <bbenton91@gmail.com> Date: Sun, 25 Oct 2020 16:43:07 -0400 Subject: [PATCH 3/3] Removed else branch and ran fmt and clippy --- server/src/events/inventory_manip.rs | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/server/src/events/inventory_manip.rs b/server/src/events/inventory_manip.rs index 12975e5a5e..fff06d9e99 100644 --- a/server/src/events/inventory_manip.rs +++ b/server/src/events/inventory_manip.rs @@ -68,13 +68,11 @@ pub fn handle_inventory(server: &mut Server, entity: EcsEntity, manip: comp::Inv // Grab the stats from the player and check if the player is dead. let stats = state.ecs().read_storage::<comp::Stats>(); - if let Some(entity_stats) = stats.get(entity){ + if let Some(entity_stats) = stats.get(entity) { if entity_stats.is_dead { debug!("Failed to pick up item as the player is dead"); return; // If dead, don't continue } - }else{ - debug!("Entity stats component wasn't found") } // Attempt to add the item to the player's inventory