From 289eeab710f27413fdba6f831e57f1d8f06503a0 Mon Sep 17 00:00:00 2001 From: Louis Capitanchik <contact@louiscap.co> Date: Thu, 19 Jan 2023 14:41:59 +0000 Subject: [PATCH] Use layers getter instead of directly accessing layers in MapQuery --- src/map_query.rs | 29 ++++++++++------------------- 1 file changed, 10 insertions(+), 19 deletions(-) diff --git a/src/map_query.rs b/src/map_query.rs index 6ad34d7..29afdd8 100644 --- a/src/map_query.rs +++ b/src/map_query.rs @@ -74,38 +74,29 @@ impl<'w, 's> MapQuery<'w, 's> { // --- call the static accessors on whatever the current level is pub fn for_each_layer_of(level: &LdtkLevel, mut cb: impl FnMut(&LdtkLayer)) { - for layer in level.layers().rev() { + for layer in level.layers() { cb(layer); } } pub fn get_entities_of(level: &LdtkLevel) -> Vec<&EntityInstance> { level - .level_ref() - .layer_instances - .as_ref() - .map(|layers| { - layers - .iter() - .flat_map(|layer| layer.entity_instances.iter()) - .collect() - }) - .unwrap_or_default() + .layers() + .flat_map(|layer| layer.as_ref().entity_instances.iter()) + .collect() } pub fn get_instance_refs_of(level: &LdtkLevel) -> Vec<InstanceRef> { level - .level_ref() - .layer_instances - .as_ref() - .map(|layers| { - layers + .layers() + .flat_map(|layer| { + layer + .as_ref() + .entity_instances .iter() - .flat_map(|layer| layer.entity_instances.iter()) .map(|inst| InstanceRef { entity: inst }) - .collect() }) - .unwrap_or_default() + .collect() } pub fn get_filtered_entities_of( -- GitLab