Integrate radio-delivered convoy cover and conservative squad ammunition reports

This commit is contained in:
2026-09-20 04:23:11 +02:00
parent 9b6596eb3e
commit 9205e2129a
88 changed files with 13934 additions and 28 deletions
@@ -103,6 +103,8 @@ class ERR_HQStatusSampler
vector position = m_Group.GetOrigin();
if (!ERR_HQPursuitRules.PositionValid(position)) return null;
ERR_HQStatusReport report = new ERR_HQStatusReport();
report.AmmoState = new ERR_HQAmmoSnapshot();
report.AmmoState.Complete = true; report.AmmoState.LauncherComplete = true;
report.SourceId = m_SourceId; report.MessageId = messageId; report.Position = position;
report.Strength = m_Strength; report.ConfirmedLosses = m_Deaths; report.ObservedAt = now;
for (int slot = 0; slot < m_Dead.Count(); slot++)
@@ -112,8 +114,10 @@ class ERR_HQStatusSampler
if (m_Dead[i] || m_Released[i]) continue;
IEntity actor = m_Members[i];
if (!ERR_Actors.Alive(actor) || ERR_Actors.Player(actor) || ERR_Actors.Group(actor) != m_Group
|| SCR_FactionManager.SGetFaction(actor) != m_Faction) continue;
|| SCR_FactionManager.SGetFaction(actor) != m_Faction)
{ report.AmmoState.Complete = false; report.AmmoState.LauncherComplete = false; continue; }
report.Count++;
ERR_HQAmmoSampler.Inspect(actor, m_Group, report.AmmoState);
if (ERR_Actors.CanFight(actor)) report.Fit++;
}
m_LastSampleAt = now;