mirror of
https://github.com/liyunfan1223/azerothcore-wotlk.git
synced 2026-08-08 15:58:04 +00:00
feat(Core/Hooks): Add OnPlayerJustDied hook (#17973)
feat(Core/Hooks): Add OnPlayerJustDied
This commit is contained in:
@@ -4484,6 +4484,7 @@ void Player::KillPlayer()
|
|||||||
if (corpseReclaimDelay >= 0)
|
if (corpseReclaimDelay >= 0)
|
||||||
SendCorpseReclaimDelay(corpseReclaimDelay);
|
SendCorpseReclaimDelay(corpseReclaimDelay);
|
||||||
|
|
||||||
|
sScriptMgr->OnPlayerJustDied(this);
|
||||||
// don't create corpse at this moment, player might be falling
|
// don't create corpse at this moment, player might be falling
|
||||||
|
|
||||||
// update visibility
|
// update visibility
|
||||||
|
|||||||
@@ -67,6 +67,14 @@ void ScriptMgr::OnBattlegroundDesertion(Player* player, BattlegroundDesertionTyp
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void ScriptMgr::OnPlayerJustDied(Player* player)
|
||||||
|
{
|
||||||
|
ExecuteScript<PlayerScript>([&](PlayerScript* script)
|
||||||
|
{
|
||||||
|
script->OnPlayerJustDied(player);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
void ScriptMgr::OnPlayerReleasedGhost(Player* player)
|
void ScriptMgr::OnPlayerReleasedGhost(Player* player)
|
||||||
{
|
{
|
||||||
ExecuteScript<PlayerScript>([&](PlayerScript* script)
|
ExecuteScript<PlayerScript>([&](PlayerScript* script)
|
||||||
|
|||||||
@@ -29,6 +29,10 @@ protected:
|
|||||||
PlayerScript(const char* name);
|
PlayerScript(const char* name);
|
||||||
|
|
||||||
public:
|
public:
|
||||||
|
// Called when a player dies
|
||||||
|
virtual void OnPlayerJustDied(Player* /*player*/) { }
|
||||||
|
|
||||||
|
// Called when clicking the release button
|
||||||
virtual void OnPlayerReleasedGhost(Player* /*player*/) { }
|
virtual void OnPlayerReleasedGhost(Player* /*player*/) { }
|
||||||
|
|
||||||
// Called on Send Initial Packets Before Add To Map
|
// Called on Send Initial Packets Before Add To Map
|
||||||
|
|||||||
@@ -297,6 +297,7 @@ public: /* PlayerScript */
|
|||||||
void OnBeforePlayerUpdate(Player* player, uint32 p_time);
|
void OnBeforePlayerUpdate(Player* player, uint32 p_time);
|
||||||
void OnPlayerUpdate(Player* player, uint32 p_time);
|
void OnPlayerUpdate(Player* player, uint32 p_time);
|
||||||
void OnSendInitialPacketsBeforeAddToMap(Player* player, WorldPacket& data);
|
void OnSendInitialPacketsBeforeAddToMap(Player* player, WorldPacket& data);
|
||||||
|
void OnPlayerJustDied(Player* player);
|
||||||
void OnPlayerReleasedGhost(Player* player);
|
void OnPlayerReleasedGhost(Player* player);
|
||||||
void OnPVPKill(Player* killer, Player* killed);
|
void OnPVPKill(Player* killer, Player* killed);
|
||||||
void OnPlayerPVPFlagChange(Player* player, bool state);
|
void OnPlayerPVPFlagChange(Player* player, bool state);
|
||||||
|
|||||||
Reference in New Issue
Block a user