diff options
| author | Wyrserth <wyrserth@protonmail.com> | 2019-06-20 08:13:38 +0200 |
|---|---|---|
| committer | Giacomo Pozzoni <giacomopoz@gmail.com> | 2019-06-20 08:13:38 +0200 |
| commit | 4320cd7d375927f1008824d6ddf8cc7d212d4ed2 (patch) | |
| tree | f5eb8a5804afd24d33d4fcf568376fb23b0b303a /src | |
| parent | 72b1f2e7a4507eae2102a9ff883affae03ddd018 (diff) | |
Core/Loot: don't allow to regenerate chest loot inside instances and raids. (#23449)
Diffstat (limited to 'src')
| -rw-r--r-- | src/server/game/Entities/Player/Player.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/server/game/Entities/Player/Player.cpp b/src/server/game/Entities/Player/Player.cpp index 729e64299ea..53fe8bd1de8 100644 --- a/src/server/game/Entities/Player/Player.cpp +++ b/src/server/game/Entities/Player/Player.cpp @@ -8411,7 +8411,8 @@ void Player::SendLoot(ObjectGuid guid, LootType loot_type) // 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() == GO_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() == GO_ACTIVATED && !go->loot.isLooted() && !go->GetMap()->Instanceable() && go->GetLootGenerationTime() + go->GetRespawnDelay() < GameTime::GetGameTime()) go->SetLootState(GO_READY); if (go->getLootState() == GO_READY) |
