From 8b23a77c5f0afba673f2958ecfc7dfdcc1c2edef Mon Sep 17 00:00:00 2001 From: hondacrx Date: Wed, 22 Dec 2021 20:32:04 -0500 Subject: [PATCH] Core/Loot: don't allow to regenerate chest loot inside instances and raids. Port From (https://github.com/TrinityCore/TrinityCore/commit/bfef73b5102201e85a31b39ae595da42d9750c7e) --- Source/Game/Entities/Player/Player.Items.cs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Source/Game/Entities/Player/Player.Items.cs b/Source/Game/Entities/Player/Player.Items.cs index eefe7ce67..ef867895e 100644 --- a/Source/Game/Entities/Player/Player.Items.cs +++ b/Source/Game/Entities/Player/Player.Items.cs @@ -6072,7 +6072,8 @@ namespace Game.Entities // loot was generated and respawntime has passed since then, allow to recreate loot // to avoid bugs, this rule covers spawned gameobjects only - if (go.IsSpawnedByDefault() && go.GetLootState() == LootState.Activated && !go.loot.IsLooted() && go.GetLootGenerationTime() + go.GetRespawnDelay() < GameTime.GetGameTime()) + // Don't allow to regenerate chest loot inside instances and raids, to avoid exploits with duplicate boss loot being given for some encounters + if (go.IsSpawnedByDefault() && go.GetLootState() == LootState.Activated && !go.loot.IsLooted() && !go.GetMap().Instanceable() && go.GetLootGenerationTime() + go.GetRespawnDelay() < GameTime.GetGameTime()) go.SetLootState(LootState.Ready); if (go.GetLootState() == LootState.Ready)