fix(cockpit): a stalled water read is given up, and coarse reads only raise

Before the first full-detail read lands, a loaded-tile read could still
lower a river height partway (27 m to a 15 m bank). Loaded-tile reads now
only raise it; lowering is the full-detail read's to say.

That makes a full read that never lands (stalled tile requests) hold a
wrong height for the whole bridge, so one still running after 30 s is given
up for a fresh one; its late answer is dropped.

Also tests the other half of the double-click memory fix: another ship
selected within the memory is not entered through the first ship's spot.
This commit is contained in:
Sameh Khamis committed 2026-11-08 14:09:18 -08:00
1 parent 80a33ba52c
commit 1bc4f980e0
4 files changed
+110 -17

No files matched your search

+3 -2
View File
@@ -1574,8 +1574,9 @@ the full-detail read replaces it; it repeats every 5 s. Only one full-detail
read runs at a time: while one is still running, a refresh reads the loaded
tiles instead, and the slow read applies whenever it lands. Once a
full-detail read has answered, loaded-tile reads no longer change the height;
before then they may find raised water but never take it back to the sea.
A read that sampled nothing keeps the height it had. A failed read keeps
before then they may only raise it. A read that sampled nothing keeps the
height it had, and a full-detail read still running after 30 s
(`VESSEL_WATERLINE_READ_TIMEOUT_MS`) is given up for a fresh one. A failed read keeps
the sea surface.
The HUD keeps its frame, vision styles, briefing, weather and Display/Radio