From 22b537a4e5baa85e94346c1415d0f8bceeb52db3 Mon Sep 17 00:00:00 2001 From: Joshua Barretto Date: Sat, 21 Oct 2023 14:58:13 +0100 Subject: [PATCH] Fixed CI and incorrect vel --- common/systems/src/phys.rs | 6 +++--- common/systems/src/tether.rs | 19 ++++++++++++------- voxygen/src/scene/tether.rs | 6 ++++-- 3 files changed, 19 insertions(+), 12 deletions(-) diff --git a/common/systems/src/phys.rs b/common/systems/src/phys.rs index ed18b224c7..b0ab8fa0a1 100644 --- a/common/systems/src/phys.rs +++ b/common/systems/src/phys.rs @@ -906,7 +906,7 @@ impl<'a> PhysicsData<'a> { }, read, &ori, - |vel| friction_factor(vel), + friction_factor, ); tgt_pos = cpos.0; }, @@ -941,7 +941,7 @@ impl<'a> PhysicsData<'a> { }, read, &ori, - |vel| friction_factor(vel), + friction_factor, ); // Sticky things shouldn't move when on a surface @@ -1228,7 +1228,7 @@ impl<'a> PhysicsData<'a> { }, read, &ori, - |vel| friction_factor(vel), + |vel| friction_factor(previous_cache_other.ori * vel), ); // Transform entity attributes back into world space now diff --git a/common/systems/src/tether.rs b/common/systems/src/tether.rs index b890518682..22601c70e6 100644 --- a/common/systems/src/tether.rs +++ b/common/systems/src/tether.rs @@ -7,7 +7,7 @@ use common::{ util::Dir, }; use common_ecs::{Job, Origin, Phase, System}; -use specs::{Entities, Join, Read, ReadStorage, WriteStorage}; +use specs::{Entities, Join, LendJoin, Read, ReadStorage, WriteStorage}; use vek::*; /// This system is responsible for controlling mounts @@ -49,17 +49,22 @@ impl<'a> System<'a> for Sys { for (follower, is_follower, follower_body, follower_scale) in (&entities, &is_followers, bodies.maybe(), scales.maybe()).join() { - let Some(leader) = id_maps.uid_entity(is_follower.leader) else { continue }; + let Some(leader) = id_maps.uid_entity(is_follower.leader) else { + continue; + }; let (Some(leader_pos), Some(follower_pos)) = ( positions.get(leader).copied(), positions.get(follower).copied(), - ) else { continue }; + ) else { + continue; + }; - let (Some(leader_mass), Some(follower_mass)) = ( - masses.get(leader).copied(), - masses.get(follower).copied(), - ) else { continue }; + let (Some(leader_mass), Some(follower_mass)) = + (masses.get(leader).copied(), masses.get(follower).copied()) + else { + continue; + }; if velocities.contains(follower) && velocities.contains(leader) { let attach_offset = orientations diff --git a/voxygen/src/scene/tether.rs b/voxygen/src/scene/tether.rs index 593e4d55af..6cc260b38a 100644 --- a/voxygen/src/scene/tether.rs +++ b/voxygen/src/scene/tether.rs @@ -10,7 +10,7 @@ use common::{ uid::{IdMaps, Uid}, }; use hashbrown::HashMap; -use specs::{Join, WorldExt}; +use specs::{Join, LendJoin, WorldExt}; use vek::*; pub struct TetherMgr { @@ -53,7 +53,9 @@ impl TetherMgr { for (interp, is_follower, body, scale) in (&interpolated, &is_followers, bodies.maybe(), scales.maybe()).join() { - let Some(leader) = id_maps.uid_entity(is_follower.leader) else { continue }; + let Some(leader) = id_maps.uid_entity(is_follower.leader) else { + continue; + }; let pos_a = interpolated.get(leader).map_or(Vec3::zero(), |i| i.pos) + interpolated.get(leader).zip(bodies.get(leader)).map_or( Vec3::zero(),