mirror of
https://github.com/mod-playerbots/azerothcore-wotlk.git
synced 2026-01-27 07:36:23 +00:00
feat(CORE/Instance): access_requirement db refactor and improved output (#3696)
This commit is contained in:
@@ -31,7 +31,7 @@
|
||||
#include <string>
|
||||
|
||||
class Item;
|
||||
struct AccessRequirement;
|
||||
struct DungeonProgressionRequirements;
|
||||
struct PlayerClassInfo;
|
||||
struct PlayerClassLevelInfo;
|
||||
struct PlayerInfo;
|
||||
@@ -704,7 +704,7 @@ public:
|
||||
|
||||
typedef std::unordered_map<uint32, uint32> AreaTriggerScriptContainer;
|
||||
|
||||
typedef std::unordered_map<uint32, AccessRequirement*> AccessRequirementContainer;
|
||||
typedef std::unordered_map<uint32, std::unordered_map<uint8, DungeonProgressionRequirements*>> DungeonProgressionRequirementsContainer;
|
||||
|
||||
typedef std::unordered_map<uint32, RepRewardRate > RepRewardRateContainer;
|
||||
typedef std::unordered_map<uint32, ReputationOnKillEntry> RepOnKillContainer;
|
||||
@@ -832,11 +832,18 @@ public:
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
[[nodiscard]] AccessRequirement const* GetAccessRequirement(uint32 mapid, Difficulty difficulty) const
|
||||
[[nodiscard]] DungeonProgressionRequirements const* GetAccessRequirement(uint32 mapid, Difficulty difficulty) const
|
||||
{
|
||||
AccessRequirementContainer::const_iterator itr = _accessRequirementStore.find(MAKE_PAIR32(mapid, difficulty));
|
||||
DungeonProgressionRequirementsContainer::const_iterator itr = _accessRequirementStore.find(mapid);
|
||||
if (itr != _accessRequirementStore.end())
|
||||
return itr->second;
|
||||
{
|
||||
std::unordered_map<uint8, DungeonProgressionRequirements*> difficultiesProgressionRequirements = itr->second;
|
||||
auto difficultiesItr = difficultiesProgressionRequirements.find(difficulty);
|
||||
if (difficultiesItr != difficultiesProgressionRequirements.end())
|
||||
{
|
||||
return difficultiesItr->second;
|
||||
}
|
||||
}
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
@@ -1386,7 +1393,7 @@ private:
|
||||
AreaTriggerContainer _areaTriggerStore;
|
||||
AreaTriggerTeleportContainer _areaTriggerTeleportStore;
|
||||
AreaTriggerScriptContainer _areaTriggerScriptStore;
|
||||
AccessRequirementContainer _accessRequirementStore;
|
||||
DungeonProgressionRequirementsContainer _accessRequirementStore;
|
||||
DungeonEncounterContainer _dungeonEncounterStore;
|
||||
|
||||
RepRewardRateContainer _repRewardRateStore;
|
||||
|
||||
Reference in New Issue
Block a user