aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormat <git@matdoes.dev>2023-10-26 20:42:10 -0500
committermat <git@matdoes.dev>2023-10-26 20:42:22 -0500
commitce81ae9cb30b62ee815d361f5762fb2f4a93670e (patch)
treee1d953cb35b06ff276e51531ee6d5c27c96750fd
parent252958bb90751b0d278b1a478193b046edcfabe2 (diff)
downloadazalea-drasl-ce81ae9cb30b62ee815d361f5762fb2f4a93670e.tar.xz
optimize azalea-core positions and remove some unnecessary nightly features
-rwxr-xr-xazalea-core/src/lib.rs2
-rwxr-xr-xazalea-core/src/position.rs18
2 files changed, 9 insertions, 11 deletions
diff --git a/azalea-core/src/lib.rs b/azalea-core/src/lib.rs
index 2595471d..3b29f6a2 100755
--- a/azalea-core/src/lib.rs
+++ b/azalea-core/src/lib.rs
@@ -1,6 +1,4 @@
#![doc = include_str!("../README.md")]
-#![feature(int_roundings)]
-#![feature(const_for)]
#![feature(lazy_cell)]
#![allow(incomplete_features)]
#![feature(generic_const_exprs)]
diff --git a/azalea-core/src/position.rs b/azalea-core/src/position.rs
index cc99b684..196a70d5 100755
--- a/azalea-core/src/position.rs
+++ b/azalea-core/src/position.rs
@@ -352,8 +352,8 @@ impl From<&BlockPos> for ChunkPos {
#[inline]
fn from(pos: &BlockPos) -> Self {
ChunkPos {
- x: pos.x.div_floor(16),
- z: pos.z.div_floor(16),
+ x: pos.x >> 4,
+ z: pos.z >> 4,
}
}
}
@@ -361,8 +361,8 @@ impl From<BlockPos> for ChunkPos {
#[inline]
fn from(pos: BlockPos) -> Self {
ChunkPos {
- x: pos.x.div_floor(16),
- z: pos.z.div_floor(16),
+ x: pos.x >> 4,
+ z: pos.z >> 4,
}
}
}
@@ -398,9 +398,9 @@ impl From<&BlockPos> for ChunkBlockPos {
#[inline]
fn from(pos: &BlockPos) -> Self {
ChunkBlockPos {
- x: pos.x.rem_euclid(16) as u8,
+ x: (pos.x & 0xF) as u8,
y: pos.y,
- z: pos.z.rem_euclid(16) as u8,
+ z: (pos.z & 0xF) as u8,
}
}
}
@@ -408,9 +408,9 @@ impl From<BlockPos> for ChunkBlockPos {
#[inline]
fn from(pos: BlockPos) -> Self {
ChunkBlockPos {
- x: pos.x.rem_euclid(16) as u8,
+ x: (pos.x & 0xF) as u8,
y: pos.y,
- z: pos.z.rem_euclid(16) as u8,
+ z: (pos.z & 0xF) as u8,
}
}
}
@@ -431,7 +431,7 @@ impl From<&ChunkBlockPos> for ChunkSectionBlockPos {
fn from(pos: &ChunkBlockPos) -> Self {
ChunkSectionBlockPos {
x: pos.x,
- y: pos.y.rem_euclid(16) as u8,
+ y: (pos.y & 0xF) as u8,
z: pos.z,
}
}