mirror of
https://gitlab.com/veloren/veloren.git
synced 2024-08-30 18:12:32 +00:00
Changed touch_entities from a vec to a hashset.
This commit is contained in:
parent
8d9f63404e
commit
18eed650f4
@ -1,4 +1,5 @@
|
||||
use crate::uid::Uid;
|
||||
use hashbrown::HashSet;
|
||||
use serde::{Deserialize, Serialize};
|
||||
use specs::{Component, DerefFlaggedStorage, NullStorage};
|
||||
use specs_idvs::IdvStorage;
|
||||
@ -124,7 +125,7 @@ pub struct PhysicsState {
|
||||
pub on_ground: bool,
|
||||
pub on_ceiling: bool,
|
||||
pub on_wall: Option<Vec3<f32>>,
|
||||
pub touch_entities: Vec<Uid>,
|
||||
pub touch_entities: HashSet<Uid>,
|
||||
pub in_liquid: Option<f32>, // Depth
|
||||
pub ground_vel: Vec3<f32>,
|
||||
}
|
||||
|
@ -398,7 +398,7 @@ impl<'a> PhysicsData<'a> {
|
||||
+ z_limits_other.1 * previous_cache_other.scale
|
||||
{
|
||||
if !collided {
|
||||
physics.touch_entities.push(*other);
|
||||
physics.touch_entities.insert(*other);
|
||||
entity_entity_collisions += 1;
|
||||
}
|
||||
|
||||
@ -988,9 +988,6 @@ impl<'a> PhysicsData<'a> {
|
||||
.on_wall
|
||||
.map(|dir| ori_from.mul_direction(dir))
|
||||
});
|
||||
physics_state
|
||||
.touch_entities
|
||||
.append(&mut physics_state_delta.touch_entities);
|
||||
physics_state.in_liquid = match (
|
||||
physics_state.in_liquid,
|
||||
physics_state_delta.in_liquid,
|
||||
|
Loading…
Reference in New Issue
Block a user