From 2add7e064ea3b98acb4e0f9d4b5bfc1407f553ef Mon Sep 17 00:00:00 2001 From: Aaron Kimbrell Date: Sat, 26 Sep 2026 18:47:23 -0500 Subject: [PATCH] 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 --- dGame/dComponents/TriggerComponent.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/dGame/dComponents/TriggerComponent.cpp b/dGame/dComponents/TriggerComponent.cpp index 19384938f..3c2489aa7 100644 --- a/dGame/dComponents/TriggerComponent.cpp +++ b/dGame/dComponents/TriggerComponent.cpp @@ -180,7 +180,9 @@ std::vector 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) {