diff options
| author | Shauren <shauren.trinity@gmail.com> | 2013-02-13 20:24:23 +0100 |
|---|---|---|
| committer | Shauren <shauren.trinity@gmail.com> | 2013-02-13 20:24:23 +0100 |
| commit | ca280dbe051f2d9c43bbda128a6aa6bc19d8149f (patch) | |
| tree | afe94cf06814420b2752e516e19891a6259ddc76 /src/server/game/Entities | |
| parent | d926ad63c037457198cec8a28a86863643d92dc6 (diff) | |
Core/Loot: Only 3 items of the same entry can drop on 25 man raid difficulties and 1 everywhere else (non-raid or 10 man)
Diffstat (limited to 'src/server/game/Entities')
| -rw-r--r-- | src/server/game/Entities/Creature/Creature.cpp | 4 | ||||
| -rw-r--r-- | src/server/game/Entities/GameObject/GameObject.cpp | 4 |
2 files changed, 8 insertions, 0 deletions
diff --git a/src/server/game/Entities/Creature/Creature.cpp b/src/server/game/Entities/Creature/Creature.cpp index 93d4796f21a..220bc4378ae 100644 --- a/src/server/game/Entities/Creature/Creature.cpp +++ b/src/server/game/Entities/Creature/Creature.cpp @@ -289,6 +289,10 @@ bool Creature::InitEntry(uint32 Entry, uint32 /*team*/, const CreatureData* data --diff; } + // Initialize loot duplicate count depending on raid difficulty + if (GetMap()->IsRaid() && GetMap()->GetSpawnMode() & RAID_DIFFICULTY_MASK_25MAN) + loot.maxDuplicates = 3; + SetEntry(Entry); // normal entry always m_creatureInfo = cinfo; // map mode related always diff --git a/src/server/game/Entities/GameObject/GameObject.cpp b/src/server/game/Entities/GameObject/GameObject.cpp index bf0fbb4199d..61e7943453e 100644 --- a/src/server/game/Entities/GameObject/GameObject.cpp +++ b/src/server/game/Entities/GameObject/GameObject.cpp @@ -258,6 +258,10 @@ bool GameObject::Create(uint32 guidlow, uint32 name_id, Map* map, uint32 phaseMa LastUsedScriptID = GetGOInfo()->ScriptId; AIM_Initialize(); + // Initialize loot duplicate count depending on raid difficulty + if (map->IsRaid() && map->GetSpawnMode() & RAID_DIFFICULTY_MASK_25MAN) + loot.maxDuplicates = 3; + return true; } |
