Portal arrivals: rustfmt, and name vanilla's portal ticket

resolve_arrivals keeps its own doc comment; the area an arrival keeps is
vanilla's TicketType.PORTAL, which has no ENTITY type.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
This commit is contained in:
Ludovic MarieandClaude Opus 5.5 committed 2026-10-27 22:27:47 +01:00
1 parent 4fdc93257f
commit 9fcfdaa1ea
2 files changed
+8 -12

No files matched your search

+1 -1
View File
@@ -443,7 +443,7 @@ impl Game<'_> {
|| forced
|| self.pregen_level() == Some(*d)
// A pending portal arrival keeps its destination level
// running so it can land and tick (`TicketType.ENTITY`).
// running so it can land and tick (the portal ticket).
|| !self.arrival_chunks(*d).is_empty()
})
.collect();
@@ -908,25 +908,21 @@ impl Game<'_> {
self.portals.dirty = true;
}
}
/// Entities waiting for the loaded dimension whose exit area is loaded:
/// their exit portal (found or built) or End destination, position,
/// turned yaw and motion, and portal cooldown; they join the world with the chunk entities.
/// The chunks of the arrivals still waiting to land in `dim`, for the
/// streaming `extra` areas that light them (`TicketType.ENTITY`).
/// streaming `extra` areas that light them: vanilla's portal ticket
/// (`Entity.teleport` adds `TicketType.PORTAL` at the destination) keeps
/// the area loaded without a player.
pub(super) fn arrival_chunks(&self, dim: Dim) -> Vec<(i32, i32)> {
self.portals
.arrivals
.iter()
.filter(|a| a.plan.dim == dim)
.map(|a| {
(
a.plan.approximate.x >> 4,
a.plan.approximate.z >> 4,
)
})
.map(|a| (a.plan.approximate.x >> 4, a.plan.approximate.z >> 4))
.collect()
}
/// Entities waiting for the loaded dimension whose exit area is loaded:
/// their exit portal (found or built) or End destination, position,
/// turned yaw and motion, and portal cooldown; they join the world with the chunk entities.
pub(super) fn resolve_arrivals(&mut self) {
if self.remote.is_some() {
return;