From 0587acd2dd03cb92d67ad0651eedda7275c084d7 Mon Sep 17 00:00:00 2001 From: Florian Fischer Date: Wed, 3 Sep 2025 14:24:46 +0200 Subject: fix persistent pile hint --- go/ui/mapView.go | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) (limited to 'go') diff --git a/go/ui/mapView.go b/go/ui/mapView.go index 528ce6db..035f0f35 100644 --- a/go/ui/mapView.go +++ b/go/ui/mapView.go @@ -282,6 +282,7 @@ func (vw *MapView) drawMapLayer(screen *ebiten.Image) { screen.DrawImage(vw.mapLayer, &ebiten.DrawImageOptions{}) } +// getPermanentSymbol returnes a cached symbol or generates a new generic one. func getPermanentSymbol(p game.Permanent, i int) *ebiten.Image { permanentSymbol := assets.GetSymbol(p.Card().FileName()) if permanentSymbol == nil { @@ -292,7 +293,9 @@ func getPermanentSymbol(p game.Permanent, i int) *ebiten.Image { } } - return permanentSymbol + // Return a copy of the image to allow modifications without affect other + // uses of the symbol. + return ebiten.NewImageFromImage(permanentSymbol) } func (vw *MapView) drawPermanentsLayer(screen *ebiten.Image) { @@ -321,12 +324,12 @@ func (vw *MapView) drawPermanentsLayer(screen *ebiten.Image) { } } - vw.permanentsLayer.DrawImage(permanentSymbol, op) - // Draw a pile hint if len(p.Pile()) > 0 { drawPileHint(permanentSymbol) } + + vw.permanentsLayer.DrawImage(permanentSymbol, op) } } -- cgit v1.2.3