From 2d23a8950902220334356bf438b281b2b24cdf27 Mon Sep 17 00:00:00 2001 From: Joshua Barretto Date: Tue, 16 Mar 2021 12:19:42 +0000 Subject: [PATCH] Fixed missed component insert bug --- server/src/sys/entity_sync.rs | 48 +++++++++++++++++------------------ 1 file changed, 23 insertions(+), 25 deletions(-) diff --git a/server/src/sys/entity_sync.rs b/server/src/sys/entity_sync.rs index 8f0554b439..b86c84f61c 100644 --- a/server/src/sys/entity_sync.rs +++ b/server/src/sys/entity_sync.rs @@ -244,32 +244,30 @@ impl<'a> System<'a> for Sys { } }; - if send_now { - if last_pos.get(entity).is_none() { - comp_sync_package.comp_inserted(uid, pos); - let _ = last_pos.insert(entity, Last(pos)); - } else { - comp_sync_package.comp_modified(uid, pos); - } - - vel.map(|v| { - if last_vel.get(entity).is_none() { - comp_sync_package.comp_inserted(uid, *v); - let _ = last_vel.insert(entity, Last(*v)); - } else { - comp_sync_package.comp_modified(uid, *v); - } - }); - - ori.map(|o| { - if last_ori.get(entity).is_none() { - comp_sync_package.comp_inserted(uid, *o); - let _ = last_ori.insert(entity, Last(*o)); - } else { - comp_sync_package.comp_modified(uid, *o); - } - }); + if last_pos.get(entity).is_none() { + comp_sync_package.comp_inserted(uid, pos); + let _ = last_pos.insert(entity, Last(pos)); + } else if send_now { + comp_sync_package.comp_modified(uid, pos); } + + vel.map(|v| { + if last_vel.get(entity).is_none() { + comp_sync_package.comp_inserted(uid, *v); + let _ = last_vel.insert(entity, Last(*v)); + } else if send_now { + comp_sync_package.comp_modified(uid, *v); + } + }); + + ori.map(|o| { + if last_ori.get(entity).is_none() { + comp_sync_package.comp_inserted(uid, *o); + let _ = last_ori.insert(entity, Last(*o)); + } else if send_now { + comp_sync_package.comp_modified(uid, *o); + } + }); } client.send_fallible(ServerGeneral::CompSync(comp_sync_package));