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
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -1021,18 +1021,25 @@ public:
void JustDied(Unit* killer) override
{
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())
{
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);
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);
}
void MovementInform(uint32 type, uint32 id) override