diff --git a/engine/MUNGA/GAUGREND.cpp b/engine/MUNGA/GAUGREND.cpp index 1c2f6af..4548350 100644 --- a/engine/MUNGA/GAUGREND.cpp +++ b/engine/MUNGA/GAUGREND.cpp @@ -3643,7 +3643,18 @@ void while ((entity = master_iterator.ReadAndNext()) != NULL) { if (entity->IsDerivedFrom(*Mover::GetClassDerivations())) - movingEntities.Add(entity); + { + // DEAD-MECH RADAR DROP (2026-07-20): a destroyed/disabled mover + // (movementMode 2||9 == the wreck latch, unified with + // simulationState) is no longer a live sensor contact. The + // authentic engine removes it via the interest feed + // (NotifyOfBecomingUninterestingEntity); the port's per-frame + // grid-rebuild dropped that feed, so the red blip lingered on the + // frozen wreck after the kill. Skip it -> blip goes away on death. + unsigned st = entity->GetSimulationState(); + if (st != 2 && st != 9) + movingEntities.Add(entity); + } else staticEntities.Add(entity); } @@ -3655,7 +3666,11 @@ void while ((entity = replicant_iterator.ReadAndNext()) != NULL) { if (entity->IsDerivedFrom(*Mover::GetClassDerivations())) - movingEntities.Add(entity); + { + unsigned st = entity->GetSimulationState(); // dead-mech radar drop (see the master loop above) + if (st != 2 && st != 9) + movingEntities.Add(entity); + } else staticEntities.Add(entity); }