Core/Objects: Add overridable function UpdateObjectVisibilityOnDestroy

Port From (https://github.com/TrinityCore/TrinityCore/commit/472384e75781ce362af9721fc16928da9eea82dd)
This commit is contained in:
hondacrx
2022-03-09 12:26:16 -05:00
parent b1de89a781
commit 510a1a0208
4 changed files with 11 additions and 9 deletions
+3 -3
View File
@@ -167,7 +167,7 @@ namespace Game.Entities
ai.CorpseRemoved(respawnDelay);
if (destroyForNearbyPlayers)
DestroyForNearbyPlayers();
UpdateObjectVisibilityOnDestroy();
// Should get removed later, just keep "compatibility" with scripts
if (setSpawnTime)
@@ -1907,7 +1907,7 @@ namespace Game.Entities
if (m_respawnCompatibilityMode)
{
DestroyForNearbyPlayers();
UpdateObjectVisibilityOnDestroy();
RemoveCorpse(false, false);
if (GetDeathState() == DeathState.Dead)
@@ -1971,7 +1971,7 @@ namespace Game.Entities
uint respawnDelay = GetRespawnDelay();
// do it before killing creature
DestroyForNearbyPlayers();
UpdateObjectVisibilityOnDestroy();
bool overrideRespawnTime = false;
if (IsAlive())
@@ -865,7 +865,7 @@ namespace Game.Entities
m_respawnTime = 0;
if (m_spawnId != 0)
DestroyForNearbyPlayers();
UpdateObjectVisibilityOnDestroy();
else
Delete();
@@ -883,7 +883,7 @@ namespace Game.Entities
SaveRespawnTime();
if (m_respawnCompatibilityMode)
DestroyForNearbyPlayers();
UpdateObjectVisibilityOnDestroy();
else
AddObjectToRemoveList();
+3 -1
View File
@@ -107,7 +107,7 @@ namespace Game.Entities
return;
if (!ObjectTypeMask.HasAnyFlag(TypeMask.Item | TypeMask.Container))
DestroyForNearbyPlayers();
UpdateObjectVisibilityOnDestroy();
IsInWorld = false;
ClearUpdateMask(true);
@@ -2813,6 +2813,8 @@ namespace Game.Entities
UpdateObjectVisibility(true);
}
public virtual void UpdateObjectVisibilityOnDestroy() { DestroyForNearbyPlayers(); }
public virtual void BuildUpdate(Dictionary<Player, UpdateData> data)
{
var notifier = new WorldObjectChangeAccumulator(this, data);