diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/game/Entities/Player/Player.cpp | 2 | ||||
-rw-r--r-- | src/game/Scripting/ScriptMgr.cpp | 5 | ||||
-rw-r--r-- | src/game/Scripting/ScriptMgr.h | 6 |
3 files changed, 12 insertions, 1 deletions
diff --git a/src/game/Entities/Player/Player.cpp b/src/game/Entities/Player/Player.cpp index 81efbb048d..06d293073b 100644 --- a/src/game/Entities/Player/Player.cpp +++ b/src/game/Entities/Player/Player.cpp @@ -12820,6 +12820,8 @@ void Player::MoveItemFromInventory(uint8 bag, uint8 slot, bool update) it->RemoveFromWorld(); it->DestroyForPlayer(this); } + + sScriptMgr->OnAfterPlayerMoveItemFromInventory(this,it,bag,slot,update); } } diff --git a/src/game/Scripting/ScriptMgr.cpp b/src/game/Scripting/ScriptMgr.cpp index 730ce93aa6..d717649c61 100644 --- a/src/game/Scripting/ScriptMgr.cpp +++ b/src/game/Scripting/ScriptMgr.cpp @@ -1328,6 +1328,11 @@ void ScriptMgr::OnAfterPlayerSetVisibleItemSlot(Player* player, uint8 slot, Item FOREACH_SCRIPT(PlayerScript)->OnAfterSetVisibleItemSlot(player, slot,item); } +void ScriptMgr::OnAfterPlayerMoveItemFromInventory(Player* player, Item* it, uint8 bag, uint8 slot, bool update) +{ + FOREACH_SCRIPT(PlayerScript)->OnAfterMoveItemFromInventory(player, it, bag, slot, update); +} + // Guild void ScriptMgr::OnGuildAddMember(Guild* guild, Player* player, uint8& plRank) { diff --git a/src/game/Scripting/ScriptMgr.h b/src/game/Scripting/ScriptMgr.h index 98eb5e9fe7..0059fb4dd6 100644 --- a/src/game/Scripting/ScriptMgr.h +++ b/src/game/Scripting/ScriptMgr.h @@ -788,6 +788,9 @@ class PlayerScript : public ScriptObject // To change behaviour of set visible item slot virtual void OnAfterSetVisibleItemSlot(Player* /*player*/, uint8 /*slot*/, Item* /*item*/) { } + + // After an item has been moved from inventory + virtual void OnAfterMoveItemFromInventory(Player* /*player*/, Item* /*it*/,uint8 /*bag*/, uint8 /*slot*/, bool /*update*/) { } }; class GuildScript : public ScriptObject @@ -1084,7 +1087,8 @@ class ScriptMgr void OnGossipSelect(Player* player, uint32 menu_id, uint32 sender, uint32 action); void OnGossipSelectCode(Player* player, uint32 menu_id, uint32 sender, uint32 action, const char* code); void OnPlayerBeingCharmed(Player* player, Unit* charmer, uint32 oldFactionId, uint32 newFactionId); - void OnAfterPlayerSetVisibleItemSlot(Player* player, uint8 /*slot*/, Item *item); + void OnAfterPlayerSetVisibleItemSlot(Player* player, uint8 slot, Item *item); + void OnAfterPlayerMoveItemFromInventory(Player* player, Item* it, uint8 bag, uint8 slot, bool update); public: /* GuildScript */ |