diff options
Diffstat (limited to 'src/server/game/Scripting/ScriptDefines')
| -rw-r--r-- | src/server/game/Scripting/ScriptDefines/PlayerScript.cpp | 15 | ||||
| -rw-r--r-- | src/server/game/Scripting/ScriptDefines/PlayerScript.h | 2 |
2 files changed, 17 insertions, 0 deletions
diff --git a/src/server/game/Scripting/ScriptDefines/PlayerScript.cpp b/src/server/game/Scripting/ScriptDefines/PlayerScript.cpp index ed24656953..c9574106d6 100644 --- a/src/server/game/Scripting/ScriptDefines/PlayerScript.cpp +++ b/src/server/game/Scripting/ScriptDefines/PlayerScript.cpp @@ -1046,6 +1046,21 @@ void ScriptMgr::OnGetMaxSkillValue(Player* player, uint32 skill, int32& result, }); } +bool ScriptMgr::OnPlayerHasActivePowerType(Player const* player, Powers power) +{ + auto ret = IsValidBoolScript<PlayerScript>([&](PlayerScript* script) + { + return script->OnPlayerHasActivePowerType(player, power); + }); + + if (ret && *ret) + { + return true; + } + + return false; +} + void ScriptMgr::OnUpdateGatheringSkill(Player *player, uint32 skillId, uint32 currentLevel, uint32 gray, uint32 green, uint32 yellow, uint32 &gain) { ExecuteScript<PlayerScript>([&](PlayerScript* script) { diff --git a/src/server/game/Scripting/ScriptDefines/PlayerScript.h b/src/server/game/Scripting/ScriptDefines/PlayerScript.h index 7884743901..68c67fa00a 100644 --- a/src/server/game/Scripting/ScriptDefines/PlayerScript.h +++ b/src/server/game/Scripting/ScriptDefines/PlayerScript.h @@ -324,6 +324,8 @@ public: virtual void OnGetMaxSkillValue(Player* /*player*/, uint32 /*skill*/, int32& /*result*/, bool /*IsPure*/) { } + [[nodiscard]] virtual bool OnPlayerHasActivePowerType(Player const* /*player*/, Powers /*power*/) { return false; } + /** * @brief This hook called before gathering skill gain is applied to the character. * |
