aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/server/game/Entities/Player/Player.cpp3
-rw-r--r--src/server/game/Scripting/ScriptMgr.cpp5
-rw-r--r--src/server/game/Scripting/ScriptMgr.h4
3 files changed, 12 insertions, 0 deletions
diff --git a/src/server/game/Entities/Player/Player.cpp b/src/server/game/Entities/Player/Player.cpp
index b3a133c347e..476e2553966 100644
--- a/src/server/game/Entities/Player/Player.cpp
+++ b/src/server/game/Entities/Player/Player.cpp
@@ -4283,6 +4283,9 @@ void Player::BuildPlayerRepop()
// set and clear other
SetAnimTier(UNIT_BYTE1_FLAG_ALWAYS_STAND, false);
+
+ // OnPlayerRepop hook
+ sScriptMgr->OnPlayerRepop(this);
}
void Player::ResurrectPlayer(float restore_percent, bool applySickness)
diff --git a/src/server/game/Scripting/ScriptMgr.cpp b/src/server/game/Scripting/ScriptMgr.cpp
index 73cfa4c5d89..3ed7f855868 100644
--- a/src/server/game/Scripting/ScriptMgr.cpp
+++ b/src/server/game/Scripting/ScriptMgr.cpp
@@ -2294,6 +2294,11 @@ void ScriptMgr::OnQuestStatusChange(Player* player, uint32 questId)
FOREACH_SCRIPT(PlayerScript)->OnQuestStatusChange(player, questId);
}
+void ScriptMgr::OnPlayerRepop(Player* player)
+{
+ FOREACH_SCRIPT(PlayerScript)->OnPlayerRepop(player);
+}
+
void ScriptMgr::OnMovieComplete(Player* player, uint32 movieId)
{
FOREACH_SCRIPT(PlayerScript)->OnMovieComplete(player, movieId);
diff --git a/src/server/game/Scripting/ScriptMgr.h b/src/server/game/Scripting/ScriptMgr.h
index 1a94330c208..fae7e67ba47 100644
--- a/src/server/game/Scripting/ScriptMgr.h
+++ b/src/server/game/Scripting/ScriptMgr.h
@@ -753,6 +753,9 @@ class TC_GAME_API PlayerScript : public UnitScript
// Called after a player's quest status has been changed
virtual void OnQuestStatusChange(Player* /*player*/, uint32 /*questId*/) { }
+ // Called when a player presses release when he died
+ virtual void OnPlayerRepop(Player* /*player*/) { }
+
// Called when a player completes a movie
virtual void OnMovieComplete(Player* /*player*/, uint32 /*movieId*/) { }
@@ -1145,6 +1148,7 @@ class TC_GAME_API ScriptMgr
void OnPlayerBindToInstance(Player* player, Difficulty difficulty, uint32 mapid, bool permanent, uint8 extendState);
void OnPlayerUpdateZone(Player* player, uint32 newZone, uint32 newArea);
void OnQuestStatusChange(Player* player, uint32 questId);
+ void OnPlayerRepop(Player* player);
void OnMovieComplete(Player* player, uint32 movieId);
void OnPlayerChoiceResponse(Player* player, uint32 choiceId, uint32 responseId);