From 8444d61d019b0a5e1baf8b11b8ee13aced9ea3a6 Mon Sep 17 00:00:00 2001 From: Ian Jackson Date: Sat, 30 Apr 2022 02:24:13 +0100 Subject: [PATCH] currency: Fix and improve multigrab (splitting) log message Signed-off-by: Ian Jackson --- src/currency.rs | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/src/currency.rs b/src/currency.rs index 70f77f2d..34d4365e 100644 --- a/src/currency.rs +++ b/src/currency.rs @@ -131,10 +131,13 @@ impl PieceTrait for Banknote { move |ig: &mut InstanceGuard, player: PlayerId, tpiece: PieceId| { ig.fastsplit_split(player, tpiece, show, new_z, - move |ioccults: &IOccults, goccults: &GameOccults, gpl: &GPlayer, - tgpc: &mut GPiece, tipc: &IPiece, _tipc_p: &dyn PieceTrait, + move |_: &IOccults, _: &GameOccults, gpl: &GPlayer, + tgpc: &mut GPiece, tipc: &IPiece, tipc_p: &dyn PieceTrait, ngpc: &mut GPiece| { + let self_: &Banknote = tipc_p.downcast_ref::() + .ok_or_else(|| internal_error_bydebug(tipc))?; + let tgpc_value: &mut Value = tgpc.xdata.get_mut_exp()?; let remaining = tgpc_value.qty.checked_sub(take) .ok_or(Ia::CurrencyShortfall)?; @@ -147,12 +150,12 @@ impl PieceTrait for Banknote { tgpc.pinned = false; - let logents = log_did_to_piece( - ioccults, goccults, gpl, tgpc, tipc, - &format!("took {}{}, leaving {}{}", - take, ¤cy, - remaining, ¤cy) - )?; + let logents = vec![ LogEntry { html: hformat!( + "{} took {} {}{}, leaving {}{}", + gpl.nick.to_html(), self_.image.describe_html(tgpc.face)?, + take, ¤cy, + remaining, ¤cy, + )}]; let update = PieceUpdateOp::ModifyQuiet(()); -- 2.30.2