fix(Scripts/ICC): Fix crash in npc_darnavan when killer is nil. (#21438)

This commit is contained in:
Anton Popovichenko
2025-02-14 05:54:45 +01:00
committed by GitHub
parent db49562a6a
commit db9b4cf0c6
@@ -1021,18 +1021,25 @@ public:
void JustDied(Unit* killer) override void JustDied(Unit* killer) override
{ {
events.Reset(); events.Reset();
if (Player* owner = killer->GetCharmerOrOwnerPlayerOrPlayerItself())
if (!killer)
return;
Player* owner = killer->GetCharmerOrOwnerPlayerOrPlayerItself();
if (!owner)
return;
Group* group = owner->GetGroup();
if (!group)
{ {
if (Group* group = owner->GetGroup()) owner->FailQuest(QUEST_DEPROGRAMMING);
{ return;
for (GroupReference* itr = group->GetFirstMember(); itr != nullptr; itr = itr->next())
if (Player* member = itr->GetSource())
if (member->IsInMap(owner))
member->FailQuest(QUEST_DEPROGRAMMING);
}
else
owner->FailQuest(QUEST_DEPROGRAMMING);
} }
for (GroupReference* itr = group->GetFirstMember(); itr != nullptr; itr = itr->next())
if (Player* member = itr->GetSource())
if (member->IsInMap(owner))
member->FailQuest(QUEST_DEPROGRAMMING);
} }
void MovementInform(uint32 type, uint32 id) override void MovementInform(uint32 type, uint32 id) override