From ac5c2c135a33eb0eb2985af8fe094f3a80421c69 Mon Sep 17 00:00:00 2001 From: duffyduck Date: Sat, 25 Jul 2026 14:38:26 +0200 Subject: [PATCH] Weltkarte: Blit-Anker-Offset (+5,+4) fuer Punkte/Pfad -- Binary-Koordinaten sind korrekt, der Anker stand nicht im Binary Co-Authored-By: Claude Fable 5 --- NOTES.md | 8 ++++++++ game/worldmap.py | 8 +++++++- 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/NOTES.md b/NOTES.md index 6ffa1f4..4d08cf1 100644 --- a/NOTES.md +++ b/NOTES.md @@ -1731,3 +1731,11 @@ zeigen je eine Phase). Eingebaut. Noch offen (bewusst): nur-freigeschaltete-Punkte anzeigen kommt mit dem Level-Abschluss-Feature; aktuell sind alle Punkte sichtbar/anwaehlbar (Testphase). + +## 25.07.2026 (15) -- Karten-Punkte: Blit-Anker-Offset + +Stefans Abgleich: alle Punkte ein Stueck nach rechts+unten. Ursache: die +Binary-KOORDINATEN stimmen, aber der BLIT-ANKER des Originals (topleft vs +zentriert) steht nicht im Binary -- wir hatten zentriert geraten. Fix: +empirische Offsets MAP_DX=5/MAP_DY=4 in worldmap._tf() (dort feinjustieren, +falls noch nicht exakt). diff --git a/game/worldmap.py b/game/worldmap.py index 8c9d47e..b3efd3b 100644 --- a/game/worldmap.py +++ b/game/worldmap.py @@ -33,10 +33,16 @@ BLINK_SECONDS = 0.5 # Blinkrhythmus der aktiven Position # damit liegen die fruehen Level im Wald unten und W2/W3 in Bergen/Schloss # oben -- deckungsgleich mit Stefans Original-Screenshots). MAP_Y_FLIP = 209 +# Blit-Anker-Korrektur (Stefans Abgleich mit Original-Screenshots: "alle +# Punkte ein Stueck nach rechts und unten"): die Binary-Koordinaten sind +# korrekt, aber das Original ankert die Sprites nicht zentriert -- der +# Versatz ist im Binary nicht ablesbar, daher empirisch. Feinjustage hier. +MAP_DX = 5 +MAP_DY = 4 def _tf(p): - return (p[0], MAP_Y_FLIP - p[1]) + return (p[0] + MAP_DX, MAP_Y_FLIP - p[1] + MAP_DY) def parse_worldmap(exe_path):