From 7df60b9bd47d90d718ee016e20c396bd71f766a6 Mon Sep 17 00:00:00 2001 From: Ian Jackson Date: Wed, 17 Feb 2021 21:57:31 +0000 Subject: [PATCH] hidden: recalculate: Break out recalculate_occultation_ofmany NFC Signed-off-by: Ian Jackson --- src/hidden.rs | 25 ++++++++++++++++++------- 1 file changed, 18 insertions(+), 7 deletions(-) diff --git a/src/hidden.rs b/src/hidden.rs index 2336f522..92e8af03 100644 --- a/src/hidden.rs +++ b/src/hidden.rs @@ -415,6 +415,23 @@ pub fn recalculate_occultation_piece( )? } +#[throws(IE)] +fn recalculate_occultation_ofmany( + gs: &mut GameState, + ipieces: &PiecesLoaded, + ppiece: PieceId, + updates: &mut Vec<(PieceId, PieceUpdateOps)>, +){ + recalculate_occultation_general( + gs, ipieces, ppiece, + (), |_|(), + |_,_,_|(), |puo_pp, ()|{ + updates.push((ppiece, PUOs::PerPlayer(puo_pp))); + }, + )?; +} + + #[must_use] pub struct NascentOccultation(Occultation); @@ -496,13 +513,7 @@ pub fn create_occultation( ogpc.occult.active = Some(occid); for &ppiece in &recalc { - recalculate_occultation_general( - gs, ipieces, ppiece, - (), |_|(), - |_,_,_|(), |puo_pp, ()|{ - updates.push((ppiece, PUOs::PerPlayer(puo_pp))); - }, - )?; + recalculate_occultation_ofmany(gs, ipieces, ppiece, &mut updates)?; } Ok::<_,IE>(()) -- 2.30.2