diff options
| author | Florian Fischer <florian.fischer@muhq.space> | 2025-09-03 14:24:46 +0200 |
|---|---|---|
| committer | Florian Fischer <florian.fischer@muhq.space> | 2025-09-03 14:24:46 +0200 |
| commit | 0587acd2dd03cb92d67ad0651eedda7275c084d7 (patch) | |
| tree | e6db28a07b4f0a5addb82b1841f14ea3352e6bdb /go | |
| parent | ae9775a41981b211a00244ddbacb84934cf9383a (diff) | |
| download | muhqs-game-0587acd2dd03cb92d67ad0651eedda7275c084d7.tar.gz muhqs-game-0587acd2dd03cb92d67ad0651eedda7275c084d7.zip | |
fix persistent pile hint
Diffstat (limited to 'go')
| -rw-r--r-- | go/ui/mapView.go | 9 |
1 files changed, 6 insertions, 3 deletions
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) } } |
