fix: trigger commands can target the zone

Trigger commands with target="zone" gathered no targets, so they never
ran. Forbidden Valley uses it for two ActivateSpawnerNetwork commands
(qb1 on interact, qb2 on activation) in nd_forbidden_valley.lutriggers,
and the winter large property uses it too. The zone is now the zone
control object, the same entity scripts treat as the zone.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Aaron Kimbrell
2026-09-26 18:47:23 -05:00
parent 86ee6de544
commit 2add7e064e

View File

@@ -180,7 +180,9 @@ std::vector<Entity*> TriggerComponent::GatherTargets(LUTriggers::Command* comman
if (command->target == "self") entities.push_back(m_Parent);
else if (command->target == "zone") {
/*TODO*/
// The zone itself is represented by the zone control object.
auto* const zoneControl = Game::zoneManager->GetZoneControlObject();
if (zoneControl) entities.push_back(zoneControl);
} else if (command->target == "target" && optionalTarget) {
entities.push_back(optionalTarget);
} else if (command->target == "targetTeam" && optionalTarget) {