From d9925617f65de9f2cbc4e021eb63ff7fd0a1398b Mon Sep 17 00:00:00 2001 From: Ian Jackson Date: Fri, 12 Mar 2021 01:06:04 +0000 Subject: [PATCH] hidden, pos: break out PieceRenderInstructions::pos_zlevel() nfc Signed-off-by: Ian Jackson --- src/gamestate.rs | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/src/gamestate.rs b/src/gamestate.rs index 75f55762..fb690c83 100644 --- a/src/gamestate.rs +++ b/src/gamestate.rs @@ -304,11 +304,8 @@ impl GPiece { pub fn prep_piecestate(&self, ioccults: &IOccults, ipc: &IPiece, pri: &PieceRenderInstructions) -> PreparedPieceState { - use PriOcculted as PO; - let (pos, zlevel) = match &pri.occulted { - PO::Visible | PO::Occulted => (self.pos, self.zlevel.clone()), - PO::Displaced(pos, zlevel) => (*pos, zlevel.clone()), - }; + let (pos, zlevel) = pri.pos_zlevel(self); + dbgc!(pos, pri, self, ioccults, ipc); PreparedPieceState { pos : pos, held : self.held, @@ -428,6 +425,13 @@ impl PieceRenderInstructions { } } + pub fn pos_zlevel(&self, gpc: &GPiece) -> (Pos, ZLevel) { + use PriOcculted as PO; + match &self.occulted { + PO::Visible | PO::Occulted => (gpc.pos, gpc.zlevel.clone()), + PO::Displaced(pos, zlevel) => (*pos, zlevel.clone()), + } + } #[throws(IE)] pub fn make_defs<'p>(&self, ioccults: &IOccults, -- 2.30.2