diff options
| author | mat <github@matdoes.dev> | 2023-05-04 20:38:10 +0000 |
|---|---|---|
| committer | mat <github@matdoes.dev> | 2023-05-04 20:38:10 +0000 |
| commit | c7a923ccc8ae825deca62ac2cc8c80c01484d5b6 (patch) | |
| tree | 787c6eb579d0b126f0e9dfa161bdea758fe9aa0a /azalea-physics/src/collision/mod.rs | |
| parent | ff6d43458cef8ac6a23e6e8accd4b71c2a04aef6 (diff) | |
| parent | 634cb8d72c6608512aedba19e5cd669104bc35ea (diff) | |
| download | azalea-drasl-c7a923ccc8ae825deca62ac2cc8c80c01484d5b6.tar.xz | |
merge main
Diffstat (limited to 'azalea-physics/src/collision/mod.rs')
| -rw-r--r-- | azalea-physics/src/collision/mod.rs | 23 |
1 files changed, 16 insertions, 7 deletions
diff --git a/azalea-physics/src/collision/mod.rs b/azalea-physics/src/collision/mod.rs index 53efd2fe..a99b5710 100644 --- a/azalea-physics/src/collision/mod.rs +++ b/azalea-physics/src/collision/mod.rs @@ -5,10 +5,7 @@ mod shape; mod world_collisions; use azalea_core::{Axis, Vec3, AABB, EPSILON}; -use azalea_world::{ - entity::{self}, - Instance, MoveEntityError, -}; +use azalea_world::{entity, Instance, MoveEntityError}; pub use blocks::BlockWithShape; pub use discrete_voxel_shape::*; pub use shape::*; @@ -219,7 +216,11 @@ fn collide_with_shapes( if y_movement != 0. { y_movement = Shapes::collide(&Axis::Y, &entity_box, collision_boxes, y_movement); if y_movement != 0. { - entity_box = entity_box.move_relative(0., y_movement, 0.); + entity_box = entity_box.move_relative(&Vec3 { + x: 0., + y: y_movement, + z: 0., + }); } } @@ -230,14 +231,22 @@ fn collide_with_shapes( if more_z_movement && z_movement != 0. { z_movement = Shapes::collide(&Axis::Z, &entity_box, collision_boxes, z_movement); if z_movement != 0. { - entity_box = entity_box.move_relative(0., 0., z_movement); + entity_box = entity_box.move_relative(&Vec3 { + x: 0., + y: 0., + z: z_movement, + }); } } if x_movement != 0. { x_movement = Shapes::collide(&Axis::X, &entity_box, collision_boxes, x_movement); if x_movement != 0. { - entity_box = entity_box.move_relative(x_movement, 0., 0.); + entity_box = entity_box.move_relative(&Vec3 { + x: x_movement, + y: 0., + z: 0., + }); } } |
