aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorShauren <shauren.trinity@gmail.com>2022-04-24 14:31:55 +0200
committerShauren <shauren.trinity@gmail.com>2022-04-24 14:31:55 +0200
commit5e90f188f80d217b95606caf745e82253f3a4d47 (patch)
tree547af9d32bb35f637540a4d75e8a7265f8f926de /src
parent22edf79c70519a571d9eeb7e397add695d7a28bb (diff)
Core/Corpses: Fixed crash in corpse creation
Diffstat (limited to 'src')
-rw-r--r--src/server/game/Entities/Corpse/Corpse.cpp3
-rw-r--r--src/server/game/Entities/Player/Player.cpp3
-rw-r--r--src/server/game/Maps/Map.cpp4
3 files changed, 5 insertions, 5 deletions
diff --git a/src/server/game/Entities/Corpse/Corpse.cpp b/src/server/game/Entities/Corpse/Corpse.cpp
index 9f2d6772d46..c0e267c6b28 100644
--- a/src/server/game/Entities/Corpse/Corpse.cpp
+++ b/src/server/game/Entities/Corpse/Corpse.cpp
@@ -89,9 +89,6 @@ bool Corpse::Create(ObjectGuid::LowType guidlow, Player* owner)
PhasingHandler::InheritPhaseShift(this, owner);
- UpdatePositionData();
- SetZoneScript();
-
return true;
}
diff --git a/src/server/game/Entities/Player/Player.cpp b/src/server/game/Entities/Player/Player.cpp
index 74c9308f915..7c7af68751d 100644
--- a/src/server/game/Entities/Player/Player.cpp
+++ b/src/server/game/Entities/Player/Player.cpp
@@ -4492,6 +4492,9 @@ Corpse* Player::CreateCorpse()
// register for player, but not show
GetMap()->AddCorpse(corpse);
+ corpse->UpdatePositionData();
+ corpse->SetZoneScript();
+
// we do not need to save corpses for BG/arenas
if (!GetMap()->IsBattlegroundOrArena())
corpse->SaveToDB();
diff --git a/src/server/game/Maps/Map.cpp b/src/server/game/Maps/Map.cpp
index 96ab3f9b0ac..0321c2a68bc 100644
--- a/src/server/game/Maps/Map.cpp
+++ b/src/server/game/Maps/Map.cpp
@@ -4873,11 +4873,11 @@ Corpse* Map::ConvertCorpseToBones(ObjectGuid const& ownerGuid, bool insignia /*=
PhasingHandler::InheritPhaseShift(bones, corpse);
+ AddCorpse(bones);
+
bones->UpdatePositionData();
bones->SetZoneScript();
- AddCorpse(bones);
-
// add bones in grid store if grid loaded where corpse placed
AddToMap(bones);
}