From da85bbdb1d1086535b51ddd22a1b8b2219511708 Mon Sep 17 00:00:00 2001 From: Kel Date: Sun, 19 Feb 2017 19:29:22 +0000 Subject: [PATCH] Finkle Einhorn is now spawned after skinning The Beast in UBRS. Thanks NostraliaWow --- src/game/Object/Player.cpp | 6 ++++++ src/game/WorldHandlers/InstanceData.h | 3 +++ src/modules/SD3 | 2 +- 3 files changed, 10 insertions(+), 1 deletion(-) diff --git a/src/game/Object/Player.cpp b/src/game/Object/Player.cpp index 3f85f579..fa28fe32 100644 --- a/src/game/Object/Player.cpp +++ b/src/game/Object/Player.cpp @@ -7562,6 +7562,12 @@ void Player::SendLoot(ObjectGuid guid, LootType loot_type) { creature->SetUInt32Value(UNIT_DYNAMIC_FLAGS, UNIT_DYNFLAG_LOOTABLE); } permission = OWNER_PERMISSION; + + // Inform Instance Data, may be scripts related to OnSkinning like The Beast in UBRS + if (InstanceData* mapInstance = creature->GetInstanceData()) + { + mapInstance->OnCreatureLooted(creature, LOOT_SKINNING); + } } } // set group rights only for loot_type != LOOT_SKINNING diff --git a/src/game/WorldHandlers/InstanceData.h b/src/game/WorldHandlers/InstanceData.h index 385ca993..7ab8280d 100644 --- a/src/game/WorldHandlers/InstanceData.h +++ b/src/game/WorldHandlers/InstanceData.h @@ -102,6 +102,9 @@ class InstanceData // called on creature despawn virtual void OnCreatureDespawn(Creature* /*creature*/) {} + // called on creature looted + virtual void OnCreatureLooted(Creature* /*creature*/, LootType) {} + // All-purpose data storage 64 bit virtual uint64 GetData64(uint32 /*Data*/) const { return 0; } virtual void SetData64(uint32 /*Data*/, uint64 /*Value*/) { } diff --git a/src/modules/SD3 b/src/modules/SD3 index 6d033197..7cc878bd 160000 --- a/src/modules/SD3 +++ b/src/modules/SD3 @@ -1 +1 @@ -Subproject commit 6d033197a9cc94fa4a34c65b057033b6eb8320b0 +Subproject commit 7cc878bd6307b099715f4fa6ae6054280f299dc2