Skip to content

Commit 60ea100

Browse files
[core] Remove pending deleted pets from players spawnlists
Adjust condition for removing trusts from players spawnlists
1 parent a0d00fd commit 60ea100

1 file changed

Lines changed: 9 additions & 1 deletion

File tree

src/map/zone_entities.cpp

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1819,6 +1819,14 @@ auto CZoneEntities::petTick(CPetEntity* PPet, timer::time_point tick) -> Task<vo
18191819
PCurrentMob->PEnmityContainer->Clear(PPet->id);
18201820
}
18211821

1822+
FOR_EACH_PAIR_CAST_SECOND(CCharEntity*, PChar, m_charList)
1823+
{
1824+
if (PChar->SpawnPETList.find(PPet->id) != PChar->SpawnPETList.end())
1825+
{
1826+
PChar->SpawnPETList.erase(PPet->id);
1827+
}
1828+
}
1829+
18221830
m_petsToDelete.emplace_back(PPet);
18231831
co_return;
18241832
}
@@ -1862,7 +1870,7 @@ auto CZoneEntities::trustTick(CTrustEntity* PTrust, timer::time_point tick) -> T
18621870

18631871
FOR_EACH_PAIR_CAST_SECOND(CCharEntity*, PChar, m_charList)
18641872
{
1865-
if (distance(PChar->loc.p, PTrust->loc.p) < ENTITY_RENDER_DISTANCE)
1873+
if (PChar->SpawnTRUSTList.find(PTrust->id) != PChar->SpawnTRUSTList.end())
18661874
{
18671875
PChar->SpawnTRUSTList.erase(PTrust->id);
18681876
}

0 commit comments

Comments
 (0)