diff --git a/src/strategy/druid/DruidActions.cpp b/src/strategy/druid/DruidActions.cpp index 1743a339..9466071b 100644 --- a/src/strategy/druid/DruidActions.cpp +++ b/src/strategy/druid/DruidActions.cpp @@ -78,4 +78,25 @@ Unit* CastRejuvenationOnNotFullAction::GetTarget() bool CastRejuvenationOnNotFullAction::isUseful() { return GetTarget(); -} \ No newline at end of file +} + +bool CastMarkOfTheWildOnPartyAction::Execute(Event event) +{ + Unit* target = GetTarget(); + if (!target) + return false; + + // Is the bot in a group? + Group* group = botAI->GetBot()->GetGroup(); + if (group) + { + // If the bot can cast "gift of the wild" on this target, do so + if (botAI->CanCastSpell("gift of the wild", target)) + { + return botAI->CastSpell("gift of the wild", target); + } + } + + // Otherwise, fall back to single-target "mark of the wild" + return botAI->CastSpell("mark of the wild", target); +}