From: Ian Jackson Date: Wed, 17 Mar 2021 18:12:16 +0000 (+0000) Subject: updates: Move max_z update out of piece_update_player X-Git-Tag: otter-0.5.0~693 X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=commitdiff_plain;h=7dec9b943d1baaa2b2c5b282e85cd8c989ecb024;p=otter.git updates: Move max_z update out of piece_update_player We are going to want to pass &GameState to this so we can't pass any &mut pieces of it. Signed-off-by: Ian Jackson --- diff --git a/src/updates.rs b/src/updates.rs index 3266a70f..d93ee0ca 100644 --- a/src/updates.rs +++ b/src/updates.rs @@ -499,7 +499,6 @@ impl<'r> PrepareUpdatesBuffer<'r> { #[throws(InternalError)] fn piece_update_player(ioccults: &IOccults, - max_z: &mut ZCoord, gpc: &mut GPiece, ipc: &IPiece, op: PieceUpdateOp<(),()>, @@ -508,7 +507,6 @@ impl<'r> PrepareUpdatesBuffer<'r> { { let pri = match pri { Some(pri) => pri, None => return None }; - max_z.update_max(&gpc.zlevel.z); let op = pri.map_piece_update_op(ioccults, gpc, ipc, op)?; op.map(|op| PreparedPieceUpdate { @@ -548,8 +546,9 @@ impl<'r> PrepareUpdatesBuffer<'r> { (Some(gpc), Some(ipc)) => { let pri = piece_pri(ioccults, &gs.occults, player, gpl, piece, *gpc, ipc); + gs.max_z.update_max(&gpc.zlevel.z); Self::piece_update_player( - ioccults, &mut gs.max_z, gpc, ipc, ops, &pri + ioccults, gpc, ipc, ops, &pri )? } _ => gpl.idmap.fwd(piece).map(