summaryrefslogtreecommitdiff
path: root/src/server/game/Scripting/ScriptDefines
diff options
context:
space:
mode:
authorVincent Vanclef <rasmusostergaard@live.dk>2025-03-11 15:01:55 +0100
committerGitHub <noreply@github.com>2025-03-11 15:01:55 +0100
commitdd42f7a6737f21626a254e8c9fd09ff462c09850 (patch)
tree3da374315cfa8d79db737d60f9eebd9253fdae3f /src/server/game/Scripting/ScriptDefines
parentd4b1c795c8860ccaa7728e6376ec67b27dc3b977 (diff)
feat(Core/Entities): Add OnPlayerSendListInventory script hook (#21676)
Diffstat (limited to 'src/server/game/Scripting/ScriptDefines')
-rw-r--r--src/server/game/Scripting/ScriptDefines/PlayerScript.cpp5
-rw-r--r--src/server/game/Scripting/ScriptDefines/PlayerScript.h10
2 files changed, 15 insertions, 0 deletions
diff --git a/src/server/game/Scripting/ScriptDefines/PlayerScript.cpp b/src/server/game/Scripting/ScriptDefines/PlayerScript.cpp
index 2e9b78b3e6..57978f7a50 100644
--- a/src/server/game/Scripting/ScriptDefines/PlayerScript.cpp
+++ b/src/server/game/Scripting/ScriptDefines/PlayerScript.cpp
@@ -920,6 +920,11 @@ bool ScriptMgr::OnPlayerCanGiveLevel(Player* player, uint8 newLevel)
CALL_ENABLED_BOOLEAN_HOOKS(PlayerScript, PLAYERHOOK_ON_CAN_GIVE_LEVEL, !script->OnPlayerCanGiveLevel(player, newLevel));
}
+void ScriptMgr::OnPlayerSendListInventory(Player* player, ObjectGuid vendorGuid, uint32& vendorEntry)
+{
+ CALL_ENABLED_HOOKS(PlayerScript, PLAYERHOOK_ON_SEND_LIST_INVENTORY, script->OnPlayerSendListInventory(player, vendorGuid, vendorEntry));
+}
+
PlayerScript::PlayerScript(const char* name, std::vector<uint16> enabledHooks)
: ScriptObject(name, PLAYERHOOK_END)
{
diff --git a/src/server/game/Scripting/ScriptDefines/PlayerScript.h b/src/server/game/Scripting/ScriptDefines/PlayerScript.h
index d813934e24..692e5c4cc3 100644
--- a/src/server/game/Scripting/ScriptDefines/PlayerScript.h
+++ b/src/server/game/Scripting/ScriptDefines/PlayerScript.h
@@ -209,6 +209,7 @@ enum PlayerHook
PLAYERHOOK_ON_UPDATE_SKILL,
PLAYERHOOK_CAN_RESURRECT,
PLAYERHOOK_ON_CAN_GIVE_LEVEL,
+ PLAYERHOOK_ON_SEND_LIST_INVENTORY,
PLAYERHOOK_END
};
@@ -793,6 +794,15 @@ public:
* @return true if player is allowed to gain the new level
*/
virtual bool OnPlayerCanGiveLevel(Player* /*player*/, uint8 /*newLevel*/) { return true; }
+
+ /**
+ * @brief This hook is called whenever a player interacts with a vendor, and is then shown the vendor list
+ *
+ * @param player Contains information about the Player
+ * @param vendorGuid Guid of the vendor player is interacting with
+ * @param vendorEntry Entry of the vendor player is interacting with
+ */
+ virtual void OnPlayerSendListInventory(Player* /*player*/, ObjectGuid /*vendorGuid*/, uint32& /*vendorEntry*/) {}
};
#endif